[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150915203634.GI7306@kw.sim.vm.gnt>
Date: Tue, 15 Sep 2015 22:36:34 +0200
From: Simon Guinot <simon.guinot@...uanux.org>
To: Oren Laskin <oren@...eous.io>
Cc: David Miller <davem@...emloft.net>,
thomas.petazzoni@...e-electrons.com, andrew@...n.ch,
jason@...edaemon.net, netdev@...r.kernel.org, vdonnefort@...il.com,
stable@...r.kernel.org,
Gregory CLEMENT <gregory.clement@...e-electrons.com>,
yoann@...lo.fr, linux-arm-kernel@...ts.infradead.org,
sebastian.hesselbarth@...il.com
Subject: Re: [PATCH v2] net: mvneta: fix refilling for Rx DMA buffers
On Mon, Sep 14, 2015 at 01:22:12PM -0700, Oren Laskin wrote:
> I had to undo this change on my Amada 370 based board. It was causing
> corrupt data to make it through on large downloads. I'm using wget to get
> the same 30MB file many times and the SHA would occasionally be different.
> I tracked it down to this commit. In it, I would find on the order of a
> few hundred bytes to simply be wrong data.
Hi Oren,
Well, you are right. This patch actually introduces a pretty serious
bug. I still don't understand how I missed that in a first place and
I apologize for the inconvenience.
Anyway, I am about to send a patch fixing the issue. Please, can you
test it ?
Thanks in advance,
Simon
> On Tue, Jul 21, 2015 at 12:30 AM, David Miller <davem@...emloft.net> wrote:
>
> > From: Simon Guinot <simon.guinot@...uanux.org>
> > Date: Sun, 19 Jul 2015 13:00:53 +0200
> >
> > > With the actual code, if a memory allocation error happens while
> > > refilling a Rx descriptor, then the original Rx buffer is both passed
> > > to the networking stack (in a SKB) and let in the Rx ring. This leads
> > > to various kernel oops and crashes.
> > >
> > > As a fix, this patch moves Rx descriptor refilling ahead of building
> > > SKB with the associated Rx buffer. In case of a memory allocation
> > > failure, data is dropped and the original DMA buffer is put back into
> > > the Rx ring.
> > >
> > > Signed-off-by: Simon Guinot <simon.guinot@...uanux.org>
> > > Fixes: c5aff18204da ("net: mvneta: driver for Marvell Armada 370/XP
> > network unit")
> > > Cc: <stable@...r.kernel.org> # v3.8+
> > > Tested-by: Yoann Sculo <yoann@...lo.fr>
> >
> > Applied, thanks.
> >
> > _______________________________________________
> > linux-arm-kernel mailing list
> > linux-arm-kernel@...ts.infradead.org
> > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
> >
Download attachment "signature.asc" of type "application/pgp-signature" (182 bytes)
Powered by blists - more mailing lists