[PATCH v2] nvme-pci: add NO_FUA quirk for ADATA XPG GAMMIX S70 BLADE

Keith Busch kbusch at kernel.org
Wed Nov 4 08:35:29 PST 2026


On Tue, Nov 03, 2026 at 10:12:04AM -0800, Hugo Deco wrote:
> On the ADATA XPG GAMMIX S70 BLADE (PCI 1cc1:5370, firmware 03020P5E)
> every Write with the FUA bit set takes 200, 400 or 600 ms to complete,
> always a multiple of ~200 ms, while a plain Write completes in
> 0.0-0.4 ms and a Flush in ~1.3 ms. Tracing nvme_setup_cmd and
> nvme_complete_rq shows the whole delay is between submission and
> completion, i.e. inside the device (e.g. FUA write, control 0x4000:
> 598.3 ms).
> 
> Because ext4/jbd2 issue FUA for every journal commit, fsync() on this
> drive stalls for 250-890 ms and desktop applications freeze.
> 
> Add NVME_QUIRK_NO_FUA, which stops advertising BLK_FEAT_FUA while
> keeping the volatile write cache enabled, so the block layer emulates
> FUA with a Write followed by a Flush. Durability semantics are
> unchanged. Apply it to the S70 BLADE through nvme_id_table.

Thanks, applied to nvme-7.4.



More information about the Linux-nvme mailing list