Hi, I had been working on fixing bus_dma(9) bugs and adding TSO capability to bge(4). Now TSO is supported for BCM5755 or newer controllers. Actually some pre-BCM5755 controllers also support TSO with the help of special firmware but the license issue and lower performance of firmware based TSO as well as TSO bug I intentionally excluded TSO support for pre-BCM5755 controllers. You can get the patch form the following URL. The diff was generated against latest HEAD. http://people.freebsd.org/~yongari/bge/bge.tso.1111.diff or http://people.freebsd.org/~yongari/bge/if_bge.c http://people.freebsd.org/~yongari/bge/if_bgereg.h The diff also has a lot of functional changes which may affect other bge(4) controllers. Specifically the diff - Added workarounds for known DMA bug. This workaround shall make bge(4) use bounce buffers so this fix requires all previous changes made in HEAD. This may slow down overall performance if bounce buffers are used but I think it's better than leaving the bug. - Tuned interrupt coalescing parameters. - Use taskqeue to get better performance on PCIe controllers. - TSO support for BCM5755 or newer controllers. - Tx path cleaned up. - Interrupt handler now clears status word as it does in polling case. I'm interesting in performance changes before/after the diff and any regressions from the diff. Please test I'll commit the diff next week unless I get regressions. Thanks.Received on Wed Nov 11 2009 - 21:38:24 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:57 UTC