[PATCH 1/3] nvme-pci: clear shadow doorbell memory on resets
John Levon
levon at movementarian.org
Wed Oct 6 09:05:45 PDT 2021
On Wed, Oct 06, 2021 at 05:07:34AM -0700, Keith Busch wrote:
> On Mon, Oct 04, 2021 at 09:35:04AM +0000, John Levon wrote:
> > On Mon, Apr 27, 2020 at 04:52:41PM -0700, Keith Busch wrote:
> >
> > > The host memory doorbell and event buffers need to be initialized on
> > > each reset so the driver doesn't observe stale values from the previous
> > > instantiation.
> > >
> > > Signed-off-by: Keith Busch <kbusch at kernel.org>
> > > ---
> > > drivers/nvme/host/pci.c | 5 ++++-
> > > 1 file changed, 4 insertions(+), 1 deletion(-)
> > >
> > > diff --git a/drivers/nvme/host/pci.c b/drivers/nvme/host/pci.c
> > > index cf386c84588b..d388fff9c358 100644
> > > --- a/drivers/nvme/host/pci.c
> > > +++ b/drivers/nvme/host/pci.c
> > > @@ -228,8 +228,11 @@ static int nvme_dbbuf_dma_alloc(struct nvme_dev *dev)
> > > {
> > > unsigned int mem_size = nvme_dbbuf_size(dev->db_stride);
> > >
> > > - if (dev->dbbuf_dbs)
> > > + if (dev->dbbuf_dbs) {
> > > + memset(dev->dbbuf_dbs, 0, mem_size);
> > > + memset(dev->dbbuf_eis, 0, mem_size);
> > > return 0;
> > > + }
> > >
> > > dev->dbbuf_dbs = dma_alloc_coherent(dev->dev, mem_size,
> > > &dev->dbbuf_dbs_dma_addr,
> >
> > Hi Keith, we came across this issue recently, and we just found this above
> > patch. Was there any specific reason it was never merged?
>
> I don't recall why this wasn't merged. I can't find this series in my
> tree anymore, and it also appears that the mailing list has lost the
> original patch set. Do you happen to have the rest of the patch emails?
> If so, could you possibly send them to me?
I found them via lore:
https://lore.kernel.org/linux-nvme/20200427235243.2268765-1-kbusch@kernel.org/
regards
john
More information about the Linux-nvme
mailing list