vdev_file: unify FreeBSD and Linux implementations (#17046)

Kernel & userspace specifics are in zfs_file_os.c, so there's no
particular reason these have to be separate.

The one platform-specific part is in the Linux kernel part, to offload
flushes to a taskq if we're already inside a filesystem transaction.
This would be normally be an unsatisfying wart, but I'm intending to
remove this shortly, so I'm content to leave it gated for the moment.

Reviewed-by: Allan Jude <allan@klarasystems.com>
Reviewed-by: Alexander Motin <mav@FreeBSD.org>
Reviewed-by: Tony Hutter <hutter2@llnl.gov>

Sponsored-by: Klara, Inc.
Sponsored-by: Wasabi Technology, Inc.

Signed-off-by: Rob Norris <rob.norris@klarasystems.com>
This commit is contained in:
Rob Norris
2025-02-21 05:42:42 +11:00
committed by GitHub
parent 6a2f7b3844
commit c43df8bbbf
5 changed files with 31 additions and 377 deletions
+1 -1
View File
@@ -385,6 +385,7 @@ ZFS_OBJS := \
vdev.o \
vdev_draid.o \
vdev_draid_rand.o \
vdev_file.o \
vdev_indirect.o \
vdev_indirect_births.o \
vdev_indirect_mapping.o \
@@ -446,7 +447,6 @@ ZFS_OBJS_OS := \
spa_misc_os.o \
trace.o \
vdev_disk.o \
vdev_file.o \
vdev_raidz.o \
vdev_label_os.o \
zfs_acl.o \