]> 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)
commit5ed5c0c59ae585c1b169ef7a01d8b9153ff1769b
treebda896534a46bf159e725379236509e2def0e52a
parent9b626e46f5d394add4cc8870929a095fc23b9260
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