Hi,
I am reading ixgbe driver of Freebsd and got some problems, which are
described below.
(1) Why rxd_tail does not equals to rxd_head?
Here, rxd_tail/rxd_head is the value of
dev.ix.0.queue0.rxd_tail/dev.ix.0.queue0.rxd_head from sysctl (take the first
queue of ix0 as example).
Actually, in m
HEAD and TAIL are actually hw registers, the driver as it is configured
these
days never (and cannot) modify HEAD, There is an option to use the HEAD
register as a method of managing the RX side (called Head Writeback), but
in ixgbe this is not used, rather we rely on the DD bit of a descriptor to
Rick Macklem wrote this message on Tue, Jul 08, 2014 at 16:10 -0400:
> I tried:
> m = m_getjcl(M_NOWAIT..M_JUMPAGESIZE);
> if (m == NULL)
>m = getjcl(M_WAITOK..MCLBYTES);
> when I was experimenting with MJUMPAGESIZE clusters for NFS and what happened
> was the thread looped
Hi,
The diff [1] merges 'struct ip6protosw' and 'struct protosw' into one,
since we don't need a separate structure which is shared between ipv4
and ipv6. The key difference between the two is the definition of pr_input
function.
[1] https://phabric.freebsd.org/D476
Kevin