Date: Fri, 11 Jun 2010 13:44:59 -0700 From: Jack Vogel <jfvogel@gmail.com> To: "Bjoern A. Zeeb" <bz@freebsd.org> Cc: Jack F Vogel <jfv@freebsd.org>, svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r209060 - head/sys/dev/ixgbe Message-ID: <AANLkTilWCFyADb1ILa99nz2WIPb-JROhgSPeWGgPqhP5@mail.gmail.com> In-Reply-To: <AANLkTiklA6SV9CSpavEWx6Er6e6-ijNlwNXn0k-fUwKo@mail.gmail.com> References: <201006111903.o5BJ3xp1062600@svn.freebsd.org> <20100611193903.W26508@maildrop.int.zabbadoz.net> <AANLkTimic2IcWP-vI21gehFAbFKbqzUtpmvVnd2r_hLY@mail.gmail.com> <20100611200936.B26508@maildrop.int.zabbadoz.net> <AANLkTim0tKu-Ul1SpadatFJm994pmZbDxvw2GpuUkWVV@mail.gmail.com> <20100611202054.A26508@maildrop.int.zabbadoz.net> <AANLkTiklA6SV9CSpavEWx6Er6e6-ijNlwNXn0k-fUwKo@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Jun 11, 2010 at 1:27 PM, Jack Vogel <jfvogel@gmail.com> wrote:
>
> On Fri, Jun 11, 2010 at 1:23 PM, Bjoern A. Zeeb <bz@freebsd.org> wrote:
>
>> On Fri, 11 Jun 2010, Jack Vogel wrote:
>>
>> Odd though, because that code is in the driver on a system with 16 cores
>>> and
>>> I'm
>>> not hearing about any problem from my test engineer.
>>>
>>
>> So this makes it all go away:
>>
>> --- //depot/user/bz/vimage/src/sys/dev/ixgbe/ixgbe.c 2010-06-09
>> 07:53:30.000000000 0000
>> +++ /zoo/bz/p4/bz_vimage/src/sys/dev/ixgbe/ixgbe.c 2010-06-09
>> 07:53:30.000000000 0000
>> --- /tmp/tmp.96356.27 2010-06-11 16:19:14.000000000 -0400
>> +++ /zoo/bz/p4/bz_vimage/src/sys/dev/ixgbe/ixgbe.c 2010-06-11
>> 16:16:02.000000000 -0400
>> @@ -3637,7 +3637,7 @@ ixgbe_setup_receive_ring(struct rx_ring
>> goto skip_head;
>>
>> /* First the header */
>> - rxbuf->m_head = m_gethdr(M_WAITOK, MT_DATA);
>> + rxbuf->m_head = m_gethdr(M_DONTWAIT, MT_DATA);
>> if (rxbuf->m_head == NULL) {
>> error = ENOBUFS;
>> goto fail;
>> @@ -3659,7 +3659,7 @@ ixgbe_setup_receive_ring(struct rx_ring
>>
>> skip_head:
>> /* Now the payload cluster */
>> - rxbuf->m_pack = m_getjcl(M_WAITOK, MT_DATA,
>> + rxbuf->m_pack = m_getjcl(M_DONTWAIT, MT_DATA,
>> M_PKTHDR, adapter->rx_mbuf_sz);
>> if (rxbuf->m_pack == NULL) {
>> error = ENOBUFS;
>>
>>
>> Are they running with WITNESS enabled to see the locking warnings?
>>
>
>
He's running with a recent version of STABLE/8 so probably does not have
WITNESS on.
So you think that causes the problem? I just went into the lab, he does have
the WAITOK
in the driver, and the system has 16 cores. So, I'm still not clear why you
see a problem
when he does not.
I will change it back to NOWAIT in any case.
Jack
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?AANLkTilWCFyADb1ILa99nz2WIPb-JROhgSPeWGgPqhP5>
