HomeFreeBSD

Make xattr dir truncate and remove in one tx

Description

Make xattr dir truncate and remove in one tx

We need truncate and remove be in the same tx when doing zfs_rmnode on xattr
dir. Otherwise, if we truncate and crash, we'll end up with inconsistent zap
object on the delete queue. We do this by skipping dmu_free_long_range and let
zfs_znode_delete to do the work.

Signed-off-by: Chunwei Chen <david.chen@osnexus.com>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Issue #4114
Issue #4052
Issue #4006
Issue #3018
Issue #2861

Details

Provenance
Chunwei Chen <tuxoko@gmail.com>Authored on Dec 21 2015, 7:57 PM
Brian Behlendorf <behlendorf1@llnl.gov>Committed on Dec 28 2015, 5:48 PM
Parents
rG29572ccdeff7: Fix empty xattr dir causing lockup
Branches
Unknown
Tags
Unknown

Event Timeline

Brian Behlendorf <behlendorf1@llnl.gov> committed rGf5f087eb8800: Make xattr dir truncate and remove in one tx (authored by Chunwei Chen <tuxoko@gmail.com>).Dec 28 2015, 5:48 PM