diff options
author | Sage Weil <sage@newdream.net> | 2010-10-29 21:37:33 +0200 |
---|---|---|
committer | Chris Mason <chris.mason@oracle.com> | 2010-10-29 21:37:33 +0200 |
commit | fccdae435c1b295cca546f23f6f43126a28ffac3 (patch) | |
tree | e5c84325114cd554c62e7e275e85596200b45d19 /fs/btrfs/ioctl.c | |
parent | Btrfs: fix clone ioctl where range is adjacent to extent (diff) | |
download | linux-fccdae435c1b295cca546f23f6f43126a28ffac3.tar.xz linux-fccdae435c1b295cca546f23f6f43126a28ffac3.zip |
Btrfs: fix lockdep warning on clone ioctl
I'm no lockdep expert, but this appears to make the lockdep warning go
away for the i_mutex locking in the clone ioctl.
Signed-off-by: Sage Weil <sage@newdream.net>
Signed-off-by: Chris Mason <chris.mason@oracle.com>
Diffstat (limited to '')
-rw-r--r-- | fs/btrfs/ioctl.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c index 3fe15e435b5c..93d69b32028e 100644 --- a/fs/btrfs/ioctl.c +++ b/fs/btrfs/ioctl.c @@ -1492,11 +1492,11 @@ static noinline long btrfs_ioctl_clone(struct file *file, unsigned long srcfd, path->reada = 2; if (inode < src) { - mutex_lock(&inode->i_mutex); - mutex_lock(&src->i_mutex); + mutex_lock_nested(&inode->i_mutex, I_MUTEX_PARENT); + mutex_lock_nested(&src->i_mutex, I_MUTEX_CHILD); } else { - mutex_lock(&src->i_mutex); - mutex_lock(&inode->i_mutex); + mutex_lock_nested(&src->i_mutex, I_MUTEX_PARENT); + mutex_lock_nested(&inode->i_mutex, I_MUTEX_CHILD); } /* determine range to clone */ |