Module Name: src Committed By: bouyer Date: Tue Oct 25 21:47:38 UTC 2011
Modified Files: src/sys/dev/pci: if_age.c Log Message: age_init() is called from age_watchdog() which is interrupt context, we can't sleep here or we get a DIAGNOSTIC panic when age_watchdog() fires. More correct bus_dma(9) usage in age_encap() Introduce a age_shutdown() to be called by pmf(9) at shutdown time, to stop the DMA engine. My system would't properly reboot without this. Be consistent in WAIT/NOWAIT use in init routines Use BUS_DMA_COHERENT where appropriate Rework the interrupt routine a bit, and ACK but do not disable interrupts here. There seems to be a race where interrupts would not be properly reenabled after this, leading do watchdog timeouts. With these changes, the on-board age(4) on ftp.fr.netbsd.org seems to be finally working properly. To generate a diff of this commit: cvs rdiff -u -r1.39 -r1.40 src/sys/dev/pci/if_age.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.