Please sign in to comment.
port async unlinked drain from illumos-nexenta
This patch is an async implementation of the existing sync zfs_unlinked_drain() function. This function is called at mount time and is responsible for freeing znodes that we didn't get to freeing before. We don't have to hold mounting of the dataset until the unlinked list is fully drained as is done now. Since we can process the unlinked set asynchronously this results in a better user experience when mounting a dataset with entries in the unlinked set. Signed-off-by: Alek Pinchuk <email@example.com>
- Loading branch information...
Showing with 267 additions and 10 deletions.
- +8 −0 include/sys/dataset_kstats.h
- +2 −0 include/sys/dsl_pool.h
- +1 −0 include/sys/zfs_dir.h
- +4 −0 include/sys/zfs_vfsops.h
- +12 −0 man/man5/zfs-module-parameters.5
- +29 −0 module/zfs/dataset_kstats.c
- +10 −0 module/zfs/dsl_pool.c
- +53 −3 module/zfs/zfs_dir.c
- +31 −5 module/zfs/zfs_vfsops.c
- +9 −1 module/zfs/zfs_znode.c
- +1 −1 tests/runfiles/linux.run
- +1 −0 tests/zfs-tests/tests/functional/mount/Makefile.am
- +106 −0 tests/zfs-tests/tests/functional/mount/umount_unlinked_drain.ksh
Oops, something went wrong.