Re: [PATCH] net/mlx4_en: ensure rx_desc updating reaches HW before prod db updating

From: Eric Dumazet
Date: Wed Jan 24 2018 - 22:56:04 EST


On Thu, 2018-01-25 at 11:27 +0800, jianchao.wang wrote:
> Hi Tariq
>
> On 01/22/2018 10:12 AM, jianchao.wang wrote:
> > > > On 19/01/2018 5:49 PM, Eric Dumazet wrote:
> > > > > On Fri, 2018-01-19 at 23:16 +0800, jianchao.wang wrote:
> > > > > > Hi Tariq
> > > > > >
> > > > > > Very sad that the crash was reproduced again after applied the patch.
> > >
> > > Memory barriers vary for different Archs, can you please share more details regarding arch and repro steps?
> > The hardware is HP ProLiant DL380 Gen9/ProLiant DL380 Gen9, BIOS P89 12/27/2015
> > The xen is installed. The crash occurred in DOM0.
> > Regarding to the repro steps, it is a customer's test which does heavy disk I/O over NFS storage without any guest.
> >
>
> What is the finial suggestion on this ?
> If use wmb there, is the performance pulled down ?

Since https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git/commit/?id=dad42c3038a59d27fced28ee4ec1d4a891b28155

we batch allocations, so mlx4_en_refill_rx_buffers() is not called that often.

I doubt the additional wmb() will have serious impact there.