On Wed, Apr 27, 2022 at 02:14:22PM +0200, Andrew Lunn wrote: > On Wed, Apr 27, 2022 at 07:48:06AM +0200, Lukas Wunner wrote: > > Cache the interrupt mask to avoid re-reading it from the PHY upon every > > interrupt. The PHY may be located on a USB device, so the additional > > read may unnecessarily increase interrupt overhead and latency. > > I don't think your justification is valid. The MDIO bus is clocked at > 2.5MHz. So even if you are using USB 1.1 at 12MHz, the USB overheads > are not particularly large. At 480Mbps they are pretty insignificant. > > In general, we consider PHYs as slow devices, they take over 1 second > to negotiate a link and declare it up. So we don't do this sort of > micro optimization. > > What i think is relevant here is that you could have an interrupt > storm going on because you don't mask interrupts? It is not a true > storm, due to the way USB works, more of a light shower. Do you have > any statistics to show this code actually reduces the amount of rain > in a significant way? TBH the primary motivation for this change is that it simplifies the succeeding commit ("Cope with hot-removal in interrupt handler"). Additionally it seemed silly to me to re-read the interrupt mask every time for no reason at all. To test and debug this series I logged every MDIO read/write and these nonsensical transactions are very visible and very annoying in the log output. So yeah, maybe the latency argument isn't very strong, but there are other arguments which I didn't deem necessary mentioning in the commit message as they seemed somewhat egotistical. :) Thanks, Lukas