Hi Neil,

Thanks for your feedback!

Sorry, it took me a while to respond.

On Fri, May 29, 2026 at 09:54:32AM +0200, Neil Armstrong wrote:
[..]
> > 
> > > 
> > > The for NVMe, can it support write-through like SCSI FUA (Force Unit
> > > Access) which bypasses the cache on writes, with slower writes
> > > but safer and simpler than calling a flush before OS boot.
> > 
> > Yes, I've seen there was FUA patch [1], which was then reverted [2].
> > 
> > For our purposes, flush seems to be enough: the use case is
> > updating NVMe-backed boot counter from a custom bootflow.
> 
> OK the FUA was reverted because Bin's comment was not adressed:
> https://lore.kernel.org/u-boot/caeuhbmu02gnqeefuqnrsj8r5xezkmktualp1+bmbyqndztu...@mail.gmail.com/
> 
> I would prefer having FUA added so all board could have this enabled
> and not have to update their boot flow to call flush, this was basically
> why the SCSI FUA was enabled.

I will take a look into FUA.

The problem I was solving is providing a guarantee that GPT headers
will be updated correctly on the NVMe device.

I have a new bootcount device which implements a counter backed by
GPT PTE flags (the top 16 bits) [1]

Patch [2] adds new APIs to update 16 bit flags in both primary and
backup GPT headers (the proposed write_gpt_pte() call).

This is where I originally used new flush command: to guarantee that
NVMe received all the updates before it is handed over to the OS.

[1] https://lore.kernel.org/u-boot/[email protected]/
[2] https://lore.kernel.org/u-boot/[email protected]/

> 
> As Bin's comment, perhaps a way would be to disable the Write Cache if
> the cache is present as init time (WCE), and it's even simpler, or
> get the enable state of the WC and use FUA if enabled.
> 
> Because the same question remains with the flush command, it's
> only valid if the WC is present and is enabled.
> 
> Thanks,
> Neil
> 
> > 
> > [1] 
> > https://lore.kernel.org/u-boot/20211019104049.v3.1.Ic581ec99f46b6dfa2e0b1922e670a333ac859e82@changeid/
> > [2] 
> > https://lore.kernel.org/u-boot/cagi-rul96gk5nfhx73uqqd_4sfbyt3gnwqhfphps+h58s20...@mail.gmail.com/

--
Denis

Reply via email to