diff options
author | Anton Altaparmakov <aia21@cantab.net> | 2005-09-23 11:24:28 +0100 |
---|---|---|
committer | Anton Altaparmakov <aia21@cantab.net> | 2005-09-23 11:24:28 +0100 |
commit | 715dc636b64b57aee7aee7e8b5bf4f5267a6df48 (patch) | |
tree | 967c70011391cb38e232015902189623eb9c5193 /fs/ntfs/mft.c | |
parent | 91fbc6edfa7086b5fcdb74ea82ab747104541f1f (diff) | |
download | op-kernel-dev-715dc636b64b57aee7aee7e8b5bf4f5267a6df48.zip op-kernel-dev-715dc636b64b57aee7aee7e8b5bf4f5267a6df48.tar.gz |
NTFS: Change ntfs_cluster_free() to require a write locked runlist on entry
since we otherwise get into a lock reversal deadlock if a read locked
runlist is passed in. In the process also change it to take an ntfs
inode instead of a vfs inode as parameter.
Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
Diffstat (limited to 'fs/ntfs/mft.c')
-rw-r--r-- | fs/ntfs/mft.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/ntfs/mft.c b/fs/ntfs/mft.c index 2c32b84..247586d 100644 --- a/fs/ntfs/mft.c +++ b/fs/ntfs/mft.c @@ -1953,7 +1953,7 @@ restore_undo_alloc: a = ctx->attr; a->data.non_resident.highest_vcn = cpu_to_sle64(old_last_vcn - 1); undo_alloc: - if (ntfs_cluster_free(vol->mft_ino, old_last_vcn, -1, TRUE) < 0) { + if (ntfs_cluster_free(mft_ni, old_last_vcn, -1) < 0) { ntfs_error(vol->sb, "Failed to free clusters from mft data " "attribute.%s", es); NVolSetErrors(vol); |