Re: [RFC PATCH 0/1] DOE usage with pcie/portdrv

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, May 11, 2022 at 12:43:34PM -0700, Dan Williams wrote:
> On Wed, May 11, 2022 at 12:20 PM Lukas Wunner <lukas@xxxxxxxxx> wrote:
> > But the reset argument still stands:  That same section says that all
> > IDE streams transition to Insecure and all keys are invalidated upon
> > reset.
> 
> Right, this isn't the only problem with reset vs ongoing CXL operations...
> 
> https://lore.kernel.org/linux-cxl/164740402242.3912056.8303625392871313860.stgit@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/

The above-linked cover letter refers to AER.

I believe with AER, the kernel is notified of an error via an interrupt
and asynchronously attempts recovery through a reset.
Obviously, an eternity may pass until the kernel gets around to do that
and whether accesses performed between the initial error and the reset
succeed is sort of undefined.  So it's kind of a "best effort" error
recovery.

With the advent of DPC, the situation has improved considerably as the
hardware (not the kernel) automatically disables the link upon occurrence
of the initial error.  Any subsequent accesses will fail and the kernel
does not perform a reset itself (the hardware already did that) but merely
attempts to bring the link back up.  That has made error recovery pretty
solid and NVMe drives now seamlessly recover from errors without the need
to unbind/rebind the driver.  Data centers heavily depend on that feature.

Perhaps if CXL.mem used DPC, it would be able to recover more reliably?

Circling back to the SPDM/IDE topic, while NVMe is now capable of
reliably recovering from errors, it does expect the kernel to handle
recovery within a few seconds.  I'm not sure we can continue to
guarantee that if the kernel depends on user space to perform
re-authentication with SPDM after reset.  That's another headache
that we could avoid with in-kernel SPDM authentication.

Thanks,

Lukas



[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux