]> git.baikalelectronics.ru Git - kernel.git/commit
Btrfs: move d_instantiate outside the transaction during mksubvol
authorChris Mason <chris.mason@fusionio.com>
Wed, 6 Feb 2013 17:06:02 +0000 (12:06 -0500)
committerChris Mason <chris.mason@fusionio.com>
Wed, 6 Feb 2013 17:11:10 +0000 (12:11 -0500)
commitb79becc4135d31cc8ca0e33f33de77d32548f149
treebda896534a46bf159e725379236509e2def0e52a
parent56123759087a226e1461e1a140962c604af73767
Btrfs: move d_instantiate outside the transaction during mksubvol

Dave Sterba triggered a lockdep complaint about lock ordering
between the sb_internal lock and the cleaner semaphore.

btrfs_lookup_dentry() checks for orphans if we're looking up
the inode for a subvolume, and subvolume creation is triggering
the lookup with a transaction running.

This commit moves the d_instantiate after the transaction closes.

Signed-off-by: Chris Mason <chris.mason@fusionio.com>
fs/btrfs/ioctl.c