On Tue, Mar 18, 2025 at 08:42:36AM +0000, John Garry wrote: >> I see that this is what's done in the current series now. But that feels >> very wrong. Why do you want to deprive the user of this nice and useful >> code if they don't have the right hardware? > > I don't think it's fair to say that we deprive the user - so far we just > don't and nobody has asked for atomics without HW support. You're still keeping this nice functionality from the users.. > >> Why do we limit us to the >> hardware supported size when we support more in software? > > As I see, HW offload gives fast and predictable performance. > > The COW method is just a (slow) fallback is when HW offload is not possible. > > If we want to allow the user to avail of atomics greater than the mounted > bdev, then we should have a method to tell the user of the optimised > threshold. They could read the bdev atomic limits and infer this, but that > is not a good user experience. Yes, there should be an interface to expose that. But even without the hardware acceleration a guaranteed untorn write is a really nice feature to have.