lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Mon, 21 Dec 2009 14:07:14 -0800 From: "Ha, Tristram" <Tristram.Ha@...rel.Com> To: "David Miller" <davem@...emloft.net> Cc: <ben@...tec.co.uk>, <netdev@...r.kernel.org>, <linux-kernel@...r.kernel.org> Subject: RE: [PATCH 2.6.32 3/3] net: Make ks8851 snl work under Beagle Zippy combo board Ha, Tristram wrote: > David Miller wrote: >> >> You say "may not be necessary", do you actually know for sure? >> >> This seems questionable, if the interrupt disabling was there for a >> reason what has changed to make it such that it is no longer necessary? > > I have tested the KSZ8851 SNL driver using the OMAP Beagle Zippy combo board, developed by Tin > Can Tools. Ben Dooks, who implemented the original driver, has his own KSZ8851 SNL evaluation > board, but he probably did not run any performance test on the driver. I did sent him the > changes before so that he can verify on his board, but I have not received any response. > > So I really do not know if interrupt disabling is necessary or not. But from my understanding > of the SPI network driver model, it is almost required the interrupt be edge triggered, as the > hardware interrupt cannot be disabled inside the actual interrupt handling routine. So if the > interrupt is level triggered, the interrupt routine will be called continually, and there is no > chance for the workqueue to disable the interrupt. As the interrupt is edge triggered, I do not > think the interrupt needs to be disabled. The "[PATCH 2.6.33] net: Fix ks8851 snl receive problem" I just submitted turns off hardware interrupt during interrupt handling. That makes the disable_irq() call really unnecessary when the interrupt is edge-triggered. The code also works when the interrupt is level-triggered under Beagle Zippy combo board, but theoretically the disable_irq() is required when the interrupt is level-triggered. When I first worked on the ks8851 driver I was using Linux 2.6.22, and the level-triggered interrupt code did not work. That is why I changed the code to edge-triggered. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists