SinceARM caches are physically indexed is there any way to flush based on the PA? I know I can get the set, but what about the way? If I am flushing from L1 would I have to flush all ways in L1 and then L2 assuming there is no L3 to get to system memory?
if you want to flush a set manually (that is by SW Cache Maint. Operations) you must clean a set from each of the ways as you cannot tell what way your date is. You can tell the set but not the way as you noticed. Well HW design surely have the means to determine that but it is not exposed to us.
IC IALLUIS I-cache invalidate all to Point of Unification, Inner Shareable Yes (inner only)
IC IALLU I-cache invalidate all to Point of Unification Noa
IC IVAU, Xt I-cache invalidate by address to Point of Unification Maybeb
DC ZVA, Xt D-cache zero by address No
DC IVAC, Xt D-cache invalidate by address to Point of Coherency Yes
DC ISW, Xt D-cache invalidate by Set/Way No
DC CVAC, Xt D-cache clean by address to Point of Coherency Maybeb
DC CSW, Xt D-cache clean by Set/Way No
DC CVAU, Xt D-cache clean by address to Point of Unification Maybeb
DC CIVAC, Xt D-cache clean and invalidate by address to Point of Coherency Yes
DC CISW, Xt D-cache clean and invalidate by Set/Way No
If an operation is not broadcast OS/Uboot (or any other) must issue the clean or invalidate operations locally on each core even though you may have the Cache Coherent Network/Interconnect connecting the Clusters.
But let's take it the other way round: why would anyone want to flush (or invalidate or clean and invalidate) by PA? ARM gives you an option to flush by set/way or VA. I cannot see a use case these won't be sufficient.
DMA controllers use the PA. So I could think of a scenario, where you need to flush the cache before activating the DMA.
But as I first wrote, in general one should know which PA is mapped to which VA. Esp. because a PA range could be mapped to multiple VA ranges.
If we take other Processing Elements but ARM cores than yes, there could be loads of them: except DMA, there is DSP, another Cortex, eg. M integrated into SoC, FPGA outside of the SOC, etc.. Some may have coherent caches such as ARM and/or DSP if configured to being able to send and receive snoops and other won't as being able only to send snoops.
today I was looking at the traffic of some devices of my network and I discovered that the traffic was not correctly matched with the devices. So I checked the network table and indeed the hostnames were not correctly matching the mac address of the devices. I tried to flush the network table but the flushing button doesn't work, the network table remain there. Also deleting the entry individually does nothing, the network table always come back as it was before.
That method may produce unexpected results if a device would be connected to a different network segment, e.g. behind an additional router or L3 switch, as IP addresses of multiple devices connected through that equipment would appear to be associated with a MAC address of that equipment.
When Pi-hole isn't also acting as DHCP server, Pi-hole's prime source of getting to know a hostname for a private IP address from your network is to issue the respective reverse lookup DNS requests for PTR records from time to time.
This should fix hostname resolution for local IPs as displayed in the dashboard's Top Clients and in the Client column of the Query Log.
Note that it may take a short while before Pi-hole has issued and retrieved the required PTR records.
The Network overview table may require flushing to update.
Thank you for the clear explanation, I was naively believing that Pi-hole was associating the hostname resolution to the MAC address. I did the modification you suggested and I will update this post with the results.
Yes, the Number of queries get reset, and I tried also the Flush network table button in the setting panel and it does the same. I was expecting to see some very old record entries to disappear, that's why I believed it wasn't working, sorry for my confusion! I've totally missed that column!
I believe I found the issue and it was not because of the Pi-hole, but your initial help raised a doubt in my mind and I went to check the network table of my Fritz!BOX router and for some reason it was completely messed up. Never seen anything like that in all those years, that's why it didn't cross my mind to check it before. There were even very old hostnames that appeared again from nowhere like they were present in the LAN. I was able to flush it and its network table started to be pupated correctly again and consequently the same happened on the Pi-hole.
No. By default, most operating systems will cache IP addresses and other Domain Name System (DNS) records in order to fulfill future requests more quickly. This is your DNS cache. The DNS cache prevents browsers from having to make a new request so that, instead, it can use stored information to load the website. This reduces server response times, making the site load more quickly.
TTL specifies a period of time (in seconds) in which the DNS record for a site remains valid. Within this time period, any queries to the website are answered from the local cache without the help of the DNS server. Once the TTL expires, the entry will be removed from the cache.
There are a lot of reasons to regularly flush your DNS cache. It can help prevent phishing schemes or other attacks on your computer, direct you to the most up-to-date versions of your most frequently visited sites, restore your internet connection, and keep your data private.
The best part is how easy the process is. Following the steps above can help you perform a DNS flush quickly and easily, no matter what operating system your computer has. That way, you can move onto your other website development tasks.
This is probably related to contracts which collect Ether until some condition is met and then send it all in a single chunk onwards to somewhere else - either an EOA (Externally Owned Account) or another contract.
One example is a crowdsale contract - people send it Ether to buy tokens and then when the crowdsale ends someone initiates a "withdraw" transaction which flushes/sends all the contract's Ethers to predetermined address.
A good place to start might be using get-content as a means of pulling in a text file of server names. Once you have something, use the Insert Code to ask for help with what you have come up with as a start.
Because the DNS servers are accessed by IP and not by name, flushing the DNS cache is irrelevant to that operation. And, barring something extraordinary, all the other DHCP clients should retain their current IPs through renewal. No DNS impact there.
What you are seeing is not your machine remembering the IP. In syslog you see DISCOVER REQUEST OFFER ACK however this is not in the order that it happened.It actually went DISCOVER OFFER REQUEST ACK to confirm this you can sniff the traffic between the PC and upstream DHCP server. You sent DISCOVER the server sent back OFFER and you got the IP from the OFFER for your REQUEST
You did everything right however, when you did "dhclient -r" dhclient will send a unicast RELEASE and some ISPs only accept multicast packets to their DHCP server, so the RELEASE never got there, as far as the server is concerned your lease is still valid, so it gave you back the same IP in the OFFER.
The answers are now obsolete (2017), the logs are now here ... If you want to limit the amount of logs to the time the system has been booted instead, use the -b option: journalctl -b 0 -u NetworkManager
You can see the current lease information on the D-Bus API, for example via [...] nmcli -f DHCP4 device show ens1. In recent NM versions, you can also find the same information in /run/NetworkManager/devices/$IFINDEX (if you prefer reading files). This is public API.
A lease only makes sense to NetworkManager while it's running and connected. It just knows in memory how long the lease is valid. ... If you re-activate the device (or reboot or restart NM), it will try to get a new lease and start the DHCP state machine again. It only uses the previous ADDRESS= to give a hint to the DHCP server which address it would like to have.
If the device is currently not active, then there is no public API for past leases. Yes, you could parse the/var/lib/NetworkManager/*.lease to get some some of the information, but this only contains information which NetworkManger cares about (the ADDRESS=), not most of the interesting data.
EDIT: I've found references to nmcli device reapply in -linux-renew-dhcp-client-ip-address/ and -dhcp-while-keeping-a-networkmanager-connection-up/ - apparently, I'd not be able to use that in my eth0, as it is unconnected at the moment:
EDIT: Just to note: in the end, I did delete the /var/lib/NetworkManager/internal-*-eth0.lease (see comment below by @ulidtko on the right way to do that); the interesting thing is that, after that I ran dhclient, restarted NetworkManager, and so on - and I could even connect - however, an interesting thing is that I did not get another /var/lib/NetworkManager/internal-*-eth0.lease file ?! SO how come it was there in the first place? Well, while I remember, let me note: that 192.168.2.31 was an address I was testing in tftpd64 DHCP server running on Windows, and IIRC, there was a checkbox in tftpd64 "Persistent Lease" which was enabled - and as I understand it, "persistent lease" is a lease that never expires; and apparently NetworkManager saves those persistent lease addresses in these internal* files? If so, that (the "persistent lease") also explains why that file did not just disappear after reboot ...
Computers connected to a network use an Internet Protocol address (IP address) to be identified and communicate with other computers using the Internet Protocol. While some IP addressing is set manually (each computer is configured manually, including their IP address in a given network), most obtain an IP address assigned by a server running a service called the Dynamic Host Configuration Protocol (DHCP). Usually this process of obtaining/being assigned an address happens automatically, but there may be instances where this may not work as expected. Troubleshooting network connectivity issues on a Windows computer may sometimes require releasing a DHCP lease (address assigned for a pre-determined period of time) and renewing a lease (acquiring an IP address with a new lease).
3a8082e126