diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2016-01-22 15:40:57 -0500 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2016-01-22 18:04:28 -0500 |
commit | 5955102c9984fa081b2d570cfac75c97eecf8f3b (patch) | |
tree | a4744386eac4b916e847eb4eedfada158f6527b4 /fs/udf/file.c | |
parent | 57b8f112cfe6622ddddb8c2641206bb5fa8a112d (diff) |
wrappers for ->i_mutex access
parallel to mutex_{lock,unlock,trylock,is_locked,lock_nested},
inode_foo(inode) being mutex_foo(&inode->i_mutex).
Please, use those for access to ->i_mutex; over the coming cycle
->i_mutex will become rwsem, with ->lookup() done with it held
only shared.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/udf/file.c')
-rw-r--r-- | fs/udf/file.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/fs/udf/file.c b/fs/udf/file.c index bddf3d071dae..1af98963d860 100644 --- a/fs/udf/file.c +++ b/fs/udf/file.c | |||
@@ -122,7 +122,7 @@ static ssize_t udf_file_write_iter(struct kiocb *iocb, struct iov_iter *from) | |||
122 | struct udf_inode_info *iinfo = UDF_I(inode); | 122 | struct udf_inode_info *iinfo = UDF_I(inode); |
123 | int err; | 123 | int err; |
124 | 124 | ||
125 | mutex_lock(&inode->i_mutex); | 125 | inode_lock(inode); |
126 | 126 | ||
127 | retval = generic_write_checks(iocb, from); | 127 | retval = generic_write_checks(iocb, from); |
128 | if (retval <= 0) | 128 | if (retval <= 0) |
@@ -136,7 +136,7 @@ static ssize_t udf_file_write_iter(struct kiocb *iocb, struct iov_iter *from) | |||
136 | (udf_file_entry_alloc_offset(inode) + end)) { | 136 | (udf_file_entry_alloc_offset(inode) + end)) { |
137 | err = udf_expand_file_adinicb(inode); | 137 | err = udf_expand_file_adinicb(inode); |
138 | if (err) { | 138 | if (err) { |
139 | mutex_unlock(&inode->i_mutex); | 139 | inode_unlock(inode); |
140 | udf_debug("udf_expand_adinicb: err=%d\n", err); | 140 | udf_debug("udf_expand_adinicb: err=%d\n", err); |
141 | return err; | 141 | return err; |
142 | } | 142 | } |
@@ -149,7 +149,7 @@ static ssize_t udf_file_write_iter(struct kiocb *iocb, struct iov_iter *from) | |||
149 | 149 | ||
150 | retval = __generic_file_write_iter(iocb, from); | 150 | retval = __generic_file_write_iter(iocb, from); |
151 | out: | 151 | out: |
152 | mutex_unlock(&inode->i_mutex); | 152 | inode_unlock(inode); |
153 | 153 | ||
154 | if (retval > 0) { | 154 | if (retval > 0) { |
155 | mark_inode_dirty(inode); | 155 | mark_inode_dirty(inode); |
@@ -223,12 +223,12 @@ static int udf_release_file(struct inode *inode, struct file *filp) | |||
223 | * Grab i_mutex to avoid races with writes changing i_size | 223 | * Grab i_mutex to avoid races with writes changing i_size |
224 | * while we are running. | 224 | * while we are running. |
225 | */ | 225 | */ |
226 | mutex_lock(&inode->i_mutex); | 226 | inode_lock(inode); |
227 | down_write(&UDF_I(inode)->i_data_sem); | 227 | down_write(&UDF_I(inode)->i_data_sem); |
228 | udf_discard_prealloc(inode); | 228 | udf_discard_prealloc(inode); |
229 | udf_truncate_tail_extent(inode); | 229 | udf_truncate_tail_extent(inode); |
230 | up_write(&UDF_I(inode)->i_data_sem); | 230 | up_write(&UDF_I(inode)->i_data_sem); |
231 | mutex_unlock(&inode->i_mutex); | 231 | inode_unlock(inode); |
232 | } | 232 | } |
233 | return 0; | 233 | return 0; |
234 | } | 234 | } |