Question on rx queue in ixgbe driver

2014-07-23 Thread Xu Zhe
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

Re: Question on rx queue in ixgbe driver

2014-07-23 Thread Jack Vogel
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

Re: [RFC] Allow m_dup() to use JUMBO clusters

2014-07-23 Thread John-Mark Gurney
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

[PATCH] merge 'struct ip6protosw' and 'struct protosw' into one

2014-07-23 Thread Kevin Lo
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