summaryrefslogtreecommitdiffstats
path: root/sys/dev/pci/pci_private.h
diff options
context:
space:
mode:
authoryongari <yongari@FreeBSD.org>2006-08-14 02:21:26 +0000
committeryongari <yongari@FreeBSD.org>2006-08-14 02:21:26 +0000
commit297f53342b73885fd27db30f6852e67f9a6c293a (patch)
treeaec9cb413c3563c1678700a91843eb8be6957a92 /sys/dev/pci/pci_private.h
parent494fd63ce267ca352d6bf5af3a85075eecd61d76 (diff)
downloadFreeBSD-src-297f53342b73885fd27db30f6852e67f9a6c293a.zip
FreeBSD-src-297f53342b73885fd27db30f6852e67f9a6c293a.tar.gz
Make em(4) handle too many fragmented frame with m_defrag(9).
Previously em(4) requeued the failed mbuf chains from bus_dmamap_load_mbuf_sg(9) failure to resend it later. However, bus_dmamap_load_mbuf_sg(9) may never complete its request as the fragmented frames can have more than EM_MAX_SCATTER segments. To handle the above EFBIG case, defragment the frame with m_defrag(9) and free the mbuf chain if it can't deframent the chain due to resource shortage. Reviewed by glebius (with improvements)
Diffstat (limited to 'sys/dev/pci/pci_private.h')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud