lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ZuRZLRFrCjXlrd4w@kbusch-mbp>
Date: Fri, 13 Sep 2024 09:24:29 -0600
From: Keith Busch <kbusch@...nel.org>
To: Manivannan Sadhasivam <manivannan.sadhasivam@...aro.org>
Cc: Kai-Heng Feng <kai.heng.feng@...onical.com>,
	Nirmal Patel <nirmal.patel@...ux.intel.com>,
	jonathan.derrick@...ux.dev, acelan.kao@...onical.com,
	lpieralisi@...nel.org, kw@...ux.com, robh@...nel.org,
	bhelgaas@...gle.com, linux-pci@...r.kernel.org,
	linux-kernel@...r.kernel.org, kaihengfeng@...il.com
Subject: Re: [PATCH] PCI: vmd: Delay interrupt handling on MTL VMD controller

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.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ