possible regression fs corruption on 64GB nvme
Robert Beckett
bob.beckett at collabora.com
Wed Sep 11 10:17:34 PDT 2024
---- On Wed, 11 Sep 2024 18:08:50 +0100 Keith Busch wrote ---
> On Wed, Sep 11, 2024 at 05:56:37PM +0100, Robert Beckett wrote:
> >
> > given this ~9 year old temporary fix is still in the kernel for the
> > Apple device, could we just add another device specific override? I
> > could maybe convert it to a quirk that is set for them both (and any
> > future devices)
>
> Sure, that's an option. Do you want to send a patch? Alternatively you
> can reply with the PCI VID:DID of your problematic device and I'll write
> one for testing and consideration.
looks like it's 1217:8760
01:00.0 Non-Volatile memory controller [0108]: O2 Micro, Inc. Device [1217:8760] (rev 01) (prog-if 02 [NVM Express])
Subsystem: O2 Micro, Inc. Device [1217:0002]
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 41
Region 0: Memory at 80600000 (64-bit, non-prefetchable) [size=16K]
Capabilities: <access denied>
Kernel driver in use: nvme
Kernel modules: nvme
>
> And just fyi, there are potential performance implications for doing
> this. It's less noticable on higher latency devices, which sounds like
> what you have anyway, so may not matter much for you. Just getting that
> out there to avoid any surprises.
Understood. I'll do some benchmarking with and without it to check difference.
I think for now it is safer to get it in the code as it can cause corruption. We can always revert it if we figure out a fix with less performance degredation.
Cheers muchly!
More information about the Linux-nvme
mailing list