All of lore.kernel.org
 help / color / mirror / Atom feed
From: Keith Busch <kbusch@kernel.org>
To: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Cc: Kai-Heng Feng <kai.heng.feng@canonical.com>,
	Nirmal Patel <nirmal.patel@linux.intel.com>,
	jonathan.derrick@linux.dev, acelan.kao@canonical.com,
	lpieralisi@kernel.org, kw@linux.com, robh@kernel.org,
	bhelgaas@google.com, linux-pci@vger.kernel.org,
	linux-kernel@vger.kernel.org, kaihengfeng@gmail.com
Subject: Re: [PATCH] PCI: vmd: Delay interrupt handling on MTL VMD controller
Date: Fri, 13 Sep 2024 09:24:29 -0600	[thread overview]
Message-ID: <ZuRZLRFrCjXlrd4w@kbusch-mbp> (raw)
In-Reply-To: <20240913111142.4cgrmirofhhgrbqm@thinkpad>

On Fri, Sep 13, 2024 at 04:41:42PM +0530, Manivannan Sadhasivam wrote:
> I'm not able to understand the bug properly. The erratum indicates that the MSI
> from device reaches the VMD before other writes to the registers. So this is an
> ordering issue as MSI takes precedence over other writes from the device.
> 
> So the workaround is to read the device register in the MSI handler to make sure
> the previous writes from the device are flushed. IIUC, once the MSI reaches the
> VMD, it will trigger the IRQ handler in the NVMe driver and in the handler, CQE
> status register is read first up. This flow matches with the workaround
> suggested.
> 
> Is any write being performed to the NVMe device before reading any register in
> the MSI handler? Or the current CQE read is not able to satisfy the workaround?
> Please clarify.

The CQE is not a device register. It exists in host memory, so reading
that from the driver isn't going to flush writes from IO devices.

  reply	other threads:[~2024-09-13 15:24 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-09-03  2:55 [PATCH] PCI: vmd: Delay interrupt handling on MTL VMD controller Kai-Heng Feng
2024-09-03  4:28 ` Manivannan Sadhasivam
2024-09-03  7:07   ` Kai-Heng Feng
2024-09-03  8:00     ` Manivannan Sadhasivam
2024-09-03 14:51     ` Keith Busch
2024-09-04  1:57       ` Kai-Heng Feng
2024-09-04  6:22         ` Manivannan Sadhasivam
2024-09-06  1:56           ` Kai-Heng Feng
2024-09-12 17:45             ` Nirmal Patel
2024-09-13  5:55               ` Kai-Heng Feng
2024-09-13 11:11                 ` Manivannan Sadhasivam
2024-09-13 15:24                   ` Keith Busch [this message]
2024-09-13 16:14                     ` Manivannan Sadhasivam
2024-09-13 16:34                       ` Keith Busch
2024-09-03 15:29     ` Nirmal Patel
2024-09-03 16:17 ` kernel test robot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ZuRZLRFrCjXlrd4w@kbusch-mbp \
    --to=kbusch@kernel.org \
    --cc=acelan.kao@canonical.com \
    --cc=bhelgaas@google.com \
    --cc=jonathan.derrick@linux.dev \
    --cc=kai.heng.feng@canonical.com \
    --cc=kaihengfeng@gmail.com \
    --cc=kw@linux.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=lpieralisi@kernel.org \
    --cc=manivannan.sadhasivam@linaro.org \
    --cc=nirmal.patel@linux.intel.com \
    --cc=robh@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.