Add wrapper for Linux BLKFLSBUF ioctl

FreeBSD has no analog. Buffered block devices were removed a decade
plus ago.

Reviewed-by: Igor Kozhukhov <igor@dilos.org>
Reviewed-by: Jorgen Lundman <lundman@lundman.net>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Matt Macy <mmacy@FreeBSD.org>
Closes #9508
This commit is contained in:
Matthew Macy
2019-10-28 09:53:39 -07:00
committed by Brian Behlendorf
parent 4a22ba5be0
commit d46f0deb03
4 changed files with 9 additions and 2 deletions
+1 -1
View File
@@ -3444,7 +3444,7 @@ dump_label(const char *dev)
exit(1);
}
if (S_ISBLK(statbuf.st_mode) && ioctl(fd, BLKFLSBUF) != 0)
if (S_ISBLK(statbuf.st_mode) && zfs_dev_flush(fd) != 0)
(void) printf("failed to invalidate cache '%s' : %s\n", path,
strerror(errno));