On Thu, May 06, 2021 at 08:18:36AM +0100, Christoph Hellwig wrote: > On Wed, May 05, 2021 at 02:27:11PM -0700, Darrick J. Wong wrote: > > Er... what specifically does "data" mean? File data, or just the dirent > > blocks? > > > > I think this is only true if discard_zeroes_data == 1, right? The last > > I looked, ext4 was calling REQ_OP_DISCARD, not REQ_OP_WRITE_ZEROES. > > > > Also, there are some SSDs that "implement" discard as nop, which means > > that the old contents can still be read by re-reading the LBAs. What > > about those? > > Not just some, but most at least for corner cases. ATA TRIM, SCSI UNMAP > and NVMe Deallocate all explicitly allow for keeping some of the old > data, and devices make use of that when the discard requests does not > map to their internal granularities. Heh, so that's a "stable" behavior. :) > > (Also wondering if this is where FS_SECRM_FL files should get their > > freed file blocks erased with REQ_OP_SECURE_ERASE...) > > Only implemented for mmc.. <shrug> If the wording got tweaked to "...not readable via LBA interface after delete" then you could also REQ_OP_WRITE_ZEROES, which would work on a broader range of hardware. --D