On Wed, Oct 21, 2020 at 08:04:15AM -0400, Jason Andryuk wrote: > From: David Milburn <dmilburn@xxxxxxxxxx> > > [ Upstream commit ce4cc3133dc72c31bd49ddcf22d0f9eeff47a761 ] > > The write zeros command does not work with 4k range. > > bash-4.4# ./blkdiscard /dev/nvme0n1p2 > bash-4.4# strace -efallocate xfs_io -c "fzero 536895488 2048" /dev/nvme0n1p2 > fallocate(3, FALLOC_FL_ZERO_RANGE, 536895488, 2048) = 0 > +++ exited with 0 +++ > bash-4.4# dd bs=1 if=/dev/nvme0n1p2 skip=536895488 count=512 | hexdump -C > 00000000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| > * > 00000200 > > bash-4.4# ./blkdiscard /dev/nvme0n1p2 > bash-4.4# strace -efallocate xfs_io -c "fzero 536895488 4096" /dev/nvme0n1p2 > fallocate(3, FALLOC_FL_ZERO_RANGE, 536895488, 4096) = 0 > +++ exited with 0 +++ > bash-4.4# dd bs=1 if=/dev/nvme0n1p2 skip=536895488 count=512 | hexdump -C > 00000000 5c 61 5c b0 96 21 1b 5e 85 0c 07 32 9c 8c eb 3c |\a\..!.^...2...<| > 00000010 4a a2 06 ca 67 15 2d 8e 29 8d a8 a0 7e 46 8c 62 |J...g.-.)...~F.b| > 00000020 bb 4c 6c c1 6b f5 ae a5 e4 a9 bc 93 4f 60 ff 7a |.Ll.k.......O`.z| > > Reported-by: Eric Sandeen <esandeen@xxxxxxxxxx> > Signed-off-by: David Milburn <dmilburn@xxxxxxxxxx> > Tested-by: Eric Sandeen <sandeen@xxxxxxxxxx> > Signed-off-by: Christoph Hellwig <hch@xxxxxx> > [ Fix-up for 5.4 since NVME_QUIRK_NO_TEMP_THRESH_CHANGE doesn't exist ] > Signed-off-by: Jason Andryuk <jandryuk@xxxxxxxxx> > > --- > Applicable to 5.4. NVME_QUIRK_DISABLE_WRITE_ZEROES was introduced in 5.0. > The original commit needs a fix for 5.4 because > NVME_QUIRK_NO_TEMP_THRESH_CHANGE doesn't exist - it looks like it was > added in 5.5. > > Observed with mke2fs failures on 5.4 wih Intel 600P. Now queued up, thanks. greg k-h