Re: [PATCH 3/5] PCI/ERR: get device before call device driver to avoid null pointer reference

From: Ethan Zhao
Date: Mon Sep 28 2020 - 22:35:32 EST


Preferred style, there will be cleared comment in v6.

Thanks,
Ethan

On Sat, Sep 26, 2020 at 12:42 AM Andy Shevchenko
<andriy.shevchenko@xxxxxxxxxxxxxxx> wrote:
>
> On Thu, Sep 24, 2020 at 10:34:21PM -0400, Ethan Zhao wrote:
> > During DPC error injection test we found there is race condition between
> > pciehp and DPC driver, null pointer reference caused panic as following
>
> null -> NULL
>
> >
> > # setpci -s 64:02.0 0x196.w=000a
> > // 64:02.0 is rootport has DPC capability
> > # setpci -s 65:00.0 0x04.w=0544
> > // 65:00.0 is NVMe SSD populated in above port
> > # mount /dev/nvme0n1p1 nvme
> >
> > (tested on stable 5.8 & ICX platform)
> >
> > Buffer I/O error on dev nvme0n1p1, logical block 468843328,
> > async page read
> > BUG: kernel NULL pointer dereference, address: 0000000000000050
> > #PF: supervisor read access in kernel mode
> > #PF: error_code(0x0000) - not-present page
>
> Same comment about Oops.
>
> --
> With Best Regards,
> Andy Shevchenko
>
>