[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CA+mtBx8oiDq+k3U705xYaV3xUsi=DnSWwCkymEONRcX3su77Fg@mail.gmail.com>
Date: Mon, 5 Mar 2012 21:14:12 -0800
From: Tom Herbert <therbert@...gle.com>
To: Eric Dumazet <eric.dumazet@...il.com>
Cc: Christoph Lameter <cl@...two.org>, mcarlson@...adcom.com,
netdev@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: 3.3.0-rc5: OOps in dql_completed (Broadcom tg3 driver)
BQL implementation for tg3 does not handle multi queue correctly.
Will have a fix for that momentarily.
Tom
On Fri, Mar 2, 2012 at 9:23 AM, Tom Herbert <therbert@...gle.com> wrote:
> Hi Christoph, Eric,
>
> Looks like we're hitting BUG_ON(count > dql->num_queued -
> dql->num_completed). This is indicative of mis-accounting occurring
> between netdev_sent_queue and netdev_completed_queue. I don't
> immediately see how this could happen here in the tg3_tso_bug path,
> this is still using the same calls to transmit and complete as other
> paths. I suppose it's possible that skb_gso_segment is somehow
> munging skb->len in segments.
>
> I'll try to reproduce this.
>
>> In case we hit BQL limit in one of the tg3_start_xmit() calls, we should
>> 'abort' the following ones, dont you think ?
>
> I'm not sure what you mean Eric. It should be okay to exceed the BQL
> limit up to the point that num_queued rolls over (probably should be a
> BUG_ON for that). This is a much greater number than could ever be
> queued to tg3.
>
> Thanks,
> Tom
>
>>
>> Or maybe thats irrelevant, and only dql_queued() comment is wrong.
>>
>> Thanks
>>
>>
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists