Date: Sun, 22 Nov 2009 20:50:27 +0000 (UTC) From: Pyun YongHyeon <yongari@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src/sys/dev/bge if_bge.c if_bgereg.h Message-ID: <200911222050.nAMKof1h060629@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
yongari 2009-11-22 20:50:27 UTC FreeBSD src repository Modified files: sys/dev/bge if_bge.c if_bgereg.h Log: SVN rev 199670 on 2009-11-22 20:50:27Z by yongari Fix two long standing bugs on bge(4). Most pre BCM5755 controllers have a DMA bug when buffer address crosses a multiple of the 4GB boundary(e.g. 4GB, 8GB, 12GB etc). Limit DMA address to be within 4GB address for these controllers. The second DMA bug limits DMA address to be within 40bit address space. This bug applies to BCM5714 and BCM5715 and 5708(bce(4) controller). This is not actually a MAC controller bug but an issue with the embedded PCIe to PCI-X bridge in the device. So for BCM5714/BCM5715 controllers also limit the DMA address to be within 40bit address space. Special thanks to davidch@ who gave me detailed errata information. I think this change will fix long standing bge(4) instability issues on systems with more than 4GB memory. Reviewed by: davidch Revision Changes Path 1.255 +24 -1 src/sys/dev/bge/if_bge.c 1.93 +9 -0 src/sys/dev/bge/if_bgereg.h
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200911222050.nAMKof1h060629>