Hi Christian, On Tue, Nov 09, 2004 at 05:49:42PM +0100, Christian Brueffer wrote: > the attached patch implements device polling for the sf(4) driver. It > has been running on my home gateway for almost two weeks now, without any > ill effects. > > I'd appreciate it, when someone could review/commit this. > Unfortunately, I cannot give this patch a real testing as I don't have the hardware in question, but I did the code inspection and found only three bugs. ;)
1. The done_locked: label should be put in #ifdef DEVICE_POLLING, or it will cause compile-time warning if compiling without the DEVICE_POLLING option. 2. The condition to call if_start() in sf_poll_locked() was broken twice: there's an extra semicolon at the end of the "if" line, and while this conditional is valid for ALTQ, it's not for this driver, as it doesn't yet support it (perhaps your local version of the driver does). 3. The POLL_AND_CHECK_STATUS command handler is wrong: you use 16-bit status variable where 32-bit is necessary, and you don't do any error-recovering that sf_intr() does. I blindly fixed this, but I cannot test it on a real hardware. I also "fixed" the #endif's. ;) An updated patch can be found here: http://people.freebsd.org/~ru/patches/if_sf.patch Cheers, -- Ruslan Ermilov [EMAIL PROTECTED] FreeBSD committer
pgppcPA7omNY5.pgp
Description: PGP signature