On Mon, Mar 27, 2023 at 07:03:41PM -0700, Darrick J. Wong wrote: > On Mon, Mar 27, 2023 at 06:47:54PM -0700, Christoph Hellwig wrote: > > On Mon, Mar 27, 2023 at 06:43:28PM -0700, Darrick J. Wong wrote: > > > <shrug> Seeing as the data fork mappings can change the instant the > > > ILOCK drops, I'm not /that/ worried about users seeing a delalloc > > > mapping even if the user requested a flush. The results are already > > > obsolete when they get to userspace, unless the application software has > > > found another means to lock out access to the file. > > > > That is true, but then again the users asked to not see delalloc > > mappings, so we really shouldn't report one, right? > > Yeah, I suppose so. I wonder how many programs there are out there that > don't pass in BMV_IF_DELALLOC /and/ can't handle that? But I suppose > taking MMAP_EXCL is good enough to shut up the obvious assertion vector. Why not just skip it? Take the flush completion as being a point-in-time snapshot where there are no delalloc extents, and if any new ones have been created racily, just skip them as being "after" the flush and so don't get reported... > The COW implementation probably ought to be doing the flush too. Yup, and then just skip any delalloc extents found after that, too. Cheers, Dave. -- Dave Chinner david@xxxxxxxxxxxxx