Re: Regression: SUNRPC: Use poll() to fix up the socket requeue races

From: Trond Myklebust
Date: Tue Feb 26 2019 - 15:40:29 EST


On Tue, 2019-02-26 at 10:33 -0800, Tony Lindgren wrote:
> Hi,
>
> * Trond Myklebust <trondmy@xxxxxxxxxxxxxxx> [700101 00:00]:
> > On Mon, 2019-02-25 at 22:27 +0000, Jon Hunter wrote:
> > > On 25/02/2019 21:03, Trond Myklebust wrote:
> > > This is nfsroot. I don't specify any particular NFS version from
> > > the kernel cmdline, but this is seen with ARM kernel configs
> > > tegra_defconfig and multi_v7_defconfig.
> > >
> > > Looking at the logs I am seeing the following crash which appears
> > > to point to UDP ...
> > >
> > > [ 8.032956] Unable to handle kernel NULL pointer dereference
> > > at
> > > virtual address 00000024
> > > [ 8.041137] pgd = (ptrval)
> > > [ 8.043858] [00000024] *pgd=00000000
> > > [ 8.047437] Internal error: Oops: 5 [#1] SMP ARM
> > > [ 8.052049] Modules linked in:
> > > [ 8.055104] CPU: 1 PID: 100 Comm: kworker/u9:2 Not tainted
> > > 5.0.0-
> > > rc7-next-20190222-g94a4752 #1
> > > [ 8.063699] Hardware name: NVIDIA Tegra SoC (Flattened Device
> > > Tree)
> > > [ 8.069960] Workqueue: xprtiod xs_udp_data_receive_workfn
> > > [ 8.075353] PC is at udp_poll+0x30/0x64
> > > [ 8.079178] LR is at udp_poll+0x10/0x64
> >
> > Thanks! I see what the issue is now and I'll be fixing it ASAP.
>
> I'm seeing this also with NFSroot. I can test the fix when available,
> that is if you can please Cc me on the fix.
>
> Thanks,
>
> Tony

I've applied the following patch to my 'testing' branch:
http://git.linux-nfs.org/?p=trondmy/linux-nfs.git;a=patch;h=a73881c96d73ee72b7dbbd38a6eeef66182a8ef7

It has so far stood up to testing on my side, so I'm expecting to push
it to linux-next this evening.

Cheers
Trond
--
Trond Myklebust
Linux NFS client maintainer, Hammerspace
trond.myklebust@xxxxxxxxxxxxxxx