[Bug 194314] [ixgbe] driver makes some dangerous assumptions with struct mbuf sizing with IXGBE_RX_COPY_LEN
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Mon Oct 20 18:13:38 UTC 2014
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=194314
--- Comment #12 from Eric Joyner <ricera10 at gmail.com> ---
(In reply to Garrett Cooper from comment #10)
> (In reply to Eric Joyner from comment #8)
> > So it sounds like we may just need to change IXGBE_RX_COPY_LEN from a fixed
> > value of 160 to something that's calculated based on the length of struct
> > m_hdr and struct m_pkthdr combined.
> >
> > I think they got 160 by adding together the size of the two header structs
> > (88 in FreeBSD amd64), adding some number (8) to make that size divisible by
> > 32 (96 % 32 == 0), and then subtracted that from MSIZE (256) to get
> > IXGBE_RX_COPY_LEN (160), while keeping the padding added as
> > IXGBE_RX_COPY_ALIGN.
>
> A couple questions then:
>
> - What architectures is this driver supported on?
> - Is this optimization only valid for amd64?
> - Why 32?
- At least i386 and amd64, but it should theoretically work on anything with a
PCI-E slot
- This optimization specifically was contributed by scottl/luigi, looking at
the commit logs. You should ask either of those two for details.
- Doesn't the comment in the code you posted answer that?
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-net
mailing list