HomeFreeBSD

Remove zpl_revalidate: fix snapshot rollback

Description

Remove zpl_revalidate: fix snapshot rollback

Open files, which aren't present in the snapshot, which is being
roll-backed to, need to disappear from the visible VFS image of
the dataset.

Kernel provides d_drop function to drop invalid entry from
the dcache, but inode can be referenced by dentry multiple dentries.

The introduced zpl_d_drop_aliases function walks and invalidates
all aliases of an inode.

Reviewed-by: Ryan Moeller <ryan@iXsystems.com>
Reviewed-by: Alexander Motin <mav@FreeBSD.org>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Pavel Snajdr <snajpa@snajpa.net>
Closes #9600
Closes #14070

Details

Provenance
Pavel Snajdr <snajpa@snajpa.net>Authored on Dec 5 2019, 12:52 AM
Tony Hutter <hutter2@llnl.gov>Committed on Dec 1 2022, 8:39 PM
Parents
rG4c59fde1f595: Fix theoretical use of uninitialized values
Branches
Unknown
Tags
Unknown

Event Timeline

Tony Hutter <hutter2@llnl.gov> committed rG52e658edd7af: Remove zpl_revalidate: fix snapshot rollback (authored by Pavel Snajdr <snajpa@snajpa.net>).Dec 1 2022, 8:39 PM