Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

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>

Al Viro 5955102c 57b8f112

+908 -883
+2 -2
arch/powerpc/platforms/cell/spufs/file.c
··· 1799 1799 struct inode *inode = file_inode(file); 1800 1800 int err = filemap_write_and_wait_range(inode->i_mapping, start, end); 1801 1801 if (!err) { 1802 - mutex_lock(&inode->i_mutex); 1802 + inode_lock(inode); 1803 1803 err = spufs_mfc_flush(file, NULL); 1804 - mutex_unlock(&inode->i_mutex); 1804 + inode_unlock(inode); 1805 1805 } 1806 1806 return err; 1807 1807 }
+6 -6
arch/powerpc/platforms/cell/spufs/inode.c
··· 163 163 { 164 164 struct dentry *dentry, *tmp; 165 165 166 - mutex_lock(&d_inode(dir)->i_mutex); 166 + inode_lock(d_inode(dir)); 167 167 list_for_each_entry_safe(dentry, tmp, &dir->d_subdirs, d_child) { 168 168 spin_lock(&dentry->d_lock); 169 169 if (simple_positive(dentry)) { ··· 180 180 } 181 181 } 182 182 shrink_dcache_parent(dir); 183 - mutex_unlock(&d_inode(dir)->i_mutex); 183 + inode_unlock(d_inode(dir)); 184 184 } 185 185 186 186 /* Caller must hold parent->i_mutex */ ··· 225 225 parent = d_inode(dir->d_parent); 226 226 ctx = SPUFS_I(d_inode(dir))->i_ctx; 227 227 228 - mutex_lock_nested(&parent->i_mutex, I_MUTEX_PARENT); 228 + inode_lock_nested(parent, I_MUTEX_PARENT); 229 229 ret = spufs_rmdir(parent, dir); 230 - mutex_unlock(&parent->i_mutex); 230 + inode_unlock(parent); 231 231 WARN_ON(ret); 232 232 233 233 return dcache_dir_close(inode, file); ··· 270 270 inode->i_op = &simple_dir_inode_operations; 271 271 inode->i_fop = &simple_dir_operations; 272 272 273 - mutex_lock(&inode->i_mutex); 273 + inode_lock(inode); 274 274 275 275 dget(dentry); 276 276 inc_nlink(dir); ··· 291 291 if (ret) 292 292 spufs_rmdir(dir, dentry); 293 293 294 - mutex_unlock(&inode->i_mutex); 294 + inode_unlock(inode); 295 295 296 296 return ret; 297 297 }
+4 -4
arch/s390/hypfs/inode.c
··· 67 67 struct dentry *parent; 68 68 69 69 parent = dentry->d_parent; 70 - mutex_lock(&d_inode(parent)->i_mutex); 70 + inode_lock(d_inode(parent)); 71 71 if (simple_positive(dentry)) { 72 72 if (d_is_dir(dentry)) 73 73 simple_rmdir(d_inode(parent), dentry); ··· 76 76 } 77 77 d_delete(dentry); 78 78 dput(dentry); 79 - mutex_unlock(&d_inode(parent)->i_mutex); 79 + inode_unlock(d_inode(parent)); 80 80 } 81 81 82 82 static void hypfs_delete_tree(struct dentry *root) ··· 331 331 struct dentry *dentry; 332 332 struct inode *inode; 333 333 334 - mutex_lock(&d_inode(parent)->i_mutex); 334 + inode_lock(d_inode(parent)); 335 335 dentry = lookup_one_len(name, parent, strlen(name)); 336 336 if (IS_ERR(dentry)) { 337 337 dentry = ERR_PTR(-ENOMEM); ··· 359 359 d_instantiate(dentry, inode); 360 360 dget(dentry); 361 361 fail: 362 - mutex_unlock(&d_inode(parent)->i_mutex); 362 + inode_unlock(d_inode(parent)); 363 363 return dentry; 364 364 } 365 365
+2 -2
block/ioctl.c
··· 455 455 if (arg && !blkdev_dax_capable(bdev)) 456 456 return -ENOTTY; 457 457 458 - mutex_lock(&bdev->bd_inode->i_mutex); 458 + inode_lock(bdev->bd_inode); 459 459 if (bdev->bd_map_count == 0) 460 460 inode_set_flags(bdev->bd_inode, arg, S_DAX); 461 461 else 462 462 rc = -EBUSY; 463 - mutex_unlock(&bdev->bd_inode->i_mutex); 463 + inode_unlock(bdev->bd_inode); 464 464 return rc; 465 465 } 466 466 #else
+6 -6
drivers/base/devtmpfs.c
··· 215 215 newattrs.ia_uid = uid; 216 216 newattrs.ia_gid = gid; 217 217 newattrs.ia_valid = ATTR_MODE|ATTR_UID|ATTR_GID; 218 - mutex_lock(&d_inode(dentry)->i_mutex); 218 + inode_lock(d_inode(dentry)); 219 219 notify_change(dentry, &newattrs, NULL); 220 - mutex_unlock(&d_inode(dentry)->i_mutex); 220 + inode_unlock(d_inode(dentry)); 221 221 222 222 /* mark as kernel-created inode */ 223 223 d_inode(dentry)->i_private = &thread; ··· 244 244 err = -ENOENT; 245 245 } 246 246 dput(dentry); 247 - mutex_unlock(&d_inode(parent.dentry)->i_mutex); 247 + inode_unlock(d_inode(parent.dentry)); 248 248 path_put(&parent); 249 249 return err; 250 250 } ··· 321 321 newattrs.ia_mode = stat.mode & ~0777; 322 322 newattrs.ia_valid = 323 323 ATTR_UID|ATTR_GID|ATTR_MODE; 324 - mutex_lock(&d_inode(dentry)->i_mutex); 324 + inode_lock(d_inode(dentry)); 325 325 notify_change(dentry, &newattrs, NULL); 326 - mutex_unlock(&d_inode(dentry)->i_mutex); 326 + inode_unlock(d_inode(dentry)); 327 327 err = vfs_unlink(d_inode(parent.dentry), dentry, NULL); 328 328 if (!err || err == -ENOENT) 329 329 deleted = 1; ··· 332 332 err = -ENOENT; 333 333 } 334 334 dput(dentry); 335 - mutex_unlock(&d_inode(parent.dentry)->i_mutex); 335 + inode_unlock(d_inode(parent.dentry)); 336 336 337 337 path_put(&parent); 338 338 if (deleted && strchr(nodename, '/'))
+2 -2
drivers/block/aoe/aoecmd.c
··· 964 964 ssize = get_capacity(d->gd); 965 965 bd = bdget_disk(d->gd, 0); 966 966 if (bd) { 967 - mutex_lock(&bd->bd_inode->i_mutex); 967 + inode_lock(bd->bd_inode); 968 968 i_size_write(bd->bd_inode, (loff_t)ssize<<9); 969 - mutex_unlock(&bd->bd_inode->i_mutex); 969 + inode_unlock(bd->bd_inode); 970 970 bdput(bd); 971 971 } 972 972 spin_lock_irq(&d->lock);
+2 -2
drivers/block/drbd/drbd_debugfs.c
··· 434 434 if (!parent || d_really_is_negative(parent)) 435 435 goto out; 436 436 /* serialize with d_delete() */ 437 - mutex_lock(&d_inode(parent)->i_mutex); 437 + inode_lock(d_inode(parent)); 438 438 /* Make sure the object is still alive */ 439 439 if (simple_positive(file->f_path.dentry) 440 440 && kref_get_unless_zero(kref)) 441 441 ret = 0; 442 - mutex_unlock(&d_inode(parent)->i_mutex); 442 + inode_unlock(d_inode(parent)); 443 443 if (!ret) { 444 444 ret = single_open(file, show, data); 445 445 if (ret)
+2 -2
drivers/char/mem.c
··· 689 689 { 690 690 loff_t ret; 691 691 692 - mutex_lock(&file_inode(file)->i_mutex); 692 + inode_lock(file_inode(file)); 693 693 switch (orig) { 694 694 case SEEK_CUR: 695 695 offset += file->f_pos; ··· 706 706 default: 707 707 ret = -EINVAL; 708 708 } 709 - mutex_unlock(&file_inode(file)->i_mutex); 709 + inode_unlock(file_inode(file)); 710 710 return ret; 711 711 } 712 712
+2 -2
drivers/char/ps3flash.c
··· 290 290 { 291 291 struct inode *inode = file_inode(file); 292 292 int err; 293 - mutex_lock(&inode->i_mutex); 293 + inode_lock(inode); 294 294 err = ps3flash_writeback(ps3flash_dev); 295 - mutex_unlock(&inode->i_mutex); 295 + inode_unlock(inode); 296 296 return err; 297 297 } 298 298
+6 -6
drivers/infiniband/hw/qib/qib_fs.c
··· 89 89 { 90 90 int error; 91 91 92 - mutex_lock(&d_inode(parent)->i_mutex); 92 + inode_lock(d_inode(parent)); 93 93 *dentry = lookup_one_len(name, parent, strlen(name)); 94 94 if (!IS_ERR(*dentry)) 95 95 error = qibfs_mknod(d_inode(parent), *dentry, 96 96 mode, fops, data); 97 97 else 98 98 error = PTR_ERR(*dentry); 99 - mutex_unlock(&d_inode(parent)->i_mutex); 99 + inode_unlock(d_inode(parent)); 100 100 101 101 return error; 102 102 } ··· 481 481 int ret, i; 482 482 483 483 root = dget(sb->s_root); 484 - mutex_lock(&d_inode(root)->i_mutex); 484 + inode_lock(d_inode(root)); 485 485 snprintf(unit, sizeof(unit), "%u", dd->unit); 486 486 dir = lookup_one_len(unit, root, strlen(unit)); 487 487 ··· 491 491 goto bail; 492 492 } 493 493 494 - mutex_lock(&d_inode(dir)->i_mutex); 494 + inode_lock(d_inode(dir)); 495 495 remove_file(dir, "counters"); 496 496 remove_file(dir, "counter_names"); 497 497 remove_file(dir, "portcounter_names"); ··· 506 506 } 507 507 } 508 508 remove_file(dir, "flash"); 509 - mutex_unlock(&d_inode(dir)->i_mutex); 509 + inode_unlock(d_inode(dir)); 510 510 ret = simple_rmdir(d_inode(root), dir); 511 511 d_delete(dir); 512 512 dput(dir); 513 513 514 514 bail: 515 - mutex_unlock(&d_inode(root)->i_mutex); 515 + inode_unlock(d_inode(root)); 516 516 dput(root); 517 517 return ret; 518 518 }
+2 -2
drivers/mtd/ubi/cdev.c
··· 174 174 struct ubi_device *ubi = desc->vol->ubi; 175 175 struct inode *inode = file_inode(file); 176 176 int err; 177 - mutex_lock(&inode->i_mutex); 177 + inode_lock(inode); 178 178 err = ubi_sync(ubi->ubi_num); 179 - mutex_unlock(&inode->i_mutex); 179 + inode_unlock(inode); 180 180 return err; 181 181 } 182 182
+8 -8
drivers/oprofile/oprofilefs.c
··· 138 138 struct dentry *dentry; 139 139 struct inode *inode; 140 140 141 - mutex_lock(&d_inode(root)->i_mutex); 141 + inode_lock(d_inode(root)); 142 142 dentry = d_alloc_name(root, name); 143 143 if (!dentry) { 144 - mutex_unlock(&d_inode(root)->i_mutex); 144 + inode_unlock(d_inode(root)); 145 145 return -ENOMEM; 146 146 } 147 147 inode = oprofilefs_get_inode(root->d_sb, S_IFREG | perm); 148 148 if (!inode) { 149 149 dput(dentry); 150 - mutex_unlock(&d_inode(root)->i_mutex); 150 + inode_unlock(d_inode(root)); 151 151 return -ENOMEM; 152 152 } 153 153 inode->i_fop = fops; 154 154 inode->i_private = priv; 155 155 d_add(dentry, inode); 156 - mutex_unlock(&d_inode(root)->i_mutex); 156 + inode_unlock(d_inode(root)); 157 157 return 0; 158 158 } 159 159 ··· 215 215 struct dentry *dentry; 216 216 struct inode *inode; 217 217 218 - mutex_lock(&d_inode(parent)->i_mutex); 218 + inode_lock(d_inode(parent)); 219 219 dentry = d_alloc_name(parent, name); 220 220 if (!dentry) { 221 - mutex_unlock(&d_inode(parent)->i_mutex); 221 + inode_unlock(d_inode(parent)); 222 222 return NULL; 223 223 } 224 224 inode = oprofilefs_get_inode(parent->d_sb, S_IFDIR | 0755); 225 225 if (!inode) { 226 226 dput(dentry); 227 - mutex_unlock(&d_inode(parent)->i_mutex); 227 + inode_unlock(d_inode(parent)); 228 228 return NULL; 229 229 } 230 230 inode->i_op = &simple_dir_inode_operations; 231 231 inode->i_fop = &simple_dir_operations; 232 232 d_add(dentry, inode); 233 - mutex_unlock(&d_inode(parent)->i_mutex); 233 + inode_unlock(d_inode(parent)); 234 234 return dentry; 235 235 } 236 236
+2 -2
drivers/staging/lustre/lustre/llite/dir.c
··· 1858 1858 int api32 = ll_need_32bit_api(sbi); 1859 1859 loff_t ret = -EINVAL; 1860 1860 1861 - mutex_lock(&inode->i_mutex); 1861 + inode_lock(inode); 1862 1862 switch (origin) { 1863 1863 case SEEK_SET: 1864 1864 break; ··· 1896 1896 goto out; 1897 1897 1898 1898 out: 1899 - mutex_unlock(&inode->i_mutex); 1899 + inode_unlock(inode); 1900 1900 return ret; 1901 1901 } 1902 1902
+8 -8
drivers/staging/lustre/lustre/llite/file.c
··· 2082 2082 /* update time if requested */ 2083 2083 rc = 0; 2084 2084 if (llss->ia2.ia_valid != 0) { 2085 - mutex_lock(&llss->inode1->i_mutex); 2085 + inode_lock(llss->inode1); 2086 2086 rc = ll_setattr(file1->f_path.dentry, &llss->ia2); 2087 - mutex_unlock(&llss->inode1->i_mutex); 2087 + inode_unlock(llss->inode1); 2088 2088 } 2089 2089 2090 2090 if (llss->ia1.ia_valid != 0) { 2091 2091 int rc1; 2092 2092 2093 - mutex_lock(&llss->inode2->i_mutex); 2093 + inode_lock(llss->inode2); 2094 2094 rc1 = ll_setattr(file2->f_path.dentry, &llss->ia1); 2095 - mutex_unlock(&llss->inode2->i_mutex); 2095 + inode_unlock(llss->inode2); 2096 2096 if (rc == 0) 2097 2097 rc = rc1; 2098 2098 } ··· 2179 2179 ATTR_MTIME | ATTR_MTIME_SET | 2180 2180 ATTR_ATIME | ATTR_ATIME_SET; 2181 2181 2182 - mutex_lock(&inode->i_mutex); 2182 + inode_lock(inode); 2183 2183 2184 2184 rc = ll_setattr_raw(file->f_path.dentry, attr, true); 2185 2185 if (rc == -ENODATA) 2186 2186 rc = 0; 2187 2187 2188 - mutex_unlock(&inode->i_mutex); 2188 + inode_unlock(inode); 2189 2189 2190 2190 kfree(attr); 2191 2191 free_hss: ··· 2609 2609 ll_stats_ops_tally(ll_i2sbi(inode), LPROC_LL_FSYNC, 1); 2610 2610 2611 2611 rc = filemap_write_and_wait_range(inode->i_mapping, start, end); 2612 - mutex_lock(&inode->i_mutex); 2612 + inode_lock(inode); 2613 2613 2614 2614 /* catch async errors that were recorded back when async writeback 2615 2615 * failed for pages in this mapping. */ ··· 2641 2641 fd->fd_write_failed = false; 2642 2642 } 2643 2643 2644 - mutex_unlock(&inode->i_mutex); 2644 + inode_unlock(inode); 2645 2645 return rc; 2646 2646 } 2647 2647
+2 -2
drivers/staging/lustre/lustre/llite/llite_lib.c
··· 1277 1277 return -ENOMEM; 1278 1278 1279 1279 if (!S_ISDIR(inode->i_mode)) 1280 - mutex_unlock(&inode->i_mutex); 1280 + inode_unlock(inode); 1281 1281 1282 1282 memcpy(&op_data->op_attr, attr, sizeof(*attr)); 1283 1283 ··· 1358 1358 ll_finish_md_op_data(op_data); 1359 1359 1360 1360 if (!S_ISDIR(inode->i_mode)) { 1361 - mutex_lock(&inode->i_mutex); 1361 + inode_lock(inode); 1362 1362 if ((attr->ia_valid & ATTR_SIZE) && !hsm_import) 1363 1363 inode_dio_wait(inode); 1364 1364 }
+2 -2
drivers/staging/lustre/lustre/llite/llite_nfs.c
··· 245 245 goto out; 246 246 } 247 247 248 - mutex_lock(&dir->i_mutex); 248 + inode_lock(dir); 249 249 rc = ll_dir_read(dir, &lgd.ctx); 250 - mutex_unlock(&dir->i_mutex); 250 + inode_unlock(dir); 251 251 if (!rc && !lgd.lgd_found) 252 252 rc = -ENOENT; 253 253 out:
+2 -2
drivers/staging/lustre/lustre/llite/lloop.c
··· 257 257 * be asked to write less pages once, this purely depends on 258 258 * implementation. Anyway, we should be careful to avoid deadlocking. 259 259 */ 260 - mutex_lock(&inode->i_mutex); 260 + inode_lock(inode); 261 261 bytes = ll_direct_rw_pages(env, io, rw, inode, pvec); 262 - mutex_unlock(&inode->i_mutex); 262 + inode_unlock(inode); 263 263 cl_io_fini(env, io); 264 264 return (bytes == pvec->ldp_size) ? 0 : (int)bytes; 265 265 }
+2 -2
drivers/staging/lustre/lustre/llite/rw.c
··· 115 115 struct inode *inode = vmpage->mapping->host; 116 116 loff_t pos; 117 117 118 - if (mutex_trylock(&inode->i_mutex)) { 119 - mutex_unlock(&(inode)->i_mutex); 118 + if (inode_trylock(inode)) { 119 + inode_unlock((inode)); 120 120 121 121 /* this is too bad. Someone is trying to write the 122 122 * page w/o holding inode mutex. This means we can
+2 -2
drivers/staging/lustre/lustre/llite/rw26.c
··· 403 403 * 1. Need inode mutex to operate transient pages. 404 404 */ 405 405 if (iov_iter_rw(iter) == READ) 406 - mutex_lock(&inode->i_mutex); 406 + inode_lock(inode); 407 407 408 408 LASSERT(obj->cob_transient_pages == 0); 409 409 while (iov_iter_count(iter)) { ··· 454 454 out: 455 455 LASSERT(obj->cob_transient_pages == 0); 456 456 if (iov_iter_rw(iter) == READ) 457 - mutex_unlock(&inode->i_mutex); 457 + inode_unlock(inode); 458 458 459 459 if (tot_bytes > 0) { 460 460 if (iov_iter_rw(iter) == WRITE) {
+2 -2
drivers/staging/lustre/lustre/llite/vvp_io.c
··· 439 439 struct inode *inode = ccc_object_inode(io->ci_obj); 440 440 int result = 0; 441 441 442 - mutex_lock(&inode->i_mutex); 442 + inode_lock(inode); 443 443 if (cl_io_is_trunc(io)) 444 444 result = vvp_io_setattr_trunc(env, ios, inode, 445 445 io->u.ci_setattr.sa_attr.lvb_size); ··· 459 459 * because osc has already notified to destroy osc_extents. */ 460 460 vvp_do_vmtruncate(inode, io->u.ci_setattr.sa_attr.lvb_size); 461 461 462 - mutex_unlock(&inode->i_mutex); 462 + inode_unlock(inode); 463 463 } 464 464 465 465 static void vvp_io_setattr_fini(const struct lu_env *env,
+5 -5
drivers/staging/lustre/lustre/llite/vvp_page.c
··· 428 428 { 429 429 struct inode *inode = ccc_object_inode(page->cp_obj); 430 430 431 - LASSERT(!mutex_trylock(&inode->i_mutex)); 431 + LASSERT(!inode_trylock(inode)); 432 432 } 433 433 434 434 static int vvp_transient_page_own(const struct lu_env *env, ··· 480 480 struct inode *inode = ccc_object_inode(slice->cpl_obj); 481 481 int locked; 482 482 483 - locked = !mutex_trylock(&inode->i_mutex); 483 + locked = !inode_trylock(inode); 484 484 if (!locked) 485 - mutex_unlock(&inode->i_mutex); 485 + inode_unlock(inode); 486 486 return locked ? -EBUSY : -ENODATA; 487 487 } 488 488 ··· 502 502 struct ccc_object *clobj = cl2ccc(clp->cp_obj); 503 503 504 504 vvp_page_fini_common(cp); 505 - LASSERT(!mutex_trylock(&clobj->cob_inode->i_mutex)); 505 + LASSERT(!inode_trylock(clobj->cob_inode)); 506 506 clobj->cob_transient_pages--; 507 507 } 508 508 ··· 548 548 } else { 549 549 struct ccc_object *clobj = cl2ccc(obj); 550 550 551 - LASSERT(!mutex_trylock(&clobj->cob_inode->i_mutex)); 551 + LASSERT(!inode_trylock(clobj->cob_inode)); 552 552 cl_page_slice_add(page, &cpg->cpg_cl, obj, 553 553 &vvp_transient_page_ops); 554 554 clobj->cob_transient_pages++;
+4 -4
drivers/staging/rdma/ipath/ipath_fs.c
··· 82 82 { 83 83 int error; 84 84 85 - mutex_lock(&d_inode(parent)->i_mutex); 85 + inode_lock(d_inode(parent)); 86 86 *dentry = lookup_one_len(name, parent, strlen(name)); 87 87 if (!IS_ERR(*dentry)) 88 88 error = ipathfs_mknod(d_inode(parent), *dentry, 89 89 mode, fops, data); 90 90 else 91 91 error = PTR_ERR(*dentry); 92 - mutex_unlock(&d_inode(parent)->i_mutex); 92 + inode_unlock(d_inode(parent)); 93 93 94 94 return error; 95 95 } ··· 295 295 int ret; 296 296 297 297 root = dget(sb->s_root); 298 - mutex_lock(&d_inode(root)->i_mutex); 298 + inode_lock(d_inode(root)); 299 299 snprintf(unit, sizeof unit, "%02d", dd->ipath_unit); 300 300 dir = lookup_one_len(unit, root, strlen(unit)); 301 301 ··· 311 311 ret = simple_rmdir(d_inode(root), dir); 312 312 313 313 bail: 314 - mutex_unlock(&d_inode(root)->i_mutex); 314 + inode_unlock(d_inode(root)); 315 315 dput(root); 316 316 return ret; 317 317 }
+2 -2
drivers/usb/gadget/function/f_printer.c
··· 673 673 unsigned long flags; 674 674 int tx_list_empty; 675 675 676 - mutex_lock(&inode->i_mutex); 676 + inode_lock(inode); 677 677 spin_lock_irqsave(&dev->lock, flags); 678 678 tx_list_empty = (likely(list_empty(&dev->tx_reqs))); 679 679 spin_unlock_irqrestore(&dev->lock, flags); ··· 683 683 wait_event_interruptible(dev->tx_flush_wait, 684 684 (likely(list_empty(&dev->tx_reqs_active)))); 685 685 } 686 - mutex_unlock(&inode->i_mutex); 686 + inode_unlock(inode); 687 687 688 688 return 0; 689 689 }
+2 -2
drivers/usb/gadget/legacy/inode.c
··· 1521 1521 spin_unlock_irq (&dev->lock); 1522 1522 1523 1523 /* break link to dcache */ 1524 - mutex_lock (&parent->i_mutex); 1524 + inode_lock(parent); 1525 1525 d_delete (dentry); 1526 1526 dput (dentry); 1527 - mutex_unlock (&parent->i_mutex); 1527 + inode_unlock(parent); 1528 1528 1529 1529 spin_lock_irq (&dev->lock); 1530 1530 }
+6 -6
drivers/usb/gadget/udc/atmel_usba_udc.c
··· 91 91 if (!access_ok(VERIFY_WRITE, buf, nbytes)) 92 92 return -EFAULT; 93 93 94 - mutex_lock(&file_inode(file)->i_mutex); 94 + inode_lock(file_inode(file)); 95 95 list_for_each_entry_safe(req, tmp_req, queue, queue) { 96 96 len = snprintf(tmpbuf, sizeof(tmpbuf), 97 97 "%8p %08x %c%c%c %5d %c%c%c\n", ··· 118 118 nbytes -= len; 119 119 buf += len; 120 120 } 121 - mutex_unlock(&file_inode(file)->i_mutex); 121 + inode_unlock(file_inode(file)); 122 122 123 123 return actual; 124 124 } ··· 143 143 u32 *data; 144 144 int ret = -ENOMEM; 145 145 146 - mutex_lock(&inode->i_mutex); 146 + inode_lock(inode); 147 147 udc = inode->i_private; 148 148 data = kmalloc(inode->i_size, GFP_KERNEL); 149 149 if (!data) ··· 158 158 ret = 0; 159 159 160 160 out: 161 - mutex_unlock(&inode->i_mutex); 161 + inode_unlock(inode); 162 162 163 163 return ret; 164 164 } ··· 169 169 struct inode *inode = file_inode(file); 170 170 int ret; 171 171 172 - mutex_lock(&inode->i_mutex); 172 + inode_lock(inode); 173 173 ret = simple_read_from_buffer(buf, nbytes, ppos, 174 174 file->private_data, 175 175 file_inode(file)->i_size); 176 - mutex_unlock(&inode->i_mutex); 176 + inode_unlock(inode); 177 177 178 178 return ret; 179 179 }
+2 -2
drivers/video/fbdev/core/fb_defio.c
··· 78 78 if (!info->fbdefio) 79 79 return 0; 80 80 81 - mutex_lock(&inode->i_mutex); 81 + inode_lock(inode); 82 82 /* Kill off the delayed work */ 83 83 cancel_delayed_work_sync(&info->deferred_work); 84 84 85 85 /* Run it immediately */ 86 86 schedule_delayed_work(&info->deferred_work, 0); 87 - mutex_unlock(&inode->i_mutex); 87 + inode_unlock(inode); 88 88 89 89 return 0; 90 90 }
+4 -4
fs/9p/vfs_file.c
··· 449 449 if (retval) 450 450 return retval; 451 451 452 - mutex_lock(&inode->i_mutex); 452 + inode_lock(inode); 453 453 p9_debug(P9_DEBUG_VFS, "filp %p datasync %x\n", filp, datasync); 454 454 455 455 fid = filp->private_data; 456 456 v9fs_blank_wstat(&wstat); 457 457 458 458 retval = p9_client_wstat(fid, &wstat); 459 - mutex_unlock(&inode->i_mutex); 459 + inode_unlock(inode); 460 460 461 461 return retval; 462 462 } ··· 472 472 if (retval) 473 473 return retval; 474 474 475 - mutex_lock(&inode->i_mutex); 475 + inode_lock(inode); 476 476 p9_debug(P9_DEBUG_VFS, "filp %p datasync %x\n", filp, datasync); 477 477 478 478 fid = filp->private_data; 479 479 480 480 retval = p9_client_fsync(fid, datasync); 481 - mutex_unlock(&inode->i_mutex); 481 + inode_unlock(inode); 482 482 483 483 return retval; 484 484 }
+4 -4
fs/affs/file.c
··· 33 33 inode->i_ino, atomic_read(&AFFS_I(inode)->i_opencnt)); 34 34 35 35 if (atomic_dec_and_test(&AFFS_I(inode)->i_opencnt)) { 36 - mutex_lock(&inode->i_mutex); 36 + inode_lock(inode); 37 37 if (inode->i_size != AFFS_I(inode)->mmu_private) 38 38 affs_truncate(inode); 39 39 affs_free_prealloc(inode); 40 - mutex_unlock(&inode->i_mutex); 40 + inode_unlock(inode); 41 41 } 42 42 43 43 return 0; ··· 958 958 if (err) 959 959 return err; 960 960 961 - mutex_lock(&inode->i_mutex); 961 + inode_lock(inode); 962 962 ret = write_inode_now(inode, 0); 963 963 err = sync_blockdev(inode->i_sb->s_bdev); 964 964 if (!ret) 965 965 ret = err; 966 - mutex_unlock(&inode->i_mutex); 966 + inode_unlock(inode); 967 967 return ret; 968 968 } 969 969 const struct file_operations affs_file_operations = {
+2 -2
fs/afs/flock.c
··· 483 483 484 484 fl->fl_type = F_UNLCK; 485 485 486 - mutex_lock(&vnode->vfs_inode.i_mutex); 486 + inode_lock(&vnode->vfs_inode); 487 487 488 488 /* check local lock records first */ 489 489 ret = 0; ··· 505 505 } 506 506 507 507 error: 508 - mutex_unlock(&vnode->vfs_inode.i_mutex); 508 + inode_unlock(&vnode->vfs_inode); 509 509 _leave(" = %d [%hd]", ret, fl->fl_type); 510 510 return ret; 511 511 }
+2 -2
fs/afs/write.c
··· 693 693 ret = filemap_write_and_wait_range(inode->i_mapping, start, end); 694 694 if (ret) 695 695 return ret; 696 - mutex_lock(&inode->i_mutex); 696 + inode_lock(inode); 697 697 698 698 /* use a writeback record as a marker in the queue - when this reaches 699 699 * the front of the queue, all the outstanding writes are either ··· 735 735 afs_put_writeback(wb); 736 736 _leave(" = %d", ret); 737 737 out: 738 - mutex_unlock(&inode->i_mutex); 738 + inode_unlock(inode); 739 739 return ret; 740 740 } 741 741
+1 -1
fs/attr.c
··· 195 195 struct timespec now; 196 196 unsigned int ia_valid = attr->ia_valid; 197 197 198 - WARN_ON_ONCE(!mutex_is_locked(&inode->i_mutex)); 198 + WARN_ON_ONCE(!inode_is_locked(inode)); 199 199 200 200 if (ia_valid & (ATTR_MODE | ATTR_UID | ATTR_GID | ATTR_TIMES_SET)) { 201 201 if (IS_IMMUTABLE(inode) || IS_APPEND(inode))
+6 -6
fs/binfmt_misc.c
··· 638 638 case 3: 639 639 /* Delete this handler. */ 640 640 root = dget(file->f_path.dentry->d_sb->s_root); 641 - mutex_lock(&d_inode(root)->i_mutex); 641 + inode_lock(d_inode(root)); 642 642 643 643 kill_node(e); 644 644 645 - mutex_unlock(&d_inode(root)->i_mutex); 645 + inode_unlock(d_inode(root)); 646 646 dput(root); 647 647 break; 648 648 default: ··· 675 675 return PTR_ERR(e); 676 676 677 677 root = dget(sb->s_root); 678 - mutex_lock(&d_inode(root)->i_mutex); 678 + inode_lock(d_inode(root)); 679 679 dentry = lookup_one_len(e->name, root, strlen(e->name)); 680 680 err = PTR_ERR(dentry); 681 681 if (IS_ERR(dentry)) ··· 711 711 out2: 712 712 dput(dentry); 713 713 out: 714 - mutex_unlock(&d_inode(root)->i_mutex); 714 + inode_unlock(d_inode(root)); 715 715 dput(root); 716 716 717 717 if (err) { ··· 754 754 case 3: 755 755 /* Delete all handlers. */ 756 756 root = dget(file->f_path.dentry->d_sb->s_root); 757 - mutex_lock(&d_inode(root)->i_mutex); 757 + inode_lock(d_inode(root)); 758 758 759 759 while (!list_empty(&entries)) 760 760 kill_node(list_entry(entries.next, Node, list)); 761 761 762 - mutex_unlock(&d_inode(root)->i_mutex); 762 + inode_unlock(d_inode(root)); 763 763 dput(root); 764 764 break; 765 765 default:
+10 -10
fs/block_dev.c
··· 346 346 struct inode *bd_inode = bdev_file_inode(file); 347 347 loff_t retval; 348 348 349 - mutex_lock(&bd_inode->i_mutex); 349 + inode_lock(bd_inode); 350 350 retval = fixed_size_llseek(file, offset, whence, i_size_read(bd_inode)); 351 - mutex_unlock(&bd_inode->i_mutex); 351 + inode_unlock(bd_inode); 352 352 return retval; 353 353 } 354 354 ··· 1142 1142 { 1143 1143 unsigned bsize = bdev_logical_block_size(bdev); 1144 1144 1145 - mutex_lock(&bdev->bd_inode->i_mutex); 1145 + inode_lock(bdev->bd_inode); 1146 1146 i_size_write(bdev->bd_inode, size); 1147 - mutex_unlock(&bdev->bd_inode->i_mutex); 1147 + inode_unlock(bdev->bd_inode); 1148 1148 while (bsize < PAGE_CACHE_SIZE) { 1149 1149 if (size & bsize) 1150 1150 break; ··· 1741 1741 struct inode *bd_inode = bdev_file_inode(vma->vm_file); 1742 1742 struct block_device *bdev = I_BDEV(bd_inode); 1743 1743 1744 - mutex_lock(&bd_inode->i_mutex); 1744 + inode_lock(bd_inode); 1745 1745 bdev->bd_map_count++; 1746 - mutex_unlock(&bd_inode->i_mutex); 1746 + inode_unlock(bd_inode); 1747 1747 } 1748 1748 1749 1749 static void blkdev_vm_close(struct vm_area_struct *vma) ··· 1751 1751 struct inode *bd_inode = bdev_file_inode(vma->vm_file); 1752 1752 struct block_device *bdev = I_BDEV(bd_inode); 1753 1753 1754 - mutex_lock(&bd_inode->i_mutex); 1754 + inode_lock(bd_inode); 1755 1755 bdev->bd_map_count--; 1756 - mutex_unlock(&bd_inode->i_mutex); 1756 + inode_unlock(bd_inode); 1757 1757 } 1758 1758 1759 1759 static const struct vm_operations_struct blkdev_dax_vm_ops = { ··· 1777 1777 struct block_device *bdev = I_BDEV(bd_inode); 1778 1778 1779 1779 file_accessed(file); 1780 - mutex_lock(&bd_inode->i_mutex); 1780 + inode_lock(bd_inode); 1781 1781 bdev->bd_map_count++; 1782 1782 if (IS_DAX(bd_inode)) { 1783 1783 vma->vm_ops = &blkdev_dax_vm_ops; ··· 1785 1785 } else { 1786 1786 vma->vm_ops = &blkdev_default_vm_ops; 1787 1787 } 1788 - mutex_unlock(&bd_inode->i_mutex); 1788 + inode_unlock(bd_inode); 1789 1789 1790 1790 return 0; 1791 1791 }
+21 -21
fs/btrfs/file.c
··· 1762 1762 loff_t pos; 1763 1763 size_t count; 1764 1764 1765 - mutex_lock(&inode->i_mutex); 1765 + inode_lock(inode); 1766 1766 err = generic_write_checks(iocb, from); 1767 1767 if (err <= 0) { 1768 - mutex_unlock(&inode->i_mutex); 1768 + inode_unlock(inode); 1769 1769 return err; 1770 1770 } 1771 1771 1772 1772 current->backing_dev_info = inode_to_bdi(inode); 1773 1773 err = file_remove_privs(file); 1774 1774 if (err) { 1775 - mutex_unlock(&inode->i_mutex); 1775 + inode_unlock(inode); 1776 1776 goto out; 1777 1777 } 1778 1778 ··· 1783 1783 * to stop this write operation to ensure FS consistency. 1784 1784 */ 1785 1785 if (test_bit(BTRFS_FS_STATE_ERROR, &root->fs_info->fs_state)) { 1786 - mutex_unlock(&inode->i_mutex); 1786 + inode_unlock(inode); 1787 1787 err = -EROFS; 1788 1788 goto out; 1789 1789 } ··· 1804 1804 end_pos = round_up(pos + count, root->sectorsize); 1805 1805 err = btrfs_cont_expand(inode, i_size_read(inode), end_pos); 1806 1806 if (err) { 1807 - mutex_unlock(&inode->i_mutex); 1807 + inode_unlock(inode); 1808 1808 goto out; 1809 1809 } 1810 1810 } ··· 1820 1820 iocb->ki_pos = pos + num_written; 1821 1821 } 1822 1822 1823 - mutex_unlock(&inode->i_mutex); 1823 + inode_unlock(inode); 1824 1824 1825 1825 /* 1826 1826 * We also have to set last_sub_trans to the current log transid, ··· 1909 1909 if (ret) 1910 1910 return ret; 1911 1911 1912 - mutex_lock(&inode->i_mutex); 1912 + inode_lock(inode); 1913 1913 atomic_inc(&root->log_batch); 1914 1914 full_sync = test_bit(BTRFS_INODE_NEEDS_FULL_SYNC, 1915 1915 &BTRFS_I(inode)->runtime_flags); ··· 1961 1961 ret = start_ordered_ops(inode, start, end); 1962 1962 } 1963 1963 if (ret) { 1964 - mutex_unlock(&inode->i_mutex); 1964 + inode_unlock(inode); 1965 1965 goto out; 1966 1966 } 1967 1967 atomic_inc(&root->log_batch); ··· 2007 2007 */ 2008 2008 clear_bit(BTRFS_INODE_NEEDS_FULL_SYNC, 2009 2009 &BTRFS_I(inode)->runtime_flags); 2010 - mutex_unlock(&inode->i_mutex); 2010 + inode_unlock(inode); 2011 2011 goto out; 2012 2012 } 2013 2013 ··· 2031 2031 trans = btrfs_start_transaction(root, 0); 2032 2032 if (IS_ERR(trans)) { 2033 2033 ret = PTR_ERR(trans); 2034 - mutex_unlock(&inode->i_mutex); 2034 + inode_unlock(inode); 2035 2035 goto out; 2036 2036 } 2037 2037 trans->sync = true; ··· 2054 2054 * file again, but that will end up using the synchronization 2055 2055 * inside btrfs_sync_log to keep things safe. 2056 2056 */ 2057 - mutex_unlock(&inode->i_mutex); 2057 + inode_unlock(inode); 2058 2058 2059 2059 /* 2060 2060 * If any of the ordered extents had an error, just return it to user ··· 2303 2303 if (ret) 2304 2304 return ret; 2305 2305 2306 - mutex_lock(&inode->i_mutex); 2306 + inode_lock(inode); 2307 2307 ino_size = round_up(inode->i_size, PAGE_CACHE_SIZE); 2308 2308 ret = find_first_non_hole(inode, &offset, &len); 2309 2309 if (ret < 0) ··· 2343 2343 truncated_page = true; 2344 2344 ret = btrfs_truncate_page(inode, offset, 0, 0); 2345 2345 if (ret) { 2346 - mutex_unlock(&inode->i_mutex); 2346 + inode_unlock(inode); 2347 2347 return ret; 2348 2348 } 2349 2349 } ··· 2419 2419 ret = btrfs_wait_ordered_range(inode, lockstart, 2420 2420 lockend - lockstart + 1); 2421 2421 if (ret) { 2422 - mutex_unlock(&inode->i_mutex); 2422 + inode_unlock(inode); 2423 2423 return ret; 2424 2424 } 2425 2425 } ··· 2574 2574 ret = btrfs_end_transaction(trans, root); 2575 2575 } 2576 2576 } 2577 - mutex_unlock(&inode->i_mutex); 2577 + inode_unlock(inode); 2578 2578 if (ret && !err) 2579 2579 err = ret; 2580 2580 return err; ··· 2658 2658 if (ret < 0) 2659 2659 return ret; 2660 2660 2661 - mutex_lock(&inode->i_mutex); 2661 + inode_lock(inode); 2662 2662 ret = inode_newsize_ok(inode, alloc_end); 2663 2663 if (ret) 2664 2664 goto out; ··· 2816 2816 * So this is completely used as cleanup. 2817 2817 */ 2818 2818 btrfs_qgroup_free_data(inode, alloc_start, alloc_end - alloc_start); 2819 - mutex_unlock(&inode->i_mutex); 2819 + inode_unlock(inode); 2820 2820 /* Let go of our reservation. */ 2821 2821 btrfs_free_reserved_data_space(inode, alloc_start, 2822 2822 alloc_end - alloc_start); ··· 2892 2892 struct inode *inode = file->f_mapping->host; 2893 2893 int ret; 2894 2894 2895 - mutex_lock(&inode->i_mutex); 2895 + inode_lock(inode); 2896 2896 switch (whence) { 2897 2897 case SEEK_END: 2898 2898 case SEEK_CUR: ··· 2901 2901 case SEEK_DATA: 2902 2902 case SEEK_HOLE: 2903 2903 if (offset >= i_size_read(inode)) { 2904 - mutex_unlock(&inode->i_mutex); 2904 + inode_unlock(inode); 2905 2905 return -ENXIO; 2906 2906 } 2907 2907 2908 2908 ret = find_desired_extent(inode, &offset, whence); 2909 2909 if (ret) { 2910 - mutex_unlock(&inode->i_mutex); 2910 + inode_unlock(inode); 2911 2911 return ret; 2912 2912 } 2913 2913 } 2914 2914 2915 2915 offset = vfs_setpos(file, offset, inode->i_sb->s_maxbytes); 2916 2916 out: 2917 - mutex_unlock(&inode->i_mutex); 2917 + inode_unlock(inode); 2918 2918 return offset; 2919 2919 } 2920 2920
+2 -2
fs/btrfs/inode.c
··· 8447 8447 * not unlock the i_mutex at this case. 8448 8448 */ 8449 8449 if (offset + count <= inode->i_size) { 8450 - mutex_unlock(&inode->i_mutex); 8450 + inode_unlock(inode); 8451 8451 relock = true; 8452 8452 } 8453 8453 ret = btrfs_delalloc_reserve_space(inode, offset, count); ··· 8504 8504 if (wakeup) 8505 8505 inode_dio_end(inode); 8506 8506 if (relock) 8507 - mutex_lock(&inode->i_mutex); 8507 + inode_lock(inode); 8508 8508 8509 8509 return ret; 8510 8510 }
+19 -19
fs/btrfs/ioctl.c
··· 240 240 if (ret) 241 241 return ret; 242 242 243 - mutex_lock(&inode->i_mutex); 243 + inode_lock(inode); 244 244 245 245 ip_oldflags = ip->flags; 246 246 i_oldflags = inode->i_flags; ··· 358 358 } 359 359 360 360 out_unlock: 361 - mutex_unlock(&inode->i_mutex); 361 + inode_unlock(inode); 362 362 mnt_drop_write_file(file); 363 363 return ret; 364 364 } ··· 881 881 out_dput: 882 882 dput(dentry); 883 883 out_unlock: 884 - mutex_unlock(&dir->i_mutex); 884 + inode_unlock(dir); 885 885 return error; 886 886 } 887 887 ··· 1393 1393 ra_index += cluster; 1394 1394 } 1395 1395 1396 - mutex_lock(&inode->i_mutex); 1396 + inode_lock(inode); 1397 1397 if (range->flags & BTRFS_DEFRAG_RANGE_COMPRESS) 1398 1398 BTRFS_I(inode)->force_compress = compress_type; 1399 1399 ret = cluster_pages_for_defrag(inode, pages, i, cluster); 1400 1400 if (ret < 0) { 1401 - mutex_unlock(&inode->i_mutex); 1401 + inode_unlock(inode); 1402 1402 goto out_ra; 1403 1403 } 1404 1404 1405 1405 defrag_count += ret; 1406 1406 balance_dirty_pages_ratelimited(inode->i_mapping); 1407 - mutex_unlock(&inode->i_mutex); 1407 + inode_unlock(inode); 1408 1408 1409 1409 if (newer_than) { 1410 1410 if (newer_off == (u64)-1) ··· 1465 1465 1466 1466 out_ra: 1467 1467 if (range->flags & BTRFS_DEFRAG_RANGE_COMPRESS) { 1468 - mutex_lock(&inode->i_mutex); 1468 + inode_lock(inode); 1469 1469 BTRFS_I(inode)->force_compress = BTRFS_COMPRESS_NONE; 1470 - mutex_unlock(&inode->i_mutex); 1470 + inode_unlock(inode); 1471 1471 } 1472 1472 if (!file) 1473 1473 kfree(ra); ··· 2430 2430 goto out_dput; 2431 2431 } 2432 2432 2433 - mutex_lock(&inode->i_mutex); 2433 + inode_lock(inode); 2434 2434 2435 2435 /* 2436 2436 * Don't allow to delete a subvolume with send in progress. This is ··· 2543 2543 spin_unlock(&dest->root_item_lock); 2544 2544 } 2545 2545 out_unlock_inode: 2546 - mutex_unlock(&inode->i_mutex); 2546 + inode_unlock(inode); 2547 2547 if (!err) { 2548 2548 d_invalidate(dentry); 2549 2549 btrfs_invalidate_inodes(dest); ··· 2559 2559 out_dput: 2560 2560 dput(dentry); 2561 2561 out_unlock_dir: 2562 - mutex_unlock(&dir->i_mutex); 2562 + inode_unlock(dir); 2563 2563 out_drop_write: 2564 2564 mnt_drop_write_file(file); 2565 2565 out: ··· 2857 2857 2858 2858 static void btrfs_double_inode_unlock(struct inode *inode1, struct inode *inode2) 2859 2859 { 2860 - mutex_unlock(&inode1->i_mutex); 2861 - mutex_unlock(&inode2->i_mutex); 2860 + inode_unlock(inode1); 2861 + inode_unlock(inode2); 2862 2862 } 2863 2863 2864 2864 static void btrfs_double_inode_lock(struct inode *inode1, struct inode *inode2) ··· 2866 2866 if (inode1 < inode2) 2867 2867 swap(inode1, inode2); 2868 2868 2869 - mutex_lock_nested(&inode1->i_mutex, I_MUTEX_PARENT); 2870 - mutex_lock_nested(&inode2->i_mutex, I_MUTEX_CHILD); 2869 + inode_lock_nested(inode1, I_MUTEX_PARENT); 2870 + inode_lock_nested(inode2, I_MUTEX_CHILD); 2871 2871 } 2872 2872 2873 2873 static void btrfs_double_extent_unlock(struct inode *inode1, u64 loff1, ··· 3026 3026 return 0; 3027 3027 3028 3028 if (same_inode) { 3029 - mutex_lock(&src->i_mutex); 3029 + inode_lock(src); 3030 3030 3031 3031 ret = extent_same_check_offsets(src, loff, &len, olen); 3032 3032 if (ret) ··· 3101 3101 btrfs_cmp_data_free(&cmp); 3102 3102 out_unlock: 3103 3103 if (same_inode) 3104 - mutex_unlock(&src->i_mutex); 3104 + inode_unlock(src); 3105 3105 else 3106 3106 btrfs_double_inode_unlock(src, dst); 3107 3107 ··· 3749 3749 if (!same_inode) { 3750 3750 btrfs_double_inode_lock(src, inode); 3751 3751 } else { 3752 - mutex_lock(&src->i_mutex); 3752 + inode_lock(src); 3753 3753 } 3754 3754 3755 3755 /* determine range to clone */ ··· 3820 3820 if (!same_inode) 3821 3821 btrfs_double_inode_unlock(src, inode); 3822 3822 else 3823 - mutex_unlock(&src->i_mutex); 3823 + inode_unlock(src); 3824 3824 return ret; 3825 3825 } 3826 3826
+2 -2
fs/btrfs/relocation.c
··· 3030 3030 int ret = 0; 3031 3031 3032 3032 BUG_ON(cluster->start != cluster->boundary[0]); 3033 - mutex_lock(&inode->i_mutex); 3033 + inode_lock(inode); 3034 3034 3035 3035 ret = btrfs_check_data_free_space(inode, cluster->start, 3036 3036 cluster->end + 1 - cluster->start); ··· 3057 3057 btrfs_free_reserved_data_space(inode, cluster->start, 3058 3058 cluster->end + 1 - cluster->start); 3059 3059 out: 3060 - mutex_unlock(&inode->i_mutex); 3060 + inode_unlock(inode); 3061 3061 return ret; 3062 3062 } 3063 3063
+2 -2
fs/btrfs/scrub.c
··· 4279 4279 return PTR_ERR(inode); 4280 4280 4281 4281 /* Avoid truncate/dio/punch hole.. */ 4282 - mutex_lock(&inode->i_mutex); 4282 + inode_lock(inode); 4283 4283 inode_dio_wait(inode); 4284 4284 4285 4285 physical_for_dev_replace = nocow_ctx->physical_for_dev_replace; ··· 4358 4358 } 4359 4359 ret = COPY_COMPLETE; 4360 4360 out: 4361 - mutex_unlock(&inode->i_mutex); 4361 + inode_unlock(inode); 4362 4362 iput(inode); 4363 4363 return ret; 4364 4364 }
+1 -1
fs/btrfs/xattr.c
··· 126 126 * locks the inode's i_mutex before calling setxattr or removexattr. 127 127 */ 128 128 if (flags & XATTR_REPLACE) { 129 - ASSERT(mutex_is_locked(&inode->i_mutex)); 129 + ASSERT(inode_is_locked(inode)); 130 130 di = btrfs_lookup_xattr(NULL, root, path, btrfs_ino(inode), 131 131 name, name_len, 0); 132 132 if (!di)
+2 -2
fs/cachefiles/interface.c
··· 446 446 return 0; 447 447 448 448 cachefiles_begin_secure(cache, &saved_cred); 449 - mutex_lock(&d_inode(object->backer)->i_mutex); 449 + inode_lock(d_inode(object->backer)); 450 450 451 451 /* if there's an extension to a partial page at the end of the backing 452 452 * file, we need to discard the partial page so that we pick up new ··· 465 465 ret = notify_change(object->backer, &newattrs, NULL); 466 466 467 467 truncate_failed: 468 - mutex_unlock(&d_inode(object->backer)->i_mutex); 468 + inode_unlock(d_inode(object->backer)); 469 469 cachefiles_end_secure(cache, saved_cred); 470 470 471 471 if (ret == -EIO) {
+20 -20
fs/cachefiles/namei.c
··· 295 295 cachefiles_mark_object_buried(cache, rep, why); 296 296 } 297 297 298 - mutex_unlock(&d_inode(dir)->i_mutex); 298 + inode_unlock(d_inode(dir)); 299 299 300 300 if (ret == -EIO) 301 301 cachefiles_io_error(cache, "Unlink failed"); ··· 306 306 307 307 /* directories have to be moved to the graveyard */ 308 308 _debug("move stale object to graveyard"); 309 - mutex_unlock(&d_inode(dir)->i_mutex); 309 + inode_unlock(d_inode(dir)); 310 310 311 311 try_again: 312 312 /* first step is to make up a grave dentry in the graveyard */ ··· 423 423 424 424 dir = dget_parent(object->dentry); 425 425 426 - mutex_lock_nested(&d_inode(dir)->i_mutex, I_MUTEX_PARENT); 426 + inode_lock_nested(d_inode(dir), I_MUTEX_PARENT); 427 427 428 428 if (test_bit(FSCACHE_OBJECT_KILLED_BY_CACHE, &object->fscache.flags)) { 429 429 /* object allocation for the same key preemptively deleted this 430 430 * object's file so that it could create its own file */ 431 431 _debug("object preemptively buried"); 432 - mutex_unlock(&d_inode(dir)->i_mutex); 432 + inode_unlock(d_inode(dir)); 433 433 ret = 0; 434 434 } else { 435 435 /* we need to check that our parent is _still_ our parent - it ··· 442 442 /* it got moved, presumably by cachefilesd culling it, 443 443 * so it's no longer in the key path and we can ignore 444 444 * it */ 445 - mutex_unlock(&d_inode(dir)->i_mutex); 445 + inode_unlock(d_inode(dir)); 446 446 ret = 0; 447 447 } 448 448 } ··· 501 501 /* search the current directory for the element name */ 502 502 _debug("lookup '%s'", name); 503 503 504 - mutex_lock_nested(&d_inode(dir)->i_mutex, I_MUTEX_PARENT); 504 + inode_lock_nested(d_inode(dir), I_MUTEX_PARENT); 505 505 506 506 start = jiffies; 507 507 next = lookup_one_len(name, dir, nlen); ··· 585 585 /* process the next component */ 586 586 if (key) { 587 587 _debug("advance"); 588 - mutex_unlock(&d_inode(dir)->i_mutex); 588 + inode_unlock(d_inode(dir)); 589 589 dput(dir); 590 590 dir = next; 591 591 next = NULL; ··· 623 623 /* note that we're now using this object */ 624 624 ret = cachefiles_mark_object_active(cache, object); 625 625 626 - mutex_unlock(&d_inode(dir)->i_mutex); 626 + inode_unlock(d_inode(dir)); 627 627 dput(dir); 628 628 dir = NULL; 629 629 ··· 705 705 cachefiles_io_error(cache, "Lookup failed"); 706 706 next = NULL; 707 707 error: 708 - mutex_unlock(&d_inode(dir)->i_mutex); 708 + inode_unlock(d_inode(dir)); 709 709 dput(next); 710 710 error_out2: 711 711 dput(dir); ··· 729 729 _enter(",,%s", dirname); 730 730 731 731 /* search the current directory for the element name */ 732 - mutex_lock(&d_inode(dir)->i_mutex); 732 + inode_lock(d_inode(dir)); 733 733 734 734 start = jiffies; 735 735 subdir = lookup_one_len(dirname, dir, strlen(dirname)); ··· 768 768 d_backing_inode(subdir)->i_ino); 769 769 } 770 770 771 - mutex_unlock(&d_inode(dir)->i_mutex); 771 + inode_unlock(d_inode(dir)); 772 772 773 773 /* we need to make sure the subdir is a directory */ 774 774 ASSERT(d_backing_inode(subdir)); ··· 800 800 return ERR_PTR(ret); 801 801 802 802 mkdir_error: 803 - mutex_unlock(&d_inode(dir)->i_mutex); 803 + inode_unlock(d_inode(dir)); 804 804 dput(subdir); 805 805 pr_err("mkdir %s failed with error %d\n", dirname, ret); 806 806 return ERR_PTR(ret); 807 807 808 808 lookup_error: 809 - mutex_unlock(&d_inode(dir)->i_mutex); 809 + inode_unlock(d_inode(dir)); 810 810 ret = PTR_ERR(subdir); 811 811 pr_err("Lookup %s failed with error %d\n", dirname, ret); 812 812 return ERR_PTR(ret); 813 813 814 814 nomem_d_alloc: 815 - mutex_unlock(&d_inode(dir)->i_mutex); 815 + inode_unlock(d_inode(dir)); 816 816 _leave(" = -ENOMEM"); 817 817 return ERR_PTR(-ENOMEM); 818 818 } ··· 837 837 // dir, filename); 838 838 839 839 /* look up the victim */ 840 - mutex_lock_nested(&d_inode(dir)->i_mutex, I_MUTEX_PARENT); 840 + inode_lock_nested(d_inode(dir), I_MUTEX_PARENT); 841 841 842 842 start = jiffies; 843 843 victim = lookup_one_len(filename, dir, strlen(filename)); ··· 852 852 * at the netfs's request whilst the cull was in progress 853 853 */ 854 854 if (d_is_negative(victim)) { 855 - mutex_unlock(&d_inode(dir)->i_mutex); 855 + inode_unlock(d_inode(dir)); 856 856 dput(victim); 857 857 _leave(" = -ENOENT [absent]"); 858 858 return ERR_PTR(-ENOENT); ··· 881 881 882 882 object_in_use: 883 883 read_unlock(&cache->active_lock); 884 - mutex_unlock(&d_inode(dir)->i_mutex); 884 + inode_unlock(d_inode(dir)); 885 885 dput(victim); 886 886 //_leave(" = -EBUSY [in use]"); 887 887 return ERR_PTR(-EBUSY); 888 888 889 889 lookup_error: 890 - mutex_unlock(&d_inode(dir)->i_mutex); 890 + inode_unlock(d_inode(dir)); 891 891 ret = PTR_ERR(victim); 892 892 if (ret == -ENOENT) { 893 893 /* file or dir now absent - probably retired by netfs */ ··· 947 947 return 0; 948 948 949 949 error_unlock: 950 - mutex_unlock(&d_inode(dir)->i_mutex); 950 + inode_unlock(d_inode(dir)); 951 951 error: 952 952 dput(victim); 953 953 if (ret == -ENOENT) { ··· 982 982 if (IS_ERR(victim)) 983 983 return PTR_ERR(victim); 984 984 985 - mutex_unlock(&d_inode(dir)->i_mutex); 985 + inode_unlock(d_inode(dir)); 986 986 dput(victim); 987 987 //_leave(" = 0"); 988 988 return 0;
+2 -2
fs/ceph/cache.c
··· 197 197 return; 198 198 199 199 /* Avoid multiple racing open requests */ 200 - mutex_lock(&inode->i_mutex); 200 + inode_lock(inode); 201 201 202 202 if (ci->fscache) 203 203 goto done; ··· 207 207 ci, true); 208 208 fscache_check_consistency(ci->fscache); 209 209 done: 210 - mutex_unlock(&inode->i_mutex); 210 + inode_unlock(inode); 211 211 212 212 } 213 213
+2 -2
fs/ceph/caps.c
··· 2030 2030 if (datasync) 2031 2031 goto out; 2032 2032 2033 - mutex_lock(&inode->i_mutex); 2033 + inode_lock(inode); 2034 2034 2035 2035 dirty = try_flush_caps(inode, &flush_tid); 2036 2036 dout("fsync dirty caps are %s\n", ceph_cap_string(dirty)); ··· 2046 2046 ret = wait_event_interruptible(ci->i_cap_wq, 2047 2047 caps_are_flushed(inode, flush_tid)); 2048 2048 } 2049 - mutex_unlock(&inode->i_mutex); 2049 + inode_unlock(inode); 2050 2050 out: 2051 2051 dout("fsync %p%s result=%d\n", inode, datasync ? " datasync" : "", ret); 2052 2052 return ret;
+2 -2
fs/ceph/dir.c
··· 507 507 loff_t old_offset = ceph_make_fpos(fi->frag, fi->next_offset); 508 508 loff_t retval; 509 509 510 - mutex_lock(&inode->i_mutex); 510 + inode_lock(inode); 511 511 retval = -EINVAL; 512 512 switch (whence) { 513 513 case SEEK_CUR: ··· 542 542 } 543 543 } 544 544 out: 545 - mutex_unlock(&inode->i_mutex); 545 + inode_unlock(inode); 546 546 return retval; 547 547 } 548 548
+2 -2
fs/ceph/export.c
··· 215 215 if (IS_ERR(req)) 216 216 return PTR_ERR(req); 217 217 218 - mutex_lock(&d_inode(parent)->i_mutex); 218 + inode_lock(d_inode(parent)); 219 219 220 220 req->r_inode = d_inode(child); 221 221 ihold(d_inode(child)); ··· 224 224 req->r_num_caps = 2; 225 225 err = ceph_mdsc_do_request(mdsc, NULL, req); 226 226 227 - mutex_unlock(&d_inode(parent)->i_mutex); 227 + inode_unlock(d_inode(parent)); 228 228 229 229 if (!err) { 230 230 struct ceph_mds_reply_info_parsed *rinfo = &req->r_reply_info;
+9 -9
fs/ceph/file.c
··· 1014 1014 if (!prealloc_cf) 1015 1015 return -ENOMEM; 1016 1016 1017 - mutex_lock(&inode->i_mutex); 1017 + inode_lock(inode); 1018 1018 1019 1019 /* We can write back this queue in page reclaim */ 1020 1020 current->backing_dev_info = inode_to_bdi(inode); ··· 1070 1070 (iocb->ki_flags & IOCB_DIRECT) || (fi->flags & CEPH_F_SYNC)) { 1071 1071 struct ceph_snap_context *snapc; 1072 1072 struct iov_iter data; 1073 - mutex_unlock(&inode->i_mutex); 1073 + inode_unlock(inode); 1074 1074 1075 1075 spin_lock(&ci->i_ceph_lock); 1076 1076 if (__ceph_have_pending_cap_snap(ci)) { ··· 1097 1097 "got EOLDSNAPC, retrying\n", 1098 1098 inode, ceph_vinop(inode), 1099 1099 pos, (unsigned)count); 1100 - mutex_lock(&inode->i_mutex); 1100 + inode_lock(inode); 1101 1101 goto retry_snap; 1102 1102 } 1103 1103 if (written > 0) ··· 1117 1117 iocb->ki_pos = pos + written; 1118 1118 if (inode->i_size > old_size) 1119 1119 ceph_fscache_update_objectsize(inode); 1120 - mutex_unlock(&inode->i_mutex); 1120 + inode_unlock(inode); 1121 1121 } 1122 1122 1123 1123 if (written >= 0) { ··· 1147 1147 goto out_unlocked; 1148 1148 1149 1149 out: 1150 - mutex_unlock(&inode->i_mutex); 1150 + inode_unlock(inode); 1151 1151 out_unlocked: 1152 1152 ceph_free_cap_flush(prealloc_cf); 1153 1153 current->backing_dev_info = NULL; ··· 1162 1162 struct inode *inode = file->f_mapping->host; 1163 1163 int ret; 1164 1164 1165 - mutex_lock(&inode->i_mutex); 1165 + inode_lock(inode); 1166 1166 1167 1167 if (whence == SEEK_END || whence == SEEK_DATA || whence == SEEK_HOLE) { 1168 1168 ret = ceph_do_getattr(inode, CEPH_STAT_CAP_SIZE, false); ··· 1207 1207 offset = vfs_setpos(file, offset, inode->i_sb->s_maxbytes); 1208 1208 1209 1209 out: 1210 - mutex_unlock(&inode->i_mutex); 1210 + inode_unlock(inode); 1211 1211 return offset; 1212 1212 } 1213 1213 ··· 1363 1363 if (!prealloc_cf) 1364 1364 return -ENOMEM; 1365 1365 1366 - mutex_lock(&inode->i_mutex); 1366 + inode_lock(inode); 1367 1367 1368 1368 if (ceph_snap(inode) != CEPH_NOSNAP) { 1369 1369 ret = -EROFS; ··· 1418 1418 1419 1419 ceph_put_cap_refs(ci, got); 1420 1420 unlock: 1421 - mutex_unlock(&inode->i_mutex); 1421 + inode_unlock(inode); 1422 1422 ceph_free_cap_flush(prealloc_cf); 1423 1423 return ret; 1424 1424 }
+2 -2
fs/cifs/cifsfs.c
··· 640 640 while (*s && *s != sep) 641 641 s++; 642 642 643 - mutex_lock(&dir->i_mutex); 643 + inode_lock(dir); 644 644 child = lookup_one_len(p, dentry, s - p); 645 - mutex_unlock(&dir->i_mutex); 645 + inode_unlock(dir); 646 646 dput(dentry); 647 647 dentry = child; 648 648 } while (!IS_ERR(dentry));
+6 -6
fs/cifs/file.c
··· 2267 2267 rc = filemap_write_and_wait_range(inode->i_mapping, start, end); 2268 2268 if (rc) 2269 2269 return rc; 2270 - mutex_lock(&inode->i_mutex); 2270 + inode_lock(inode); 2271 2271 2272 2272 xid = get_xid(); 2273 2273 ··· 2292 2292 } 2293 2293 2294 2294 free_xid(xid); 2295 - mutex_unlock(&inode->i_mutex); 2295 + inode_unlock(inode); 2296 2296 return rc; 2297 2297 } 2298 2298 ··· 2309 2309 rc = filemap_write_and_wait_range(inode->i_mapping, start, end); 2310 2310 if (rc) 2311 2311 return rc; 2312 - mutex_lock(&inode->i_mutex); 2312 + inode_lock(inode); 2313 2313 2314 2314 xid = get_xid(); 2315 2315 ··· 2326 2326 } 2327 2327 2328 2328 free_xid(xid); 2329 - mutex_unlock(&inode->i_mutex); 2329 + inode_unlock(inode); 2330 2330 return rc; 2331 2331 } 2332 2332 ··· 2672 2672 * with a brlock that prevents writing. 2673 2673 */ 2674 2674 down_read(&cinode->lock_sem); 2675 - mutex_lock(&inode->i_mutex); 2675 + inode_lock(inode); 2676 2676 2677 2677 rc = generic_write_checks(iocb, from); 2678 2678 if (rc <= 0) ··· 2685 2685 else 2686 2686 rc = -EACCES; 2687 2687 out: 2688 - mutex_unlock(&inode->i_mutex); 2688 + inode_unlock(inode); 2689 2689 2690 2690 if (rc > 0) { 2691 2691 ssize_t err = generic_write_sync(file, iocb->ki_pos - rc, rc);
+2 -2
fs/coda/dir.c
··· 427 427 if (host_file->f_op->iterate) { 428 428 struct inode *host_inode = file_inode(host_file); 429 429 430 - mutex_lock(&host_inode->i_mutex); 430 + inode_lock(host_inode); 431 431 ret = -ENOENT; 432 432 if (!IS_DEADDIR(host_inode)) { 433 433 ret = host_file->f_op->iterate(host_file, ctx); 434 434 file_accessed(host_file); 435 435 } 436 - mutex_unlock(&host_inode->i_mutex); 436 + inode_unlock(host_inode); 437 437 return ret; 438 438 } 439 439 /* Venus: we must read Venus dirents from a file */
+4 -4
fs/coda/file.c
··· 71 71 72 72 host_file = cfi->cfi_container; 73 73 file_start_write(host_file); 74 - mutex_lock(&coda_inode->i_mutex); 74 + inode_lock(coda_inode); 75 75 ret = vfs_iter_write(cfi->cfi_container, to, &iocb->ki_pos); 76 76 coda_inode->i_size = file_inode(host_file)->i_size; 77 77 coda_inode->i_blocks = (coda_inode->i_size + 511) >> 9; 78 78 coda_inode->i_mtime = coda_inode->i_ctime = CURRENT_TIME_SEC; 79 - mutex_unlock(&coda_inode->i_mutex); 79 + inode_unlock(coda_inode); 80 80 file_end_write(host_file); 81 81 return ret; 82 82 } ··· 203 203 err = filemap_write_and_wait_range(coda_inode->i_mapping, start, end); 204 204 if (err) 205 205 return err; 206 - mutex_lock(&coda_inode->i_mutex); 206 + inode_lock(coda_inode); 207 207 208 208 cfi = CODA_FTOC(coda_file); 209 209 BUG_ON(!cfi || cfi->cfi_magic != CODA_MAGIC); ··· 212 212 err = vfs_fsync(host_file, datasync); 213 213 if (!err && !datasync) 214 214 err = venus_fsync(coda_inode->i_sb, coda_i2f(coda_inode)); 215 - mutex_unlock(&coda_inode->i_mutex); 215 + inode_unlock(coda_inode); 216 216 217 217 return err; 218 218 }
+29 -29
fs/configfs/dir.c
··· 640 640 641 641 child = sd->s_dentry; 642 642 643 - mutex_lock(&d_inode(child)->i_mutex); 643 + inode_lock(d_inode(child)); 644 644 645 645 configfs_detach_group(sd->s_element); 646 646 d_inode(child)->i_flags |= S_DEAD; 647 647 dont_mount(child); 648 648 649 - mutex_unlock(&d_inode(child)->i_mutex); 649 + inode_unlock(d_inode(child)); 650 650 651 651 d_delete(child); 652 652 dput(child); ··· 834 834 * the VFS may already have hit and used them. Thus, 835 835 * we must lock them as rmdir() would. 836 836 */ 837 - mutex_lock(&d_inode(dentry)->i_mutex); 837 + inode_lock(d_inode(dentry)); 838 838 configfs_remove_dir(item); 839 839 d_inode(dentry)->i_flags |= S_DEAD; 840 840 dont_mount(dentry); 841 - mutex_unlock(&d_inode(dentry)->i_mutex); 841 + inode_unlock(d_inode(dentry)); 842 842 d_delete(dentry); 843 843 } 844 844 } ··· 874 874 * We must also lock the inode to remove it safely in case of 875 875 * error, as rmdir() would. 876 876 */ 877 - mutex_lock_nested(&d_inode(dentry)->i_mutex, I_MUTEX_CHILD); 877 + inode_lock_nested(d_inode(dentry), I_MUTEX_CHILD); 878 878 configfs_adjust_dir_dirent_depth_before_populate(sd); 879 879 ret = populate_groups(to_config_group(item)); 880 880 if (ret) { ··· 883 883 dont_mount(dentry); 884 884 } 885 885 configfs_adjust_dir_dirent_depth_after_populate(sd); 886 - mutex_unlock(&d_inode(dentry)->i_mutex); 886 + inode_unlock(d_inode(dentry)); 887 887 if (ret) 888 888 d_delete(dentry); 889 889 } ··· 1135 1135 * subsystem is really registered, and so we need to lock out 1136 1136 * configfs_[un]register_subsystem(). 1137 1137 */ 1138 - mutex_lock(&d_inode(root)->i_mutex); 1138 + inode_lock(d_inode(root)); 1139 1139 1140 1140 subsys_sd = configfs_find_subsys_dentry(root->d_fsdata, s_item); 1141 1141 if (!subsys_sd) { ··· 1147 1147 ret = configfs_do_depend_item(subsys_sd->s_dentry, target); 1148 1148 1149 1149 out_unlock_fs: 1150 - mutex_unlock(&d_inode(root)->i_mutex); 1150 + inode_unlock(d_inode(root)); 1151 1151 1152 1152 /* 1153 1153 * If we succeeded, the fs is pinned via other methods. If not, ··· 1230 1230 * additional locking to prevent other subsystem from being 1231 1231 * unregistered 1232 1232 */ 1233 - mutex_lock(&d_inode(root->cg_item.ci_dentry)->i_mutex); 1233 + inode_lock(d_inode(root->cg_item.ci_dentry)); 1234 1234 1235 1235 /* 1236 1236 * As we are trying to depend item from other subsystem ··· 1254 1254 * We were called from subsystem other than our target so we 1255 1255 * took some locks so now it's time to release them 1256 1256 */ 1257 - mutex_unlock(&d_inode(root->cg_item.ci_dentry)->i_mutex); 1257 + inode_unlock(d_inode(root->cg_item.ci_dentry)); 1258 1258 1259 1259 return ret; 1260 1260 } ··· 1561 1561 down_write(&configfs_rename_sem); 1562 1562 parent = item->parent->dentry; 1563 1563 1564 - mutex_lock(&d_inode(parent)->i_mutex); 1564 + inode_lock(d_inode(parent)); 1565 1565 1566 1566 new_dentry = lookup_one_len(new_name, parent, strlen(new_name)); 1567 1567 if (!IS_ERR(new_dentry)) { ··· 1577 1577 error = -EEXIST; 1578 1578 dput(new_dentry); 1579 1579 } 1580 - mutex_unlock(&d_inode(parent)->i_mutex); 1580 + inode_unlock(d_inode(parent)); 1581 1581 up_write(&configfs_rename_sem); 1582 1582 1583 1583 return error; ··· 1590 1590 struct configfs_dirent * parent_sd = dentry->d_fsdata; 1591 1591 int err; 1592 1592 1593 - mutex_lock(&d_inode(dentry)->i_mutex); 1593 + inode_lock(d_inode(dentry)); 1594 1594 /* 1595 1595 * Fake invisibility if dir belongs to a group/default groups hierarchy 1596 1596 * being attached ··· 1603 1603 else 1604 1604 err = 0; 1605 1605 } 1606 - mutex_unlock(&d_inode(dentry)->i_mutex); 1606 + inode_unlock(d_inode(dentry)); 1607 1607 1608 1608 return err; 1609 1609 } ··· 1613 1613 struct dentry * dentry = file->f_path.dentry; 1614 1614 struct configfs_dirent * cursor = file->private_data; 1615 1615 1616 - mutex_lock(&d_inode(dentry)->i_mutex); 1616 + inode_lock(d_inode(dentry)); 1617 1617 spin_lock(&configfs_dirent_lock); 1618 1618 list_del_init(&cursor->s_sibling); 1619 1619 spin_unlock(&configfs_dirent_lock); 1620 - mutex_unlock(&d_inode(dentry)->i_mutex); 1620 + inode_unlock(d_inode(dentry)); 1621 1621 1622 1622 release_configfs_dirent(cursor); 1623 1623 ··· 1698 1698 { 1699 1699 struct dentry * dentry = file->f_path.dentry; 1700 1700 1701 - mutex_lock(&d_inode(dentry)->i_mutex); 1701 + inode_lock(d_inode(dentry)); 1702 1702 switch (whence) { 1703 1703 case 1: 1704 1704 offset += file->f_pos; ··· 1706 1706 if (offset >= 0) 1707 1707 break; 1708 1708 default: 1709 - mutex_unlock(&d_inode(dentry)->i_mutex); 1709 + inode_unlock(d_inode(dentry)); 1710 1710 return -EINVAL; 1711 1711 } 1712 1712 if (offset != file->f_pos) { ··· 1732 1732 spin_unlock(&configfs_dirent_lock); 1733 1733 } 1734 1734 } 1735 - mutex_unlock(&d_inode(dentry)->i_mutex); 1735 + inode_unlock(d_inode(dentry)); 1736 1736 return offset; 1737 1737 } 1738 1738 ··· 1767 1767 1768 1768 parent = parent_group->cg_item.ci_dentry; 1769 1769 1770 - mutex_lock_nested(&d_inode(parent)->i_mutex, I_MUTEX_PARENT); 1770 + inode_lock_nested(d_inode(parent), I_MUTEX_PARENT); 1771 1771 ret = create_default_group(parent_group, group); 1772 1772 if (!ret) { 1773 1773 spin_lock(&configfs_dirent_lock); 1774 1774 configfs_dir_set_ready(group->cg_item.ci_dentry->d_fsdata); 1775 1775 spin_unlock(&configfs_dirent_lock); 1776 1776 } 1777 - mutex_unlock(&d_inode(parent)->i_mutex); 1777 + inode_unlock(d_inode(parent)); 1778 1778 return ret; 1779 1779 } 1780 1780 EXPORT_SYMBOL(configfs_register_group); ··· 1791 1791 struct dentry *dentry = group->cg_item.ci_dentry; 1792 1792 struct dentry *parent = group->cg_item.ci_parent->ci_dentry; 1793 1793 1794 - mutex_lock_nested(&d_inode(parent)->i_mutex, I_MUTEX_PARENT); 1794 + inode_lock_nested(d_inode(parent), I_MUTEX_PARENT); 1795 1795 spin_lock(&configfs_dirent_lock); 1796 1796 configfs_detach_prep(dentry, NULL); 1797 1797 spin_unlock(&configfs_dirent_lock); ··· 1800 1800 d_inode(dentry)->i_flags |= S_DEAD; 1801 1801 dont_mount(dentry); 1802 1802 d_delete(dentry); 1803 - mutex_unlock(&d_inode(parent)->i_mutex); 1803 + inode_unlock(d_inode(parent)); 1804 1804 1805 1805 dput(dentry); 1806 1806 ··· 1872 1872 sd = root->d_fsdata; 1873 1873 link_group(to_config_group(sd->s_element), group); 1874 1874 1875 - mutex_lock_nested(&d_inode(root)->i_mutex, I_MUTEX_PARENT); 1875 + inode_lock_nested(d_inode(root), I_MUTEX_PARENT); 1876 1876 1877 1877 err = -ENOMEM; 1878 1878 dentry = d_alloc_name(root, group->cg_item.ci_name); ··· 1892 1892 } 1893 1893 } 1894 1894 1895 - mutex_unlock(&d_inode(root)->i_mutex); 1895 + inode_unlock(d_inode(root)); 1896 1896 1897 1897 if (err) { 1898 1898 unlink_group(group); ··· 1913 1913 return; 1914 1914 } 1915 1915 1916 - mutex_lock_nested(&d_inode(root)->i_mutex, 1916 + inode_lock_nested(d_inode(root), 1917 1917 I_MUTEX_PARENT); 1918 - mutex_lock_nested(&d_inode(dentry)->i_mutex, I_MUTEX_CHILD); 1918 + inode_lock_nested(d_inode(dentry), I_MUTEX_CHILD); 1919 1919 mutex_lock(&configfs_symlink_mutex); 1920 1920 spin_lock(&configfs_dirent_lock); 1921 1921 if (configfs_detach_prep(dentry, NULL)) { ··· 1926 1926 configfs_detach_group(&group->cg_item); 1927 1927 d_inode(dentry)->i_flags |= S_DEAD; 1928 1928 dont_mount(dentry); 1929 - mutex_unlock(&d_inode(dentry)->i_mutex); 1929 + inode_unlock(d_inode(dentry)); 1930 1930 1931 1931 d_delete(dentry); 1932 1932 1933 - mutex_unlock(&d_inode(root)->i_mutex); 1933 + inode_unlock(d_inode(root)); 1934 1934 1935 1935 dput(dentry); 1936 1936
+4 -4
fs/configfs/file.c
··· 540 540 umode_t mode = (attr->ca_mode & S_IALLUGO) | S_IFREG; 541 541 int error = 0; 542 542 543 - mutex_lock_nested(&d_inode(dir)->i_mutex, I_MUTEX_NORMAL); 543 + inode_lock_nested(d_inode(dir), I_MUTEX_NORMAL); 544 544 error = configfs_make_dirent(parent_sd, NULL, (void *) attr, mode, 545 545 CONFIGFS_ITEM_ATTR); 546 - mutex_unlock(&d_inode(dir)->i_mutex); 546 + inode_unlock(d_inode(dir)); 547 547 548 548 return error; 549 549 } ··· 562 562 umode_t mode = (bin_attr->cb_attr.ca_mode & S_IALLUGO) | S_IFREG; 563 563 int error = 0; 564 564 565 - mutex_lock_nested(&dir->d_inode->i_mutex, I_MUTEX_NORMAL); 565 + inode_lock_nested(dir->d_inode, I_MUTEX_NORMAL); 566 566 error = configfs_make_dirent(parent_sd, NULL, (void *) bin_attr, mode, 567 567 CONFIGFS_ITEM_BIN_ATTR); 568 - mutex_unlock(&dir->d_inode->i_mutex); 568 + inode_unlock(dir->d_inode); 569 569 570 570 return error; 571 571 }
+2 -2
fs/configfs/inode.c
··· 255 255 /* no inode means this hasn't been made visible yet */ 256 256 return; 257 257 258 - mutex_lock(&d_inode(dir)->i_mutex); 258 + inode_lock(d_inode(dir)); 259 259 list_for_each_entry(sd, &parent_sd->s_children, s_sibling) { 260 260 if (!sd->s_element) 261 261 continue; ··· 268 268 break; 269 269 } 270 270 } 271 - mutex_unlock(&d_inode(dir)->i_mutex); 271 + inode_unlock(d_inode(dir)); 272 272 }
+3 -3
fs/dax.c
··· 248 248 249 249 if ((flags & DIO_LOCKING) && iov_iter_rw(iter) == READ) { 250 250 struct address_space *mapping = inode->i_mapping; 251 - mutex_lock(&inode->i_mutex); 251 + inode_lock(inode); 252 252 retval = filemap_write_and_wait_range(mapping, pos, end - 1); 253 253 if (retval) { 254 - mutex_unlock(&inode->i_mutex); 254 + inode_unlock(inode); 255 255 goto out; 256 256 } 257 257 } ··· 263 263 retval = dax_io(inode, iter, pos, end, get_block, &bh); 264 264 265 265 if ((flags & DIO_LOCKING) && iov_iter_rw(iter) == READ) 266 - mutex_unlock(&inode->i_mutex); 266 + inode_unlock(inode); 267 267 268 268 if ((retval > 0) && end_io) 269 269 end_io(iocb, pos, retval, bh.b_private);
+2 -2
fs/dcache.c
··· 2462 2462 */ 2463 2463 void dentry_update_name_case(struct dentry *dentry, struct qstr *name) 2464 2464 { 2465 - BUG_ON(!mutex_is_locked(&dentry->d_parent->d_inode->i_mutex)); 2465 + BUG_ON(!inode_is_locked(dentry->d_parent->d_inode)); 2466 2466 BUG_ON(dentry->d_name.len != name->len); /* d_lookup gives this */ 2467 2467 2468 2468 spin_lock(&dentry->d_lock); ··· 2738 2738 if (!mutex_trylock(&dentry->d_sb->s_vfs_rename_mutex)) 2739 2739 goto out_err; 2740 2740 m1 = &dentry->d_sb->s_vfs_rename_mutex; 2741 - if (!mutex_trylock(&alias->d_parent->d_inode->i_mutex)) 2741 + if (!inode_trylock(alias->d_parent->d_inode)) 2742 2742 goto out_err; 2743 2743 m2 = &alias->d_parent->d_inode->i_mutex; 2744 2744 out_unalias:
+11 -11
fs/debugfs/inode.c
··· 265 265 if (!parent) 266 266 parent = debugfs_mount->mnt_root; 267 267 268 - mutex_lock(&d_inode(parent)->i_mutex); 268 + inode_lock(d_inode(parent)); 269 269 dentry = lookup_one_len(name, parent, strlen(name)); 270 270 if (!IS_ERR(dentry) && d_really_is_positive(dentry)) { 271 271 dput(dentry); ··· 273 273 } 274 274 275 275 if (IS_ERR(dentry)) { 276 - mutex_unlock(&d_inode(parent)->i_mutex); 276 + inode_unlock(d_inode(parent)); 277 277 simple_release_fs(&debugfs_mount, &debugfs_mount_count); 278 278 } 279 279 ··· 282 282 283 283 static struct dentry *failed_creating(struct dentry *dentry) 284 284 { 285 - mutex_unlock(&d_inode(dentry->d_parent)->i_mutex); 285 + inode_unlock(d_inode(dentry->d_parent)); 286 286 dput(dentry); 287 287 simple_release_fs(&debugfs_mount, &debugfs_mount_count); 288 288 return NULL; ··· 290 290 291 291 static struct dentry *end_creating(struct dentry *dentry) 292 292 { 293 - mutex_unlock(&d_inode(dentry->d_parent)->i_mutex); 293 + inode_unlock(d_inode(dentry->d_parent)); 294 294 return dentry; 295 295 } 296 296 ··· 560 560 if (!parent || d_really_is_negative(parent)) 561 561 return; 562 562 563 - mutex_lock(&d_inode(parent)->i_mutex); 563 + inode_lock(d_inode(parent)); 564 564 ret = __debugfs_remove(dentry, parent); 565 - mutex_unlock(&d_inode(parent)->i_mutex); 565 + inode_unlock(d_inode(parent)); 566 566 if (!ret) 567 567 simple_release_fs(&debugfs_mount, &debugfs_mount_count); 568 568 } ··· 594 594 595 595 parent = dentry; 596 596 down: 597 - mutex_lock(&d_inode(parent)->i_mutex); 597 + inode_lock(d_inode(parent)); 598 598 loop: 599 599 /* 600 600 * The parent->d_subdirs is protected by the d_lock. Outside that ··· 609 609 /* perhaps simple_empty(child) makes more sense */ 610 610 if (!list_empty(&child->d_subdirs)) { 611 611 spin_unlock(&parent->d_lock); 612 - mutex_unlock(&d_inode(parent)->i_mutex); 612 + inode_unlock(d_inode(parent)); 613 613 parent = child; 614 614 goto down; 615 615 } ··· 630 630 } 631 631 spin_unlock(&parent->d_lock); 632 632 633 - mutex_unlock(&d_inode(parent)->i_mutex); 633 + inode_unlock(d_inode(parent)); 634 634 child = parent; 635 635 parent = parent->d_parent; 636 - mutex_lock(&d_inode(parent)->i_mutex); 636 + inode_lock(d_inode(parent)); 637 637 638 638 if (child != dentry) 639 639 /* go up */ ··· 641 641 642 642 if (!__debugfs_remove(child, parent)) 643 643 simple_release_fs(&debugfs_mount, &debugfs_mount_count); 644 - mutex_unlock(&d_inode(parent)->i_mutex); 644 + inode_unlock(d_inode(parent)); 645 645 } 646 646 EXPORT_SYMBOL_GPL(debugfs_remove_recursive); 647 647
+6 -6
fs/devpts/inode.c
··· 255 255 if (!uid_valid(root_uid) || !gid_valid(root_gid)) 256 256 return -EINVAL; 257 257 258 - mutex_lock(&d_inode(root)->i_mutex); 258 + inode_lock(d_inode(root)); 259 259 260 260 /* If we have already created ptmx node, return */ 261 261 if (fsi->ptmx_dentry) { ··· 292 292 fsi->ptmx_dentry = dentry; 293 293 rc = 0; 294 294 out: 295 - mutex_unlock(&d_inode(root)->i_mutex); 295 + inode_unlock(d_inode(root)); 296 296 return rc; 297 297 } 298 298 ··· 615 615 616 616 sprintf(s, "%d", index); 617 617 618 - mutex_lock(&d_inode(root)->i_mutex); 618 + inode_lock(d_inode(root)); 619 619 620 620 dentry = d_alloc_name(root, s); 621 621 if (dentry) { ··· 626 626 inode = ERR_PTR(-ENOMEM); 627 627 } 628 628 629 - mutex_unlock(&d_inode(root)->i_mutex); 629 + inode_unlock(d_inode(root)); 630 630 631 631 return inode; 632 632 } ··· 671 671 672 672 BUG_ON(inode->i_rdev == MKDEV(TTYAUX_MAJOR, PTMX_MINOR)); 673 673 674 - mutex_lock(&d_inode(root)->i_mutex); 674 + inode_lock(d_inode(root)); 675 675 676 676 dentry = d_find_alias(inode); 677 677 ··· 680 680 dput(dentry); /* d_alloc_name() in devpts_pty_new() */ 681 681 dput(dentry); /* d_find_alias above */ 682 682 683 - mutex_unlock(&d_inode(root)->i_mutex); 683 + inode_unlock(d_inode(root)); 684 684 } 685 685 686 686 static int __init init_devpts_fs(void)
+4 -4
fs/direct-io.c
··· 1157 1157 iocb->ki_filp->f_mapping; 1158 1158 1159 1159 /* will be released by direct_io_worker */ 1160 - mutex_lock(&inode->i_mutex); 1160 + inode_lock(inode); 1161 1161 1162 1162 retval = filemap_write_and_wait_range(mapping, offset, 1163 1163 end - 1); 1164 1164 if (retval) { 1165 - mutex_unlock(&inode->i_mutex); 1165 + inode_unlock(inode); 1166 1166 kmem_cache_free(dio_cache, dio); 1167 1167 goto out; 1168 1168 } ··· 1173 1173 dio->i_size = i_size_read(inode); 1174 1174 if (iov_iter_rw(iter) == READ && offset >= dio->i_size) { 1175 1175 if (dio->flags & DIO_LOCKING) 1176 - mutex_unlock(&inode->i_mutex); 1176 + inode_unlock(inode); 1177 1177 kmem_cache_free(dio_cache, dio); 1178 1178 retval = 0; 1179 1179 goto out; ··· 1295 1295 * of protecting us from looking up uninitialized blocks. 1296 1296 */ 1297 1297 if (iov_iter_rw(iter) == READ && (dio->flags & DIO_LOCKING)) 1298 - mutex_unlock(&dio->inode->i_mutex); 1298 + inode_unlock(dio->inode); 1299 1299 1300 1300 /* 1301 1301 * The only time we want to leave bios in flight is when a successful
+16 -16
fs/ecryptfs/inode.c
··· 41 41 struct dentry *dir; 42 42 43 43 dir = dget_parent(dentry); 44 - mutex_lock_nested(&(d_inode(dir)->i_mutex), I_MUTEX_PARENT); 44 + inode_lock_nested(d_inode(dir), I_MUTEX_PARENT); 45 45 return dir; 46 46 } 47 47 48 48 static void unlock_dir(struct dentry *dir) 49 49 { 50 - mutex_unlock(&d_inode(dir)->i_mutex); 50 + inode_unlock(d_inode(dir)); 51 51 dput(dir); 52 52 } 53 53 ··· 397 397 int rc = 0; 398 398 399 399 lower_dir_dentry = ecryptfs_dentry_to_lower(ecryptfs_dentry->d_parent); 400 - mutex_lock(&d_inode(lower_dir_dentry)->i_mutex); 400 + inode_lock(d_inode(lower_dir_dentry)); 401 401 lower_dentry = lookup_one_len(ecryptfs_dentry->d_name.name, 402 402 lower_dir_dentry, 403 403 ecryptfs_dentry->d_name.len); 404 - mutex_unlock(&d_inode(lower_dir_dentry)->i_mutex); 404 + inode_unlock(d_inode(lower_dir_dentry)); 405 405 if (IS_ERR(lower_dentry)) { 406 406 rc = PTR_ERR(lower_dentry); 407 407 ecryptfs_printk(KERN_DEBUG, "%s: lookup_one_len() returned " ··· 426 426 "filename; rc = [%d]\n", __func__, rc); 427 427 goto out; 428 428 } 429 - mutex_lock(&d_inode(lower_dir_dentry)->i_mutex); 429 + inode_lock(d_inode(lower_dir_dentry)); 430 430 lower_dentry = lookup_one_len(encrypted_and_encoded_name, 431 431 lower_dir_dentry, 432 432 encrypted_and_encoded_name_size); 433 - mutex_unlock(&d_inode(lower_dir_dentry)->i_mutex); 433 + inode_unlock(d_inode(lower_dir_dentry)); 434 434 if (IS_ERR(lower_dentry)) { 435 435 rc = PTR_ERR(lower_dentry); 436 436 ecryptfs_printk(KERN_DEBUG, "%s: lookup_one_len() returned " ··· 869 869 if (!rc && lower_ia.ia_valid & ATTR_SIZE) { 870 870 struct dentry *lower_dentry = ecryptfs_dentry_to_lower(dentry); 871 871 872 - mutex_lock(&d_inode(lower_dentry)->i_mutex); 872 + inode_lock(d_inode(lower_dentry)); 873 873 rc = notify_change(lower_dentry, &lower_ia, NULL); 874 - mutex_unlock(&d_inode(lower_dentry)->i_mutex); 874 + inode_unlock(d_inode(lower_dentry)); 875 875 } 876 876 return rc; 877 877 } ··· 970 970 if (lower_ia.ia_valid & (ATTR_KILL_SUID | ATTR_KILL_SGID)) 971 971 lower_ia.ia_valid &= ~ATTR_MODE; 972 972 973 - mutex_lock(&d_inode(lower_dentry)->i_mutex); 973 + inode_lock(d_inode(lower_dentry)); 974 974 rc = notify_change(lower_dentry, &lower_ia, NULL); 975 - mutex_unlock(&d_inode(lower_dentry)->i_mutex); 975 + inode_unlock(d_inode(lower_dentry)); 976 976 out: 977 977 fsstack_copy_attr_all(inode, lower_inode); 978 978 return rc; ··· 1048 1048 rc = -EOPNOTSUPP; 1049 1049 goto out; 1050 1050 } 1051 - mutex_lock(&d_inode(lower_dentry)->i_mutex); 1051 + inode_lock(d_inode(lower_dentry)); 1052 1052 rc = d_inode(lower_dentry)->i_op->getxattr(lower_dentry, name, value, 1053 1053 size); 1054 - mutex_unlock(&d_inode(lower_dentry)->i_mutex); 1054 + inode_unlock(d_inode(lower_dentry)); 1055 1055 out: 1056 1056 return rc; 1057 1057 } ··· 1075 1075 rc = -EOPNOTSUPP; 1076 1076 goto out; 1077 1077 } 1078 - mutex_lock(&d_inode(lower_dentry)->i_mutex); 1078 + inode_lock(d_inode(lower_dentry)); 1079 1079 rc = d_inode(lower_dentry)->i_op->listxattr(lower_dentry, list, size); 1080 - mutex_unlock(&d_inode(lower_dentry)->i_mutex); 1080 + inode_unlock(d_inode(lower_dentry)); 1081 1081 out: 1082 1082 return rc; 1083 1083 } ··· 1092 1092 rc = -EOPNOTSUPP; 1093 1093 goto out; 1094 1094 } 1095 - mutex_lock(&d_inode(lower_dentry)->i_mutex); 1095 + inode_lock(d_inode(lower_dentry)); 1096 1096 rc = d_inode(lower_dentry)->i_op->removexattr(lower_dentry, name); 1097 - mutex_unlock(&d_inode(lower_dentry)->i_mutex); 1097 + inode_unlock(d_inode(lower_dentry)); 1098 1098 out: 1099 1099 return rc; 1100 1100 }
+2 -2
fs/ecryptfs/mmap.c
··· 436 436 rc = -ENOMEM; 437 437 goto out; 438 438 } 439 - mutex_lock(&lower_inode->i_mutex); 439 + inode_lock(lower_inode); 440 440 size = lower_inode->i_op->getxattr(lower_dentry, ECRYPTFS_XATTR_NAME, 441 441 xattr_virt, PAGE_CACHE_SIZE); 442 442 if (size < 0) ··· 444 444 put_unaligned_be64(i_size_read(ecryptfs_inode), xattr_virt); 445 445 rc = lower_inode->i_op->setxattr(lower_dentry, ECRYPTFS_XATTR_NAME, 446 446 xattr_virt, size, 0); 447 - mutex_unlock(&lower_inode->i_mutex); 447 + inode_unlock(lower_inode); 448 448 if (rc) 449 449 printk(KERN_ERR "Error whilst attempting to write inode size " 450 450 "to lower file xattr; rc = [%d]\n", rc);
+2 -2
fs/efivarfs/file.c
··· 50 50 d_delete(file->f_path.dentry); 51 51 dput(file->f_path.dentry); 52 52 } else { 53 - mutex_lock(&inode->i_mutex); 53 + inode_lock(inode); 54 54 i_size_write(inode, datasize + sizeof(attributes)); 55 - mutex_unlock(&inode->i_mutex); 55 + inode_unlock(inode); 56 56 } 57 57 58 58 bytes = count;
+2 -2
fs/efivarfs/super.c
··· 160 160 efivar_entry_size(entry, &size); 161 161 efivar_entry_add(entry, &efivarfs_list); 162 162 163 - mutex_lock(&inode->i_mutex); 163 + inode_lock(inode); 164 164 inode->i_private = entry; 165 165 i_size_write(inode, size + sizeof(entry->var.Attributes)); 166 - mutex_unlock(&inode->i_mutex); 166 + inode_unlock(inode); 167 167 d_add(dentry, inode); 168 168 169 169 return 0;
+2 -2
fs/exec.c
··· 1307 1307 return; 1308 1308 1309 1309 /* Be careful if suid/sgid is set */ 1310 - mutex_lock(&inode->i_mutex); 1310 + inode_lock(inode); 1311 1311 1312 1312 /* reload atomically mode/uid/gid now that lock held */ 1313 1313 mode = inode->i_mode; 1314 1314 uid = inode->i_uid; 1315 1315 gid = inode->i_gid; 1316 - mutex_unlock(&inode->i_mutex); 1316 + inode_unlock(inode); 1317 1317 1318 1318 /* We ignore suid/sgid if there are no mappings for them in the ns */ 1319 1319 if (!kuid_has_mapping(bprm->cred->user_ns, uid) ||
+2 -2
fs/exofs/file.c
··· 52 52 if (ret) 53 53 return ret; 54 54 55 - mutex_lock(&inode->i_mutex); 55 + inode_lock(inode); 56 56 ret = sync_inode_metadata(filp->f_mapping->host, 1); 57 - mutex_unlock(&inode->i_mutex); 57 + inode_unlock(inode); 58 58 return ret; 59 59 } 60 60
+6 -6
fs/exportfs/expfs.c
··· 124 124 int err; 125 125 126 126 parent = ERR_PTR(-EACCES); 127 - mutex_lock(&dentry->d_inode->i_mutex); 127 + inode_lock(dentry->d_inode); 128 128 if (mnt->mnt_sb->s_export_op->get_parent) 129 129 parent = mnt->mnt_sb->s_export_op->get_parent(dentry); 130 - mutex_unlock(&dentry->d_inode->i_mutex); 130 + inode_unlock(dentry->d_inode); 131 131 132 132 if (IS_ERR(parent)) { 133 133 dprintk("%s: get_parent of %ld failed, err %d\n", ··· 143 143 if (err) 144 144 goto out_err; 145 145 dprintk("%s: found name: %s\n", __func__, nbuf); 146 - mutex_lock(&parent->d_inode->i_mutex); 146 + inode_lock(parent->d_inode); 147 147 tmp = lookup_one_len(nbuf, parent, strlen(nbuf)); 148 - mutex_unlock(&parent->d_inode->i_mutex); 148 + inode_unlock(parent->d_inode); 149 149 if (IS_ERR(tmp)) { 150 150 dprintk("%s: lookup failed: %d\n", __func__, PTR_ERR(tmp)); 151 151 goto out_err; ··· 503 503 */ 504 504 err = exportfs_get_name(mnt, target_dir, nbuf, result); 505 505 if (!err) { 506 - mutex_lock(&target_dir->d_inode->i_mutex); 506 + inode_lock(target_dir->d_inode); 507 507 nresult = lookup_one_len(nbuf, target_dir, 508 508 strlen(nbuf)); 509 - mutex_unlock(&target_dir->d_inode->i_mutex); 509 + inode_unlock(target_dir->d_inode); 510 510 if (!IS_ERR(nresult)) { 511 511 if (nresult->d_inode) { 512 512 dput(result);
+6 -6
fs/ext2/ioctl.c
··· 51 51 52 52 flags = ext2_mask_flags(inode->i_mode, flags); 53 53 54 - mutex_lock(&inode->i_mutex); 54 + inode_lock(inode); 55 55 /* Is it quota file? Do not allow user to mess with it */ 56 56 if (IS_NOQUOTA(inode)) { 57 - mutex_unlock(&inode->i_mutex); 57 + inode_unlock(inode); 58 58 ret = -EPERM; 59 59 goto setflags_out; 60 60 } ··· 68 68 */ 69 69 if ((flags ^ oldflags) & (EXT2_APPEND_FL | EXT2_IMMUTABLE_FL)) { 70 70 if (!capable(CAP_LINUX_IMMUTABLE)) { 71 - mutex_unlock(&inode->i_mutex); 71 + inode_unlock(inode); 72 72 ret = -EPERM; 73 73 goto setflags_out; 74 74 } ··· 80 80 81 81 ext2_set_inode_flags(inode); 82 82 inode->i_ctime = CURRENT_TIME_SEC; 83 - mutex_unlock(&inode->i_mutex); 83 + inode_unlock(inode); 84 84 85 85 mark_inode_dirty(inode); 86 86 setflags_out: ··· 102 102 goto setversion_out; 103 103 } 104 104 105 - mutex_lock(&inode->i_mutex); 105 + inode_lock(inode); 106 106 inode->i_ctime = CURRENT_TIME_SEC; 107 107 inode->i_generation = generation; 108 - mutex_unlock(&inode->i_mutex); 108 + inode_unlock(inode); 109 109 110 110 mark_inode_dirty(inode); 111 111 setversion_out:
+1 -1
fs/ext4/ext4.h
··· 2896 2896 static inline void ext4_update_i_disksize(struct inode *inode, loff_t newsize) 2897 2897 { 2898 2898 WARN_ON_ONCE(S_ISREG(inode->i_mode) && 2899 - !mutex_is_locked(&inode->i_mutex)); 2899 + !inode_is_locked(inode)); 2900 2900 down_write(&EXT4_I(inode)->i_data_sem); 2901 2901 if (newsize > EXT4_I(inode)->i_disksize) 2902 2902 EXT4_I(inode)->i_disksize = newsize;
+10 -10
fs/ext4/extents.c
··· 4799 4799 else 4800 4800 max_blocks -= lblk; 4801 4801 4802 - mutex_lock(&inode->i_mutex); 4802 + inode_lock(inode); 4803 4803 4804 4804 /* 4805 4805 * Indirect files do not support unwritten extnets ··· 4902 4902 out_dio: 4903 4903 ext4_inode_resume_unlocked_dio(inode); 4904 4904 out_mutex: 4905 - mutex_unlock(&inode->i_mutex); 4905 + inode_unlock(inode); 4906 4906 return ret; 4907 4907 } 4908 4908 ··· 4973 4973 if (mode & FALLOC_FL_KEEP_SIZE) 4974 4974 flags |= EXT4_GET_BLOCKS_KEEP_SIZE; 4975 4975 4976 - mutex_lock(&inode->i_mutex); 4976 + inode_lock(inode); 4977 4977 4978 4978 /* 4979 4979 * We only support preallocation for extent-based files only ··· 5006 5006 EXT4_I(inode)->i_sync_tid); 5007 5007 } 5008 5008 out: 5009 - mutex_unlock(&inode->i_mutex); 5009 + inode_unlock(inode); 5010 5010 trace_ext4_fallocate_exit(inode, offset, max_blocks, ret); 5011 5011 return ret; 5012 5012 } ··· 5492 5492 return ret; 5493 5493 } 5494 5494 5495 - mutex_lock(&inode->i_mutex); 5495 + inode_lock(inode); 5496 5496 /* 5497 5497 * There is no need to overlap collapse range with EOF, in which case 5498 5498 * it is effectively a truncate operation ··· 5587 5587 up_write(&EXT4_I(inode)->i_mmap_sem); 5588 5588 ext4_inode_resume_unlocked_dio(inode); 5589 5589 out_mutex: 5590 - mutex_unlock(&inode->i_mutex); 5590 + inode_unlock(inode); 5591 5591 return ret; 5592 5592 } 5593 5593 ··· 5638 5638 return ret; 5639 5639 } 5640 5640 5641 - mutex_lock(&inode->i_mutex); 5641 + inode_lock(inode); 5642 5642 /* Currently just for extent based files */ 5643 5643 if (!ext4_test_inode_flag(inode, EXT4_INODE_EXTENTS)) { 5644 5644 ret = -EOPNOTSUPP; ··· 5757 5757 up_write(&EXT4_I(inode)->i_mmap_sem); 5758 5758 ext4_inode_resume_unlocked_dio(inode); 5759 5759 out_mutex: 5760 - mutex_unlock(&inode->i_mutex); 5760 + inode_unlock(inode); 5761 5761 return ret; 5762 5762 } 5763 5763 ··· 5792 5792 5793 5793 BUG_ON(!rwsem_is_locked(&EXT4_I(inode1)->i_data_sem)); 5794 5794 BUG_ON(!rwsem_is_locked(&EXT4_I(inode2)->i_data_sem)); 5795 - BUG_ON(!mutex_is_locked(&inode1->i_mutex)); 5796 - BUG_ON(!mutex_is_locked(&inode2->i_mutex)); 5795 + BUG_ON(!inode_is_locked(inode1)); 5796 + BUG_ON(!inode_is_locked(inode2)); 5797 5797 5798 5798 *erp = ext4_es_remove_extent(inode1, lblk1, count); 5799 5799 if (unlikely(*erp))
+9 -9
fs/ext4/file.c
··· 113 113 ext4_unwritten_wait(inode); 114 114 } 115 115 116 - mutex_lock(&inode->i_mutex); 116 + inode_lock(inode); 117 117 ret = generic_write_checks(iocb, from); 118 118 if (ret <= 0) 119 119 goto out; ··· 169 169 } 170 170 171 171 ret = __generic_file_write_iter(iocb, from); 172 - mutex_unlock(&inode->i_mutex); 172 + inode_unlock(inode); 173 173 174 174 if (ret > 0) { 175 175 ssize_t err; ··· 186 186 return ret; 187 187 188 188 out: 189 - mutex_unlock(&inode->i_mutex); 189 + inode_unlock(inode); 190 190 if (aio_mutex) 191 191 mutex_unlock(aio_mutex); 192 192 return ret; ··· 561 561 int blkbits; 562 562 int ret = 0; 563 563 564 - mutex_lock(&inode->i_mutex); 564 + inode_lock(inode); 565 565 566 566 isize = i_size_read(inode); 567 567 if (offset >= isize) { 568 - mutex_unlock(&inode->i_mutex); 568 + inode_unlock(inode); 569 569 return -ENXIO; 570 570 } 571 571 ··· 613 613 dataoff = (loff_t)last << blkbits; 614 614 } while (last <= end); 615 615 616 - mutex_unlock(&inode->i_mutex); 616 + inode_unlock(inode); 617 617 618 618 if (dataoff > isize) 619 619 return -ENXIO; ··· 634 634 int blkbits; 635 635 int ret = 0; 636 636 637 - mutex_lock(&inode->i_mutex); 637 + inode_lock(inode); 638 638 639 639 isize = i_size_read(inode); 640 640 if (offset >= isize) { 641 - mutex_unlock(&inode->i_mutex); 641 + inode_unlock(inode); 642 642 return -ENXIO; 643 643 } 644 644 ··· 689 689 break; 690 690 } while (last <= end); 691 691 692 - mutex_unlock(&inode->i_mutex); 692 + inode_unlock(inode); 693 693 694 694 if (holeoff > isize) 695 695 holeoff = isize;
+6 -6
fs/ext4/inode.c
··· 3231 3231 overwrite = *((int *)iocb->private); 3232 3232 3233 3233 if (overwrite) 3234 - mutex_unlock(&inode->i_mutex); 3234 + inode_unlock(inode); 3235 3235 3236 3236 /* 3237 3237 * We could direct write to holes and fallocate. ··· 3331 3331 inode_dio_end(inode); 3332 3332 /* take i_mutex locking again if we do a ovewrite dio */ 3333 3333 if (overwrite) 3334 - mutex_lock(&inode->i_mutex); 3334 + inode_lock(inode); 3335 3335 3336 3336 return ret; 3337 3337 } ··· 3653 3653 handle_t *handle; 3654 3654 loff_t size = i_size_read(inode); 3655 3655 3656 - WARN_ON(!mutex_is_locked(&inode->i_mutex)); 3656 + WARN_ON(!inode_is_locked(inode)); 3657 3657 if (offset > size || offset + len < size) 3658 3658 return 0; 3659 3659 ··· 3707 3707 return ret; 3708 3708 } 3709 3709 3710 - mutex_lock(&inode->i_mutex); 3710 + inode_lock(inode); 3711 3711 3712 3712 /* No need to punch hole beyond i_size */ 3713 3713 if (offset >= inode->i_size) ··· 3809 3809 up_write(&EXT4_I(inode)->i_mmap_sem); 3810 3810 ext4_inode_resume_unlocked_dio(inode); 3811 3811 out_mutex: 3812 - mutex_unlock(&inode->i_mutex); 3812 + inode_unlock(inode); 3813 3813 return ret; 3814 3814 } 3815 3815 ··· 3879 3879 * have i_mutex locked because it's not necessary. 3880 3880 */ 3881 3881 if (!(inode->i_state & (I_NEW|I_FREEING))) 3882 - WARN_ON(!mutex_is_locked(&inode->i_mutex)); 3882 + WARN_ON(!inode_is_locked(inode)); 3883 3883 trace_ext4_truncate_enter(inode); 3884 3884 3885 3885 if (!ext4_can_truncate(inode))
+10 -10
fs/ext4/ioctl.c
··· 330 330 return err; 331 331 332 332 err = -EPERM; 333 - mutex_lock(&inode->i_mutex); 333 + inode_lock(inode); 334 334 /* Is it quota file? Do not allow user to mess with it */ 335 335 if (IS_NOQUOTA(inode)) 336 336 goto out_unlock; ··· 381 381 out_stop: 382 382 ext4_journal_stop(handle); 383 383 out_unlock: 384 - mutex_unlock(&inode->i_mutex); 384 + inode_unlock(inode); 385 385 mnt_drop_write_file(filp); 386 386 return err; 387 387 } ··· 464 464 465 465 flags = ext4_mask_flags(inode->i_mode, flags); 466 466 467 - mutex_lock(&inode->i_mutex); 467 + inode_lock(inode); 468 468 err = ext4_ioctl_setflags(inode, flags); 469 - mutex_unlock(&inode->i_mutex); 469 + inode_unlock(inode); 470 470 mnt_drop_write_file(filp); 471 471 return err; 472 472 } ··· 497 497 goto setversion_out; 498 498 } 499 499 500 - mutex_lock(&inode->i_mutex); 500 + inode_lock(inode); 501 501 handle = ext4_journal_start(inode, EXT4_HT_INODE, 1); 502 502 if (IS_ERR(handle)) { 503 503 err = PTR_ERR(handle); ··· 512 512 ext4_journal_stop(handle); 513 513 514 514 unlock_out: 515 - mutex_unlock(&inode->i_mutex); 515 + inode_unlock(inode); 516 516 setversion_out: 517 517 mnt_drop_write_file(filp); 518 518 return err; ··· 658 658 * ext4_ext_swap_inode_data before we switch the 659 659 * inode format to prevent read. 660 660 */ 661 - mutex_lock(&(inode->i_mutex)); 661 + inode_lock((inode)); 662 662 err = ext4_ext_migrate(inode); 663 - mutex_unlock(&(inode->i_mutex)); 663 + inode_unlock((inode)); 664 664 mnt_drop_write_file(filp); 665 665 return err; 666 666 } ··· 876 876 flags = ext4_xflags_to_iflags(fa.fsx_xflags); 877 877 flags = ext4_mask_flags(inode->i_mode, flags); 878 878 879 - mutex_lock(&inode->i_mutex); 879 + inode_lock(inode); 880 880 flags = (ei->i_flags & ~EXT4_FL_XFLAG_VISIBLE) | 881 881 (flags & EXT4_FL_XFLAG_VISIBLE); 882 882 err = ext4_ioctl_setflags(inode, flags); 883 - mutex_unlock(&inode->i_mutex); 883 + inode_unlock(inode); 884 884 mnt_drop_write_file(filp); 885 885 if (err) 886 886 return err;
+2 -2
fs/ext4/namei.c
··· 2753 2753 return 0; 2754 2754 2755 2755 WARN_ON_ONCE(!(inode->i_state & (I_NEW | I_FREEING)) && 2756 - !mutex_is_locked(&inode->i_mutex)); 2756 + !inode_is_locked(inode)); 2757 2757 /* 2758 2758 * Exit early if inode already is on orphan list. This is a big speedup 2759 2759 * since we don't have to contend on the global s_orphan_lock. ··· 2835 2835 return 0; 2836 2836 2837 2837 WARN_ON_ONCE(!(inode->i_state & (I_NEW | I_FREEING)) && 2838 - !mutex_is_locked(&inode->i_mutex)); 2838 + !inode_is_locked(inode)); 2839 2839 /* Do this quick check before taking global s_orphan_lock. */ 2840 2840 if (list_empty(&ei->i_orphan)) 2841 2841 return 0;
+2 -2
fs/ext4/super.c
··· 2286 2286 __func__, inode->i_ino, inode->i_size); 2287 2287 jbd_debug(2, "truncating inode %lu to %lld bytes\n", 2288 2288 inode->i_ino, inode->i_size); 2289 - mutex_lock(&inode->i_mutex); 2289 + inode_lock(inode); 2290 2290 truncate_inode_pages(inode->i_mapping, inode->i_size); 2291 2291 ext4_truncate(inode); 2292 - mutex_unlock(&inode->i_mutex); 2292 + inode_unlock(inode); 2293 2293 nr_truncates++; 2294 2294 } else { 2295 2295 if (test_opt(sb, DEBUG))
+2 -2
fs/f2fs/data.c
··· 794 794 return ret; 795 795 } 796 796 797 - mutex_lock(&inode->i_mutex); 797 + inode_lock(inode); 798 798 799 799 isize = i_size_read(inode); 800 800 if (start >= isize) ··· 860 860 if (ret == 1) 861 861 ret = 0; 862 862 863 - mutex_unlock(&inode->i_mutex); 863 + inode_unlock(inode); 864 864 return ret; 865 865 } 866 866
+10 -10
fs/f2fs/file.c
··· 333 333 loff_t isize; 334 334 int err = 0; 335 335 336 - mutex_lock(&inode->i_mutex); 336 + inode_lock(inode); 337 337 338 338 isize = i_size_read(inode); 339 339 if (offset >= isize) ··· 388 388 found: 389 389 if (whence == SEEK_HOLE && data_ofs > isize) 390 390 data_ofs = isize; 391 - mutex_unlock(&inode->i_mutex); 391 + inode_unlock(inode); 392 392 return vfs_setpos(file, data_ofs, maxbytes); 393 393 fail: 394 - mutex_unlock(&inode->i_mutex); 394 + inode_unlock(inode); 395 395 return -ENXIO; 396 396 } 397 397 ··· 1219 1219 FALLOC_FL_INSERT_RANGE)) 1220 1220 return -EOPNOTSUPP; 1221 1221 1222 - mutex_lock(&inode->i_mutex); 1222 + inode_lock(inode); 1223 1223 1224 1224 if (mode & FALLOC_FL_PUNCH_HOLE) { 1225 1225 if (offset >= inode->i_size) ··· 1243 1243 } 1244 1244 1245 1245 out: 1246 - mutex_unlock(&inode->i_mutex); 1246 + inode_unlock(inode); 1247 1247 1248 1248 trace_f2fs_fallocate(inode, mode, offset, len, ret); 1249 1249 return ret; ··· 1307 1307 1308 1308 flags = f2fs_mask_flags(inode->i_mode, flags); 1309 1309 1310 - mutex_lock(&inode->i_mutex); 1310 + inode_lock(inode); 1311 1311 1312 1312 oldflags = fi->i_flags; 1313 1313 1314 1314 if ((flags ^ oldflags) & (FS_APPEND_FL | FS_IMMUTABLE_FL)) { 1315 1315 if (!capable(CAP_LINUX_IMMUTABLE)) { 1316 - mutex_unlock(&inode->i_mutex); 1316 + inode_unlock(inode); 1317 1317 ret = -EPERM; 1318 1318 goto out; 1319 1319 } ··· 1322 1322 flags = flags & FS_FL_USER_MODIFIABLE; 1323 1323 flags |= oldflags & ~FS_FL_USER_MODIFIABLE; 1324 1324 fi->i_flags = flags; 1325 - mutex_unlock(&inode->i_mutex); 1325 + inode_unlock(inode); 1326 1326 1327 1327 f2fs_set_inode_flags(inode); 1328 1328 inode->i_ctime = CURRENT_TIME; ··· 1667 1667 1668 1668 f2fs_balance_fs(sbi, true); 1669 1669 1670 - mutex_lock(&inode->i_mutex); 1670 + inode_lock(inode); 1671 1671 1672 1672 /* writeback all dirty pages in the range */ 1673 1673 err = filemap_write_and_wait_range(inode->i_mapping, range->start, ··· 1778 1778 clear_out: 1779 1779 clear_inode_flag(F2FS_I(inode), FI_DO_DEFRAG); 1780 1780 out: 1781 - mutex_unlock(&inode->i_mutex); 1781 + inode_unlock(inode); 1782 1782 if (!err) 1783 1783 range->len = (u64)total << PAGE_CACHE_SHIFT; 1784 1784 return err;
+2 -2
fs/fat/dir.c
··· 769 769 770 770 buf.dirent = dirent; 771 771 buf.result = 0; 772 - mutex_lock(&inode->i_mutex); 772 + inode_lock(inode); 773 773 buf.ctx.pos = file->f_pos; 774 774 ret = -ENOENT; 775 775 if (!IS_DEADDIR(inode)) { ··· 777 777 short_only, both ? &buf : NULL); 778 778 file->f_pos = buf.ctx.pos; 779 779 } 780 - mutex_unlock(&inode->i_mutex); 780 + inode_unlock(inode); 781 781 if (ret >= 0) 782 782 ret = buf.result; 783 783 return ret;
+6 -6
fs/fat/file.c
··· 24 24 { 25 25 u32 attr; 26 26 27 - mutex_lock(&inode->i_mutex); 27 + inode_lock(inode); 28 28 attr = fat_make_attrs(inode); 29 - mutex_unlock(&inode->i_mutex); 29 + inode_unlock(inode); 30 30 31 31 return put_user(attr, user_attr); 32 32 } ··· 47 47 err = mnt_want_write_file(file); 48 48 if (err) 49 49 goto out; 50 - mutex_lock(&inode->i_mutex); 50 + inode_lock(inode); 51 51 52 52 /* 53 53 * ATTR_VOLUME and ATTR_DIR cannot be changed; this also ··· 109 109 fat_save_attrs(inode, attr); 110 110 mark_inode_dirty(inode); 111 111 out_unlock_inode: 112 - mutex_unlock(&inode->i_mutex); 112 + inode_unlock(inode); 113 113 mnt_drop_write_file(file); 114 114 out: 115 115 return err; ··· 246 246 if (!S_ISREG(inode->i_mode)) 247 247 return -EOPNOTSUPP; 248 248 249 - mutex_lock(&inode->i_mutex); 249 + inode_lock(inode); 250 250 if (mode & FALLOC_FL_KEEP_SIZE) { 251 251 ondisksize = inode->i_blocks << 9; 252 252 if ((offset + len) <= ondisksize) ··· 272 272 } 273 273 274 274 error: 275 - mutex_unlock(&inode->i_mutex); 275 + inode_unlock(inode); 276 276 return err; 277 277 } 278 278
+5 -5
fs/fuse/dir.c
··· 944 944 if (!parent) 945 945 return -ENOENT; 946 946 947 - mutex_lock(&parent->i_mutex); 947 + inode_lock(parent); 948 948 if (!S_ISDIR(parent->i_mode)) 949 949 goto unlock; 950 950 ··· 962 962 fuse_invalidate_entry(entry); 963 963 964 964 if (child_nodeid != 0 && d_really_is_positive(entry)) { 965 - mutex_lock(&d_inode(entry)->i_mutex); 965 + inode_lock(d_inode(entry)); 966 966 if (get_node_id(d_inode(entry)) != child_nodeid) { 967 967 err = -ENOENT; 968 968 goto badentry; ··· 983 983 clear_nlink(d_inode(entry)); 984 984 err = 0; 985 985 badentry: 986 - mutex_unlock(&d_inode(entry)->i_mutex); 986 + inode_unlock(d_inode(entry)); 987 987 if (!err) 988 988 d_delete(entry); 989 989 } else { ··· 992 992 dput(entry); 993 993 994 994 unlock: 995 - mutex_unlock(&parent->i_mutex); 995 + inode_unlock(parent); 996 996 iput(parent); 997 997 return err; 998 998 } ··· 1504 1504 struct fuse_conn *fc = get_fuse_conn(inode); 1505 1505 struct fuse_inode *fi = get_fuse_inode(inode); 1506 1506 1507 - BUG_ON(!mutex_is_locked(&inode->i_mutex)); 1507 + BUG_ON(!inode_is_locked(inode)); 1508 1508 1509 1509 spin_lock(&fc->lock); 1510 1510 BUG_ON(fi->writectr < 0);
+18 -18
fs/fuse/file.c
··· 207 207 return err; 208 208 209 209 if (lock_inode) 210 - mutex_lock(&inode->i_mutex); 210 + inode_lock(inode); 211 211 212 212 err = fuse_do_open(fc, get_node_id(inode), file, isdir); 213 213 ··· 215 215 fuse_finish_open(inode, file); 216 216 217 217 if (lock_inode) 218 - mutex_unlock(&inode->i_mutex); 218 + inode_unlock(inode); 219 219 220 220 return err; 221 221 } ··· 413 413 if (err) 414 414 return err; 415 415 416 - mutex_lock(&inode->i_mutex); 416 + inode_lock(inode); 417 417 fuse_sync_writes(inode); 418 - mutex_unlock(&inode->i_mutex); 418 + inode_unlock(inode); 419 419 420 420 req = fuse_get_req_nofail_nopages(fc, file); 421 421 memset(&inarg, 0, sizeof(inarg)); ··· 450 450 if (is_bad_inode(inode)) 451 451 return -EIO; 452 452 453 - mutex_lock(&inode->i_mutex); 453 + inode_lock(inode); 454 454 455 455 /* 456 456 * Start writeback against all dirty pages of the inode, then ··· 486 486 err = 0; 487 487 } 488 488 out: 489 - mutex_unlock(&inode->i_mutex); 489 + inode_unlock(inode); 490 490 return err; 491 491 } 492 492 ··· 1160 1160 return generic_file_write_iter(iocb, from); 1161 1161 } 1162 1162 1163 - mutex_lock(&inode->i_mutex); 1163 + inode_lock(inode); 1164 1164 1165 1165 /* We can write back this queue in page reclaim */ 1166 1166 current->backing_dev_info = inode_to_bdi(inode); ··· 1210 1210 } 1211 1211 out: 1212 1212 current->backing_dev_info = NULL; 1213 - mutex_unlock(&inode->i_mutex); 1213 + inode_unlock(inode); 1214 1214 1215 1215 return written ? written : err; 1216 1216 } ··· 1322 1322 1323 1323 if (!cuse && fuse_range_is_writeback(inode, idx_from, idx_to)) { 1324 1324 if (!write) 1325 - mutex_lock(&inode->i_mutex); 1325 + inode_lock(inode); 1326 1326 fuse_sync_writes(inode); 1327 1327 if (!write) 1328 - mutex_unlock(&inode->i_mutex); 1328 + inode_unlock(inode); 1329 1329 } 1330 1330 1331 1331 while (count) { ··· 1413 1413 return -EIO; 1414 1414 1415 1415 /* Don't allow parallel writes to the same file */ 1416 - mutex_lock(&inode->i_mutex); 1416 + inode_lock(inode); 1417 1417 res = generic_write_checks(iocb, from); 1418 1418 if (res > 0) 1419 1419 res = fuse_direct_io(&io, from, &iocb->ki_pos, FUSE_DIO_WRITE); 1420 1420 fuse_invalidate_attr(inode); 1421 1421 if (res > 0) 1422 1422 fuse_write_update_size(inode, iocb->ki_pos); 1423 - mutex_unlock(&inode->i_mutex); 1423 + inode_unlock(inode); 1424 1424 1425 1425 return res; 1426 1426 } ··· 2287 2287 retval = generic_file_llseek(file, offset, whence); 2288 2288 break; 2289 2289 case SEEK_END: 2290 - mutex_lock(&inode->i_mutex); 2290 + inode_lock(inode); 2291 2291 retval = fuse_update_attributes(inode, NULL, file, NULL); 2292 2292 if (!retval) 2293 2293 retval = generic_file_llseek(file, offset, whence); 2294 - mutex_unlock(&inode->i_mutex); 2294 + inode_unlock(inode); 2295 2295 break; 2296 2296 case SEEK_HOLE: 2297 2297 case SEEK_DATA: 2298 - mutex_lock(&inode->i_mutex); 2298 + inode_lock(inode); 2299 2299 retval = fuse_lseek(file, offset, whence); 2300 - mutex_unlock(&inode->i_mutex); 2300 + inode_unlock(inode); 2301 2301 break; 2302 2302 default: 2303 2303 retval = -EINVAL; ··· 2944 2944 return -EOPNOTSUPP; 2945 2945 2946 2946 if (lock_inode) { 2947 - mutex_lock(&inode->i_mutex); 2947 + inode_lock(inode); 2948 2948 if (mode & FALLOC_FL_PUNCH_HOLE) { 2949 2949 loff_t endbyte = offset + length - 1; 2950 2950 err = filemap_write_and_wait_range(inode->i_mapping, ··· 2990 2990 clear_bit(FUSE_I_SIZE_UNSTABLE, &fi->state); 2991 2991 2992 2992 if (lock_inode) 2993 - mutex_unlock(&inode->i_mutex); 2993 + inode_unlock(inode); 2994 2994 2995 2995 return err; 2996 2996 }
+2 -2
fs/gfs2/file.c
··· 914 914 if ((mode & ~FALLOC_FL_KEEP_SIZE) || gfs2_is_jdata(ip)) 915 915 return -EOPNOTSUPP; 916 916 917 - mutex_lock(&inode->i_mutex); 917 + inode_lock(inode); 918 918 919 919 gfs2_holder_init(ip->i_gl, LM_ST_EXCLUSIVE, 0, &gh); 920 920 ret = gfs2_glock_nq(&gh); ··· 946 946 gfs2_glock_dq(&gh); 947 947 out_uninit: 948 948 gfs2_holder_uninit(&gh); 949 - mutex_unlock(&inode->i_mutex); 949 + inode_unlock(inode); 950 950 return ret; 951 951 } 952 952
+2 -2
fs/gfs2/inode.c
··· 2067 2067 if (ret) 2068 2068 return ret; 2069 2069 2070 - mutex_lock(&inode->i_mutex); 2070 + inode_lock(inode); 2071 2071 2072 2072 ret = gfs2_glock_nq_init(ip->i_gl, LM_ST_SHARED, 0, &gh); 2073 2073 if (ret) ··· 2094 2094 2095 2095 gfs2_glock_dq_uninit(&gh); 2096 2096 out: 2097 - mutex_unlock(&inode->i_mutex); 2097 + inode_unlock(inode); 2098 2098 return ret; 2099 2099 } 2100 2100
+4 -4
fs/gfs2/quota.c
··· 888 888 return -ENOMEM; 889 889 890 890 sort(qda, num_qd, sizeof(struct gfs2_quota_data *), sort_qd, NULL); 891 - mutex_lock(&ip->i_inode.i_mutex); 891 + inode_lock(&ip->i_inode); 892 892 for (qx = 0; qx < num_qd; qx++) { 893 893 error = gfs2_glock_nq_init(qda[qx]->qd_gl, LM_ST_EXCLUSIVE, 894 894 GL_NOCACHE, &ghs[qx]); ··· 953 953 out: 954 954 while (qx--) 955 955 gfs2_glock_dq_uninit(&ghs[qx]); 956 - mutex_unlock(&ip->i_inode.i_mutex); 956 + inode_unlock(&ip->i_inode); 957 957 kfree(ghs); 958 958 gfs2_log_flush(ip->i_gl->gl_name.ln_sbd, ip->i_gl, NORMAL_FLUSH); 959 959 return error; ··· 1674 1674 if (error) 1675 1675 goto out_put; 1676 1676 1677 - mutex_lock(&ip->i_inode.i_mutex); 1677 + inode_lock(&ip->i_inode); 1678 1678 error = gfs2_glock_nq_init(qd->qd_gl, LM_ST_EXCLUSIVE, 0, &q_gh); 1679 1679 if (error) 1680 1680 goto out_unlockput; ··· 1739 1739 out_q: 1740 1740 gfs2_glock_dq_uninit(&q_gh); 1741 1741 out_unlockput: 1742 - mutex_unlock(&ip->i_inode.i_mutex); 1742 + inode_unlock(&ip->i_inode); 1743 1743 out_put: 1744 1744 qd_put(qd); 1745 1745 return error;
+2 -2
fs/hfs/dir.c
··· 173 173 { 174 174 struct hfs_readdir_data *rd = file->private_data; 175 175 if (rd) { 176 - mutex_lock(&inode->i_mutex); 176 + inode_lock(inode); 177 177 list_del(&rd->list); 178 - mutex_unlock(&inode->i_mutex); 178 + inode_unlock(inode); 179 179 kfree(rd); 180 180 } 181 181 return 0;
+4 -4
fs/hfs/inode.c
··· 570 570 if (HFS_IS_RSRC(inode)) 571 571 inode = HFS_I(inode)->rsrc_inode; 572 572 if (atomic_dec_and_test(&HFS_I(inode)->opencnt)) { 573 - mutex_lock(&inode->i_mutex); 573 + inode_lock(inode); 574 574 hfs_file_truncate(inode); 575 575 //if (inode->i_flags & S_DEAD) { 576 576 // hfs_delete_cat(inode->i_ino, HFSPLUS_SB(sb).hidden_dir, NULL); 577 577 // hfs_delete_inode(inode); 578 578 //} 579 - mutex_unlock(&inode->i_mutex); 579 + inode_unlock(inode); 580 580 } 581 581 return 0; 582 582 } ··· 656 656 ret = filemap_write_and_wait_range(inode->i_mapping, start, end); 657 657 if (ret) 658 658 return ret; 659 - mutex_lock(&inode->i_mutex); 659 + inode_lock(inode); 660 660 661 661 /* sync the inode to buffers */ 662 662 ret = write_inode_now(inode, 0); ··· 668 668 err = sync_blockdev(sb->s_bdev); 669 669 if (!ret) 670 670 ret = err; 671 - mutex_unlock(&inode->i_mutex); 671 + inode_unlock(inode); 672 672 return ret; 673 673 } 674 674
+2 -2
fs/hfsplus/dir.c
··· 284 284 { 285 285 struct hfsplus_readdir_data *rd = file->private_data; 286 286 if (rd) { 287 - mutex_lock(&inode->i_mutex); 287 + inode_lock(inode); 288 288 list_del(&rd->list); 289 - mutex_unlock(&inode->i_mutex); 289 + inode_unlock(inode); 290 290 kfree(rd); 291 291 } 292 292 return 0;
+4 -4
fs/hfsplus/inode.c
··· 229 229 if (HFSPLUS_IS_RSRC(inode)) 230 230 inode = HFSPLUS_I(inode)->rsrc_inode; 231 231 if (atomic_dec_and_test(&HFSPLUS_I(inode)->opencnt)) { 232 - mutex_lock(&inode->i_mutex); 232 + inode_lock(inode); 233 233 hfsplus_file_truncate(inode); 234 234 if (inode->i_flags & S_DEAD) { 235 235 hfsplus_delete_cat(inode->i_ino, 236 236 HFSPLUS_SB(sb)->hidden_dir, NULL); 237 237 hfsplus_delete_inode(inode); 238 238 } 239 - mutex_unlock(&inode->i_mutex); 239 + inode_unlock(inode); 240 240 } 241 241 return 0; 242 242 } ··· 286 286 error = filemap_write_and_wait_range(inode->i_mapping, start, end); 287 287 if (error) 288 288 return error; 289 - mutex_lock(&inode->i_mutex); 289 + inode_lock(inode); 290 290 291 291 /* 292 292 * Sync inode metadata into the catalog and extent trees. ··· 327 327 if (!test_bit(HFSPLUS_SB_NOBARRIER, &sbi->flags)) 328 328 blkdev_issue_flush(inode->i_sb->s_bdev, GFP_KERNEL, NULL); 329 329 330 - mutex_unlock(&inode->i_mutex); 330 + inode_unlock(inode); 331 331 332 332 return error; 333 333 }
+2 -2
fs/hfsplus/ioctl.c
··· 93 93 goto out_drop_write; 94 94 } 95 95 96 - mutex_lock(&inode->i_mutex); 96 + inode_lock(inode); 97 97 98 98 if ((flags & (FS_IMMUTABLE_FL|FS_APPEND_FL)) || 99 99 inode->i_flags & (S_IMMUTABLE|S_APPEND)) { ··· 126 126 mark_inode_dirty(inode); 127 127 128 128 out_unlock_inode: 129 - mutex_unlock(&inode->i_mutex); 129 + inode_unlock(inode); 130 130 out_drop_write: 131 131 mnt_drop_write_file(file); 132 132 out:
+2 -2
fs/hostfs/hostfs_kern.c
··· 378 378 if (ret) 379 379 return ret; 380 380 381 - mutex_lock(&inode->i_mutex); 381 + inode_lock(inode); 382 382 ret = fsync_file(HOSTFS_I(inode)->fd, datasync); 383 - mutex_unlock(&inode->i_mutex); 383 + inode_unlock(inode); 384 384 385 385 return ret; 386 386 }
+3 -3
fs/hpfs/dir.c
··· 33 33 if (whence == SEEK_DATA || whence == SEEK_HOLE) 34 34 return -EINVAL; 35 35 36 - mutex_lock(&i->i_mutex); 36 + inode_lock(i); 37 37 hpfs_lock(s); 38 38 39 39 /*pr_info("dir lseek\n");*/ ··· 48 48 ok: 49 49 filp->f_pos = new_off; 50 50 hpfs_unlock(s); 51 - mutex_unlock(&i->i_mutex); 51 + inode_unlock(i); 52 52 return new_off; 53 53 fail: 54 54 /*pr_warn("illegal lseek: %016llx\n", new_off);*/ 55 55 hpfs_unlock(s); 56 - mutex_unlock(&i->i_mutex); 56 + inode_unlock(i); 57 57 return -ESPIPE; 58 58 } 59 59
+6 -6
fs/hugetlbfs/inode.c
··· 141 141 142 142 vma_len = (loff_t)(vma->vm_end - vma->vm_start); 143 143 144 - mutex_lock(&inode->i_mutex); 144 + inode_lock(inode); 145 145 file_accessed(file); 146 146 147 147 ret = -ENOMEM; ··· 157 157 if (vma->vm_flags & VM_WRITE && inode->i_size < len) 158 158 inode->i_size = len; 159 159 out: 160 - mutex_unlock(&inode->i_mutex); 160 + inode_unlock(inode); 161 161 162 162 return ret; 163 163 } ··· 530 530 if (hole_end > hole_start) { 531 531 struct address_space *mapping = inode->i_mapping; 532 532 533 - mutex_lock(&inode->i_mutex); 533 + inode_lock(inode); 534 534 i_mmap_lock_write(mapping); 535 535 if (!RB_EMPTY_ROOT(&mapping->i_mmap)) 536 536 hugetlb_vmdelete_list(&mapping->i_mmap, ··· 538 538 hole_end >> PAGE_SHIFT); 539 539 i_mmap_unlock_write(mapping); 540 540 remove_inode_hugepages(inode, hole_start, hole_end); 541 - mutex_unlock(&inode->i_mutex); 541 + inode_unlock(inode); 542 542 } 543 543 544 544 return 0; ··· 572 572 start = offset >> hpage_shift; 573 573 end = (offset + len + hpage_size - 1) >> hpage_shift; 574 574 575 - mutex_lock(&inode->i_mutex); 575 + inode_lock(inode); 576 576 577 577 /* We need to check rlimit even when FALLOC_FL_KEEP_SIZE */ 578 578 error = inode_newsize_ok(inode, offset + len); ··· 659 659 i_size_write(inode, offset + len); 660 660 inode->i_ctime = CURRENT_TIME; 661 661 out: 662 - mutex_unlock(&inode->i_mutex); 662 + inode_unlock(inode); 663 663 return error; 664 664 } 665 665
+4 -4
fs/inode.c
··· 966 966 swap(inode1, inode2); 967 967 968 968 if (inode1 && !S_ISDIR(inode1->i_mode)) 969 - mutex_lock(&inode1->i_mutex); 969 + inode_lock(inode1); 970 970 if (inode2 && !S_ISDIR(inode2->i_mode) && inode2 != inode1) 971 - mutex_lock_nested(&inode2->i_mutex, I_MUTEX_NONDIR2); 971 + inode_lock_nested(inode2, I_MUTEX_NONDIR2); 972 972 } 973 973 EXPORT_SYMBOL(lock_two_nondirectories); 974 974 ··· 980 980 void unlock_two_nondirectories(struct inode *inode1, struct inode *inode2) 981 981 { 982 982 if (inode1 && !S_ISDIR(inode1->i_mode)) 983 - mutex_unlock(&inode1->i_mutex); 983 + inode_unlock(inode1); 984 984 if (inode2 && !S_ISDIR(inode2->i_mode) && inode2 != inode1) 985 - mutex_unlock(&inode2->i_mutex); 985 + inode_unlock(inode2); 986 986 } 987 987 EXPORT_SYMBOL(unlock_two_nondirectories); 988 988
+2 -2
fs/ioctl.c
··· 434 434 u64 len, get_block_t *get_block) 435 435 { 436 436 int ret; 437 - mutex_lock(&inode->i_mutex); 437 + inode_lock(inode); 438 438 ret = __generic_block_fiemap(inode, fieinfo, start, len, get_block); 439 - mutex_unlock(&inode->i_mutex); 439 + inode_unlock(inode); 440 440 return ret; 441 441 } 442 442 EXPORT_SYMBOL(generic_block_fiemap);
+2 -2
fs/jffs2/file.c
··· 39 39 if (ret) 40 40 return ret; 41 41 42 - mutex_lock(&inode->i_mutex); 42 + inode_lock(inode); 43 43 /* Trigger GC to flush any pending writes for this inode */ 44 44 jffs2_flush_wbuf_gc(c, inode->i_ino); 45 - mutex_unlock(&inode->i_mutex); 45 + inode_unlock(inode); 46 46 47 47 return 0; 48 48 }
+3 -3
fs/jfs/file.c
··· 38 38 if (rc) 39 39 return rc; 40 40 41 - mutex_lock(&inode->i_mutex); 41 + inode_lock(inode); 42 42 if (!(inode->i_state & I_DIRTY_ALL) || 43 43 (datasync && !(inode->i_state & I_DIRTY_DATASYNC))) { 44 44 /* Make sure committed changes hit the disk */ 45 45 jfs_flush_journal(JFS_SBI(inode->i_sb)->log, 1); 46 - mutex_unlock(&inode->i_mutex); 46 + inode_unlock(inode); 47 47 return rc; 48 48 } 49 49 50 50 rc |= jfs_commit_inode(inode, 1); 51 - mutex_unlock(&inode->i_mutex); 51 + inode_unlock(inode); 52 52 53 53 return rc ? -EIO : 0; 54 54 }
+3 -3
fs/jfs/ioctl.c
··· 96 96 } 97 97 98 98 /* Lock against other parallel changes of flags */ 99 - mutex_lock(&inode->i_mutex); 99 + inode_lock(inode); 100 100 101 101 jfs_get_inode_flags(jfs_inode); 102 102 oldflags = jfs_inode->mode2; ··· 109 109 ((flags ^ oldflags) & 110 110 (JFS_APPEND_FL | JFS_IMMUTABLE_FL))) { 111 111 if (!capable(CAP_LINUX_IMMUTABLE)) { 112 - mutex_unlock(&inode->i_mutex); 112 + inode_unlock(inode); 113 113 err = -EPERM; 114 114 goto setflags_out; 115 115 } ··· 120 120 jfs_inode->mode2 = flags; 121 121 122 122 jfs_set_inode_flags(inode); 123 - mutex_unlock(&inode->i_mutex); 123 + inode_unlock(inode); 124 124 inode->i_ctime = CURRENT_TIME_SEC; 125 125 mark_inode_dirty(inode); 126 126 setflags_out:
+3 -3
fs/jfs/super.c
··· 792 792 struct buffer_head tmp_bh; 793 793 struct buffer_head *bh; 794 794 795 - mutex_lock(&inode->i_mutex); 795 + inode_lock(inode); 796 796 while (towrite > 0) { 797 797 tocopy = sb->s_blocksize - offset < towrite ? 798 798 sb->s_blocksize - offset : towrite; ··· 824 824 } 825 825 out: 826 826 if (len == towrite) { 827 - mutex_unlock(&inode->i_mutex); 827 + inode_unlock(inode); 828 828 return err; 829 829 } 830 830 if (inode->i_size < off+len-towrite) ··· 832 832 inode->i_version++; 833 833 inode->i_mtime = inode->i_ctime = CURRENT_TIME; 834 834 mark_inode_dirty(inode); 835 - mutex_unlock(&inode->i_mutex); 835 + inode_unlock(inode); 836 836 return len - towrite; 837 837 } 838 838
+2 -2
fs/kernfs/dir.c
··· 1511 1511 struct inode *inode = file_inode(file); 1512 1512 loff_t ret; 1513 1513 1514 - mutex_lock(&inode->i_mutex); 1514 + inode_lock(inode); 1515 1515 ret = generic_file_llseek(file, offset, whence); 1516 - mutex_unlock(&inode->i_mutex); 1516 + inode_unlock(inode); 1517 1517 1518 1518 return ret; 1519 1519 }
+5 -5
fs/libfs.c
··· 89 89 loff_t dcache_dir_lseek(struct file *file, loff_t offset, int whence) 90 90 { 91 91 struct dentry *dentry = file->f_path.dentry; 92 - mutex_lock(&d_inode(dentry)->i_mutex); 92 + inode_lock(d_inode(dentry)); 93 93 switch (whence) { 94 94 case 1: 95 95 offset += file->f_pos; ··· 97 97 if (offset >= 0) 98 98 break; 99 99 default: 100 - mutex_unlock(&d_inode(dentry)->i_mutex); 100 + inode_unlock(d_inode(dentry)); 101 101 return -EINVAL; 102 102 } 103 103 if (offset != file->f_pos) { ··· 124 124 spin_unlock(&dentry->d_lock); 125 125 } 126 126 } 127 - mutex_unlock(&d_inode(dentry)->i_mutex); 127 + inode_unlock(d_inode(dentry)); 128 128 return offset; 129 129 } 130 130 EXPORT_SYMBOL(dcache_dir_lseek); ··· 941 941 if (err) 942 942 return err; 943 943 944 - mutex_lock(&inode->i_mutex); 944 + inode_lock(inode); 945 945 ret = sync_mapping_buffers(inode->i_mapping); 946 946 if (!(inode->i_state & I_DIRTY_ALL)) 947 947 goto out; ··· 953 953 ret = err; 954 954 955 955 out: 956 - mutex_unlock(&inode->i_mutex); 956 + inode_unlock(inode); 957 957 return ret; 958 958 } 959 959 EXPORT_SYMBOL(__generic_file_fsync);
+3 -3
fs/locks.c
··· 1650 1650 * bother, maybe that's a sign this just isn't a good file to 1651 1651 * hand out a delegation on. 1652 1652 */ 1653 - if (is_deleg && !mutex_trylock(&inode->i_mutex)) 1653 + if (is_deleg && !inode_trylock(inode)) 1654 1654 return -EAGAIN; 1655 1655 1656 1656 if (is_deleg && arg == F_WRLCK) { 1657 1657 /* Write delegations are not currently supported: */ 1658 - mutex_unlock(&inode->i_mutex); 1658 + inode_unlock(inode); 1659 1659 WARN_ON_ONCE(1); 1660 1660 return -EINVAL; 1661 1661 } ··· 1732 1732 spin_unlock(&ctx->flc_lock); 1733 1733 locks_dispose_list(&dispose); 1734 1734 if (is_deleg) 1735 - mutex_unlock(&inode->i_mutex); 1735 + inode_unlock(inode); 1736 1736 if (!error && !my_fl) 1737 1737 *flp = NULL; 1738 1738 return error;
+4 -4
fs/logfs/file.c
··· 204 204 if (err) 205 205 return err; 206 206 207 - mutex_lock(&inode->i_mutex); 207 + inode_lock(inode); 208 208 oldflags = li->li_flags; 209 209 flags &= LOGFS_FL_USER_MODIFIABLE; 210 210 flags |= oldflags & ~LOGFS_FL_USER_MODIFIABLE; 211 211 li->li_flags = flags; 212 - mutex_unlock(&inode->i_mutex); 212 + inode_unlock(inode); 213 213 214 214 inode->i_ctime = CURRENT_TIME; 215 215 mark_inode_dirty_sync(inode); ··· 230 230 if (ret) 231 231 return ret; 232 232 233 - mutex_lock(&inode->i_mutex); 233 + inode_lock(inode); 234 234 logfs_get_wblocks(sb, NULL, WF_LOCK); 235 235 logfs_write_anchor(sb); 236 236 logfs_put_wblocks(sb, NULL, WF_LOCK); 237 - mutex_unlock(&inode->i_mutex); 237 + inode_unlock(inode); 238 238 239 239 return 0; 240 240 }
+37 -37
fs/namei.c
··· 1629 1629 parent = nd->path.dentry; 1630 1630 BUG_ON(nd->inode != parent->d_inode); 1631 1631 1632 - mutex_lock(&parent->d_inode->i_mutex); 1632 + inode_lock(parent->d_inode); 1633 1633 dentry = __lookup_hash(&nd->last, parent, nd->flags); 1634 - mutex_unlock(&parent->d_inode->i_mutex); 1634 + inode_unlock(parent->d_inode); 1635 1635 if (IS_ERR(dentry)) 1636 1636 return PTR_ERR(dentry); 1637 1637 path->mnt = nd->path.mnt; ··· 2229 2229 putname(filename); 2230 2230 return ERR_PTR(-EINVAL); 2231 2231 } 2232 - mutex_lock_nested(&path->dentry->d_inode->i_mutex, I_MUTEX_PARENT); 2232 + inode_lock_nested(path->dentry->d_inode, I_MUTEX_PARENT); 2233 2233 d = __lookup_hash(&last, path->dentry, 0); 2234 2234 if (IS_ERR(d)) { 2235 - mutex_unlock(&path->dentry->d_inode->i_mutex); 2235 + inode_unlock(path->dentry->d_inode); 2236 2236 path_put(path); 2237 2237 } 2238 2238 putname(filename); ··· 2282 2282 unsigned int c; 2283 2283 int err; 2284 2284 2285 - WARN_ON_ONCE(!mutex_is_locked(&base->d_inode->i_mutex)); 2285 + WARN_ON_ONCE(!inode_is_locked(base->d_inode)); 2286 2286 2287 2287 this.name = name; 2288 2288 this.len = len; ··· 2380 2380 if (ret) 2381 2381 return ret; 2382 2382 2383 - mutex_lock(&base->d_inode->i_mutex); 2383 + inode_lock(base->d_inode); 2384 2384 ret = __lookup_hash(&this, base, 0); 2385 - mutex_unlock(&base->d_inode->i_mutex); 2385 + inode_unlock(base->d_inode); 2386 2386 return ret; 2387 2387 } 2388 2388 EXPORT_SYMBOL(lookup_one_len_unlocked); ··· 2463 2463 goto done; 2464 2464 } 2465 2465 2466 - mutex_lock(&dir->d_inode->i_mutex); 2466 + inode_lock(dir->d_inode); 2467 2467 dentry = d_lookup(dir, &nd->last); 2468 2468 if (!dentry) { 2469 2469 /* ··· 2473 2473 */ 2474 2474 dentry = d_alloc(dir, &nd->last); 2475 2475 if (!dentry) { 2476 - mutex_unlock(&dir->d_inode->i_mutex); 2476 + inode_unlock(dir->d_inode); 2477 2477 return -ENOMEM; 2478 2478 } 2479 2479 dentry = lookup_real(dir->d_inode, dentry, nd->flags); 2480 2480 if (IS_ERR(dentry)) { 2481 - mutex_unlock(&dir->d_inode->i_mutex); 2481 + inode_unlock(dir->d_inode); 2482 2482 return PTR_ERR(dentry); 2483 2483 } 2484 2484 } 2485 - mutex_unlock(&dir->d_inode->i_mutex); 2485 + inode_unlock(dir->d_inode); 2486 2486 2487 2487 done: 2488 2488 if (d_is_negative(dentry)) { ··· 2672 2672 struct dentry *p; 2673 2673 2674 2674 if (p1 == p2) { 2675 - mutex_lock_nested(&p1->d_inode->i_mutex, I_MUTEX_PARENT); 2675 + inode_lock_nested(p1->d_inode, I_MUTEX_PARENT); 2676 2676 return NULL; 2677 2677 } 2678 2678 ··· 2680 2680 2681 2681 p = d_ancestor(p2, p1); 2682 2682 if (p) { 2683 - mutex_lock_nested(&p2->d_inode->i_mutex, I_MUTEX_PARENT); 2684 - mutex_lock_nested(&p1->d_inode->i_mutex, I_MUTEX_CHILD); 2683 + inode_lock_nested(p2->d_inode, I_MUTEX_PARENT); 2684 + inode_lock_nested(p1->d_inode, I_MUTEX_CHILD); 2685 2685 return p; 2686 2686 } 2687 2687 2688 2688 p = d_ancestor(p1, p2); 2689 2689 if (p) { 2690 - mutex_lock_nested(&p1->d_inode->i_mutex, I_MUTEX_PARENT); 2691 - mutex_lock_nested(&p2->d_inode->i_mutex, I_MUTEX_CHILD); 2690 + inode_lock_nested(p1->d_inode, I_MUTEX_PARENT); 2691 + inode_lock_nested(p2->d_inode, I_MUTEX_CHILD); 2692 2692 return p; 2693 2693 } 2694 2694 2695 - mutex_lock_nested(&p1->d_inode->i_mutex, I_MUTEX_PARENT); 2696 - mutex_lock_nested(&p2->d_inode->i_mutex, I_MUTEX_PARENT2); 2695 + inode_lock_nested(p1->d_inode, I_MUTEX_PARENT); 2696 + inode_lock_nested(p2->d_inode, I_MUTEX_PARENT2); 2697 2697 return NULL; 2698 2698 } 2699 2699 EXPORT_SYMBOL(lock_rename); 2700 2700 2701 2701 void unlock_rename(struct dentry *p1, struct dentry *p2) 2702 2702 { 2703 - mutex_unlock(&p1->d_inode->i_mutex); 2703 + inode_unlock(p1->d_inode); 2704 2704 if (p1 != p2) { 2705 - mutex_unlock(&p2->d_inode->i_mutex); 2705 + inode_unlock(p2->d_inode); 2706 2706 mutex_unlock(&p1->d_inode->i_sb->s_vfs_rename_mutex); 2707 2707 } 2708 2708 } ··· 3141 3141 * dropping this one anyway. 3142 3142 */ 3143 3143 } 3144 - mutex_lock(&dir->d_inode->i_mutex); 3144 + inode_lock(dir->d_inode); 3145 3145 error = lookup_open(nd, &path, file, op, got_write, opened); 3146 - mutex_unlock(&dir->d_inode->i_mutex); 3146 + inode_unlock(dir->d_inode); 3147 3147 3148 3148 if (error <= 0) { 3149 3149 if (error) ··· 3489 3489 * Do the final lookup. 3490 3490 */ 3491 3491 lookup_flags |= LOOKUP_CREATE | LOOKUP_EXCL; 3492 - mutex_lock_nested(&path->dentry->d_inode->i_mutex, I_MUTEX_PARENT); 3492 + inode_lock_nested(path->dentry->d_inode, I_MUTEX_PARENT); 3493 3493 dentry = __lookup_hash(&last, path->dentry, lookup_flags); 3494 3494 if (IS_ERR(dentry)) 3495 3495 goto unlock; ··· 3518 3518 dput(dentry); 3519 3519 dentry = ERR_PTR(error); 3520 3520 unlock: 3521 - mutex_unlock(&path->dentry->d_inode->i_mutex); 3521 + inode_unlock(path->dentry->d_inode); 3522 3522 if (!err2) 3523 3523 mnt_drop_write(path->mnt); 3524 3524 out: ··· 3538 3538 void done_path_create(struct path *path, struct dentry *dentry) 3539 3539 { 3540 3540 dput(dentry); 3541 - mutex_unlock(&path->dentry->d_inode->i_mutex); 3541 + inode_unlock(path->dentry->d_inode); 3542 3542 mnt_drop_write(path->mnt); 3543 3543 path_put(path); 3544 3544 } ··· 3735 3735 return -EPERM; 3736 3736 3737 3737 dget(dentry); 3738 - mutex_lock(&dentry->d_inode->i_mutex); 3738 + inode_lock(dentry->d_inode); 3739 3739 3740 3740 error = -EBUSY; 3741 3741 if (is_local_mountpoint(dentry)) ··· 3755 3755 detach_mounts(dentry); 3756 3756 3757 3757 out: 3758 - mutex_unlock(&dentry->d_inode->i_mutex); 3758 + inode_unlock(dentry->d_inode); 3759 3759 dput(dentry); 3760 3760 if (!error) 3761 3761 d_delete(dentry); ··· 3794 3794 if (error) 3795 3795 goto exit1; 3796 3796 3797 - mutex_lock_nested(&path.dentry->d_inode->i_mutex, I_MUTEX_PARENT); 3797 + inode_lock_nested(path.dentry->d_inode, I_MUTEX_PARENT); 3798 3798 dentry = __lookup_hash(&last, path.dentry, lookup_flags); 3799 3799 error = PTR_ERR(dentry); 3800 3800 if (IS_ERR(dentry)) ··· 3810 3810 exit3: 3811 3811 dput(dentry); 3812 3812 exit2: 3813 - mutex_unlock(&path.dentry->d_inode->i_mutex); 3813 + inode_unlock(path.dentry->d_inode); 3814 3814 mnt_drop_write(path.mnt); 3815 3815 exit1: 3816 3816 path_put(&path); ··· 3856 3856 if (!dir->i_op->unlink) 3857 3857 return -EPERM; 3858 3858 3859 - mutex_lock(&target->i_mutex); 3859 + inode_lock(target); 3860 3860 if (is_local_mountpoint(dentry)) 3861 3861 error = -EBUSY; 3862 3862 else { ··· 3873 3873 } 3874 3874 } 3875 3875 out: 3876 - mutex_unlock(&target->i_mutex); 3876 + inode_unlock(target); 3877 3877 3878 3878 /* We don't d_delete() NFS sillyrenamed files--they still exist. */ 3879 3879 if (!error && !(dentry->d_flags & DCACHE_NFSFS_RENAMED)) { ··· 3916 3916 if (error) 3917 3917 goto exit1; 3918 3918 retry_deleg: 3919 - mutex_lock_nested(&path.dentry->d_inode->i_mutex, I_MUTEX_PARENT); 3919 + inode_lock_nested(path.dentry->d_inode, I_MUTEX_PARENT); 3920 3920 dentry = __lookup_hash(&last, path.dentry, lookup_flags); 3921 3921 error = PTR_ERR(dentry); 3922 3922 if (!IS_ERR(dentry)) { ··· 3934 3934 exit2: 3935 3935 dput(dentry); 3936 3936 } 3937 - mutex_unlock(&path.dentry->d_inode->i_mutex); 3937 + inode_unlock(path.dentry->d_inode); 3938 3938 if (inode) 3939 3939 iput(inode); /* truncate the inode here */ 3940 3940 inode = NULL; ··· 4086 4086 if (error) 4087 4087 return error; 4088 4088 4089 - mutex_lock(&inode->i_mutex); 4089 + inode_lock(inode); 4090 4090 /* Make sure we don't allow creating hardlink to an unlinked file */ 4091 4091 if (inode->i_nlink == 0 && !(inode->i_state & I_LINKABLE)) 4092 4092 error = -ENOENT; ··· 4103 4103 inode->i_state &= ~I_LINKABLE; 4104 4104 spin_unlock(&inode->i_lock); 4105 4105 } 4106 - mutex_unlock(&inode->i_mutex); 4106 + inode_unlock(inode); 4107 4107 if (!error) 4108 4108 fsnotify_link(dir, inode, new_dentry); 4109 4109 return error; ··· 4303 4303 if (!is_dir || (flags & RENAME_EXCHANGE)) 4304 4304 lock_two_nondirectories(source, target); 4305 4305 else if (target) 4306 - mutex_lock(&target->i_mutex); 4306 + inode_lock(target); 4307 4307 4308 4308 error = -EBUSY; 4309 4309 if (is_local_mountpoint(old_dentry) || is_local_mountpoint(new_dentry)) ··· 4356 4356 if (!is_dir || (flags & RENAME_EXCHANGE)) 4357 4357 unlock_two_nondirectories(source, target); 4358 4358 else if (target) 4359 - mutex_unlock(&target->i_mutex); 4359 + inode_unlock(target); 4360 4360 dput(new_dentry); 4361 4361 if (!error) { 4362 4362 fsnotify_move(old_dir, new_dir, old_name, is_dir,
+5 -5
fs/namespace.c
··· 1961 1961 struct vfsmount *mnt; 1962 1962 struct dentry *dentry = path->dentry; 1963 1963 retry: 1964 - mutex_lock(&dentry->d_inode->i_mutex); 1964 + inode_lock(dentry->d_inode); 1965 1965 if (unlikely(cant_mount(dentry))) { 1966 - mutex_unlock(&dentry->d_inode->i_mutex); 1966 + inode_unlock(dentry->d_inode); 1967 1967 return ERR_PTR(-ENOENT); 1968 1968 } 1969 1969 namespace_lock(); ··· 1974 1974 mp = new_mountpoint(dentry); 1975 1975 if (IS_ERR(mp)) { 1976 1976 namespace_unlock(); 1977 - mutex_unlock(&dentry->d_inode->i_mutex); 1977 + inode_unlock(dentry->d_inode); 1978 1978 return mp; 1979 1979 } 1980 1980 return mp; 1981 1981 } 1982 1982 namespace_unlock(); 1983 - mutex_unlock(&path->dentry->d_inode->i_mutex); 1983 + inode_unlock(path->dentry->d_inode); 1984 1984 path_put(path); 1985 1985 path->mnt = mnt; 1986 1986 dentry = path->dentry = dget(mnt->mnt_root); ··· 1992 1992 struct dentry *dentry = where->m_dentry; 1993 1993 put_mountpoint(where); 1994 1994 namespace_unlock(); 1995 - mutex_unlock(&dentry->d_inode->i_mutex); 1995 + inode_unlock(dentry->d_inode); 1996 1996 } 1997 1997 1998 1998 static int graft_tree(struct mount *mnt, struct mount *p, struct mountpoint *mp)
+4 -4
fs/ncpfs/dir.c
··· 369 369 if (!res) { 370 370 struct inode *inode = d_inode(dentry); 371 371 372 - mutex_lock(&inode->i_mutex); 372 + inode_lock(inode); 373 373 if (finfo.i.dirEntNum == NCP_FINFO(inode)->dirEntNum) { 374 374 ncp_new_dentry(dentry); 375 375 val=1; ··· 377 377 ncp_dbg(2, "found, but dirEntNum changed\n"); 378 378 379 379 ncp_update_inode2(inode, &finfo); 380 - mutex_unlock(&inode->i_mutex); 380 + inode_unlock(inode); 381 381 } 382 382 383 383 finished: ··· 639 639 } else { 640 640 struct inode *inode = d_inode(newdent); 641 641 642 - mutex_lock_nested(&inode->i_mutex, I_MUTEX_CHILD); 642 + inode_lock_nested(inode, I_MUTEX_CHILD); 643 643 ncp_update_inode2(inode, entry); 644 - mutex_unlock(&inode->i_mutex); 644 + inode_unlock(inode); 645 645 } 646 646 647 647 if (ctl.idx >= NCP_DIRCACHE_SIZE) {
+2 -2
fs/ncpfs/file.c
··· 224 224 iocb->ki_pos = pos; 225 225 226 226 if (pos > i_size_read(inode)) { 227 - mutex_lock(&inode->i_mutex); 227 + inode_lock(inode); 228 228 if (pos > i_size_read(inode)) 229 229 i_size_write(inode, pos); 230 - mutex_unlock(&inode->i_mutex); 230 + inode_unlock(inode); 231 231 } 232 232 ncp_dbg(1, "exit %pD2\n", file); 233 233 outrel:
+4 -4
fs/nfs/dir.c
··· 940 940 dfprintk(FILE, "NFS: llseek dir(%pD2, %lld, %d)\n", 941 941 filp, offset, whence); 942 942 943 - mutex_lock(&inode->i_mutex); 943 + inode_lock(inode); 944 944 switch (whence) { 945 945 case 1: 946 946 offset += filp->f_pos; ··· 957 957 dir_ctx->duped = 0; 958 958 } 959 959 out: 960 - mutex_unlock(&inode->i_mutex); 960 + inode_unlock(inode); 961 961 return offset; 962 962 } 963 963 ··· 972 972 973 973 dfprintk(FILE, "NFS: fsync dir(%pD2) datasync %d\n", filp, datasync); 974 974 975 - mutex_lock(&inode->i_mutex); 975 + inode_lock(inode); 976 976 nfs_inc_stats(inode, NFSIOS_VFSFSYNC); 977 - mutex_unlock(&inode->i_mutex); 977 + inode_unlock(inode); 978 978 return 0; 979 979 } 980 980
+6 -6
fs/nfs/direct.c
··· 580 580 if (!count) 581 581 goto out; 582 582 583 - mutex_lock(&inode->i_mutex); 583 + inode_lock(inode); 584 584 result = nfs_sync_mapping(mapping); 585 585 if (result) 586 586 goto out_unlock; ··· 608 608 NFS_I(inode)->read_io += count; 609 609 result = nfs_direct_read_schedule_iovec(dreq, iter, pos); 610 610 611 - mutex_unlock(&inode->i_mutex); 611 + inode_unlock(inode); 612 612 613 613 if (!result) { 614 614 result = nfs_direct_wait(dreq); ··· 622 622 out_release: 623 623 nfs_direct_req_release(dreq); 624 624 out_unlock: 625 - mutex_unlock(&inode->i_mutex); 625 + inode_unlock(inode); 626 626 out: 627 627 return result; 628 628 } ··· 1005 1005 pos = iocb->ki_pos; 1006 1006 end = (pos + iov_iter_count(iter) - 1) >> PAGE_CACHE_SHIFT; 1007 1007 1008 - mutex_lock(&inode->i_mutex); 1008 + inode_lock(inode); 1009 1009 1010 1010 result = nfs_sync_mapping(mapping); 1011 1011 if (result) ··· 1045 1045 pos >> PAGE_CACHE_SHIFT, end); 1046 1046 } 1047 1047 1048 - mutex_unlock(&inode->i_mutex); 1048 + inode_unlock(inode); 1049 1049 1050 1050 if (!result) { 1051 1051 result = nfs_direct_wait(dreq); ··· 1066 1066 out_release: 1067 1067 nfs_direct_req_release(dreq); 1068 1068 out_unlock: 1069 - mutex_unlock(&inode->i_mutex); 1069 + inode_unlock(inode); 1070 1070 return result; 1071 1071 } 1072 1072
+2 -2
fs/nfs/file.c
··· 278 278 ret = filemap_write_and_wait_range(inode->i_mapping, start, end); 279 279 if (ret != 0) 280 280 break; 281 - mutex_lock(&inode->i_mutex); 281 + inode_lock(inode); 282 282 ret = nfs_file_fsync_commit(file, start, end, datasync); 283 - mutex_unlock(&inode->i_mutex); 283 + inode_unlock(inode); 284 284 /* 285 285 * If nfs_file_fsync_commit detected a server reboot, then 286 286 * resend all dirty pages that might have been covered by
+4 -4
fs/nfs/inode.c
··· 661 661 trace_nfs_getattr_enter(inode); 662 662 /* Flush out writes to the server in order to update c/mtime. */ 663 663 if (S_ISREG(inode->i_mode)) { 664 - mutex_lock(&inode->i_mutex); 664 + inode_lock(inode); 665 665 err = nfs_sync_inode(inode); 666 - mutex_unlock(&inode->i_mutex); 666 + inode_unlock(inode); 667 667 if (err) 668 668 goto out; 669 669 } ··· 1178 1178 spin_unlock(&inode->i_lock); 1179 1179 trace_nfs_invalidate_mapping_enter(inode); 1180 1180 if (may_lock) { 1181 - mutex_lock(&inode->i_mutex); 1181 + inode_lock(inode); 1182 1182 ret = nfs_invalidate_mapping(inode, mapping); 1183 - mutex_unlock(&inode->i_mutex); 1183 + inode_unlock(inode); 1184 1184 } else 1185 1185 ret = nfs_invalidate_mapping(inode, mapping); 1186 1186 trace_nfs_invalidate_mapping_exit(inode, ret);
+4 -4
fs/nfs/nfs42proc.c
··· 101 101 if (!nfs_server_capable(inode, NFS_CAP_ALLOCATE)) 102 102 return -EOPNOTSUPP; 103 103 104 - mutex_lock(&inode->i_mutex); 104 + inode_lock(inode); 105 105 106 106 err = nfs42_proc_fallocate(&msg, filep, offset, len); 107 107 if (err == -EOPNOTSUPP) 108 108 NFS_SERVER(inode)->caps &= ~NFS_CAP_ALLOCATE; 109 109 110 - mutex_unlock(&inode->i_mutex); 110 + inode_unlock(inode); 111 111 return err; 112 112 } 113 113 ··· 123 123 return -EOPNOTSUPP; 124 124 125 125 nfs_wb_all(inode); 126 - mutex_lock(&inode->i_mutex); 126 + inode_lock(inode); 127 127 128 128 err = nfs42_proc_fallocate(&msg, filep, offset, len); 129 129 if (err == 0) ··· 131 131 if (err == -EOPNOTSUPP) 132 132 NFS_SERVER(inode)->caps &= ~NFS_CAP_DEALLOCATE; 133 133 134 - mutex_unlock(&inode->i_mutex); 134 + inode_unlock(inode); 135 135 return err; 136 136 } 137 137
+12 -12
fs/nfs/nfs4file.c
··· 141 141 ret = filemap_write_and_wait_range(inode->i_mapping, start, end); 142 142 if (ret != 0) 143 143 break; 144 - mutex_lock(&inode->i_mutex); 144 + inode_lock(inode); 145 145 ret = nfs_file_fsync_commit(file, start, end, datasync); 146 146 if (!ret) 147 147 ret = pnfs_sync_inode(inode, !!datasync); 148 - mutex_unlock(&inode->i_mutex); 148 + inode_unlock(inode); 149 149 /* 150 150 * If nfs_file_fsync_commit detected a server reboot, then 151 151 * resend all dirty pages that might have been covered by ··· 219 219 220 220 /* XXX: do we lock at all? what if server needs CB_RECALL_LAYOUT? */ 221 221 if (same_inode) { 222 - mutex_lock(&src_inode->i_mutex); 222 + inode_lock(src_inode); 223 223 } else if (dst_inode < src_inode) { 224 - mutex_lock_nested(&dst_inode->i_mutex, I_MUTEX_PARENT); 225 - mutex_lock_nested(&src_inode->i_mutex, I_MUTEX_CHILD); 224 + inode_lock_nested(dst_inode, I_MUTEX_PARENT); 225 + inode_lock_nested(src_inode, I_MUTEX_CHILD); 226 226 } else { 227 - mutex_lock_nested(&src_inode->i_mutex, I_MUTEX_PARENT); 228 - mutex_lock_nested(&dst_inode->i_mutex, I_MUTEX_CHILD); 227 + inode_lock_nested(src_inode, I_MUTEX_PARENT); 228 + inode_lock_nested(dst_inode, I_MUTEX_CHILD); 229 229 } 230 230 231 231 /* flush all pending writes on both src and dst so that server ··· 246 246 247 247 out_unlock: 248 248 if (same_inode) { 249 - mutex_unlock(&src_inode->i_mutex); 249 + inode_unlock(src_inode); 250 250 } else if (dst_inode < src_inode) { 251 - mutex_unlock(&src_inode->i_mutex); 252 - mutex_unlock(&dst_inode->i_mutex); 251 + inode_unlock(src_inode); 252 + inode_unlock(dst_inode); 253 253 } else { 254 - mutex_unlock(&dst_inode->i_mutex); 255 - mutex_unlock(&src_inode->i_mutex); 254 + inode_unlock(dst_inode); 255 + inode_unlock(src_inode); 256 256 } 257 257 out: 258 258 return ret;
+2 -2
fs/nfsd/nfs4proc.c
··· 55 55 struct inode *inode = d_inode(resfh->fh_dentry); 56 56 int status; 57 57 58 - mutex_lock(&inode->i_mutex); 58 + inode_lock(inode); 59 59 status = security_inode_setsecctx(resfh->fh_dentry, 60 60 label->data, label->len); 61 - mutex_unlock(&inode->i_mutex); 61 + inode_unlock(inode); 62 62 63 63 if (status) 64 64 /*
+6 -6
fs/nfsd/nfs4recover.c
··· 192 192 193 193 dir = nn->rec_file->f_path.dentry; 194 194 /* lock the parent */ 195 - mutex_lock(&d_inode(dir)->i_mutex); 195 + inode_lock(d_inode(dir)); 196 196 197 197 dentry = lookup_one_len(dname, dir, HEXDIR_LEN-1); 198 198 if (IS_ERR(dentry)) { ··· 213 213 out_put: 214 214 dput(dentry); 215 215 out_unlock: 216 - mutex_unlock(&d_inode(dir)->i_mutex); 216 + inode_unlock(d_inode(dir)); 217 217 if (status == 0) { 218 218 if (nn->in_grace) { 219 219 crp = nfs4_client_to_reclaim(dname, nn); ··· 286 286 } 287 287 288 288 status = iterate_dir(nn->rec_file, &ctx.ctx); 289 - mutex_lock_nested(&d_inode(dir)->i_mutex, I_MUTEX_PARENT); 289 + inode_lock_nested(d_inode(dir), I_MUTEX_PARENT); 290 290 291 291 list_for_each_entry_safe(entry, tmp, &ctx.names, list) { 292 292 if (!status) { ··· 302 302 list_del(&entry->list); 303 303 kfree(entry); 304 304 } 305 - mutex_unlock(&d_inode(dir)->i_mutex); 305 + inode_unlock(d_inode(dir)); 306 306 nfs4_reset_creds(original_cred); 307 307 308 308 list_for_each_entry_safe(entry, tmp, &ctx.names, list) { ··· 322 322 dprintk("NFSD: nfsd4_unlink_clid_dir. name %.*s\n", namlen, name); 323 323 324 324 dir = nn->rec_file->f_path.dentry; 325 - mutex_lock_nested(&d_inode(dir)->i_mutex, I_MUTEX_PARENT); 325 + inode_lock_nested(d_inode(dir), I_MUTEX_PARENT); 326 326 dentry = lookup_one_len(name, dir, namlen); 327 327 if (IS_ERR(dentry)) { 328 328 status = PTR_ERR(dentry); ··· 335 335 out: 336 336 dput(dentry); 337 337 out_unlock: 338 - mutex_unlock(&d_inode(dir)->i_mutex); 338 + inode_unlock(d_inode(dir)); 339 339 return status; 340 340 } 341 341
+2 -2
fs/nfsd/nfsfh.h
··· 288 288 } 289 289 290 290 inode = d_inode(dentry); 291 - mutex_lock_nested(&inode->i_mutex, subclass); 291 + inode_lock_nested(inode, subclass); 292 292 fill_pre_wcc(fhp); 293 293 fhp->fh_locked = true; 294 294 } ··· 307 307 { 308 308 if (fhp->fh_locked) { 309 309 fill_post_wcc(fhp); 310 - mutex_unlock(&d_inode(fhp->fh_dentry)->i_mutex); 310 + inode_unlock(d_inode(fhp->fh_dentry)); 311 311 fhp->fh_locked = false; 312 312 } 313 313 }
+2 -2
fs/nfsd/vfs.c
··· 493 493 494 494 dentry = fhp->fh_dentry; 495 495 496 - mutex_lock(&d_inode(dentry)->i_mutex); 496 + inode_lock(d_inode(dentry)); 497 497 host_error = security_inode_setsecctx(dentry, label->data, label->len); 498 - mutex_unlock(&d_inode(dentry)->i_mutex); 498 + inode_unlock(d_inode(dentry)); 499 499 return nfserrno(host_error); 500 500 } 501 501 #else
+2 -2
fs/nilfs2/inode.c
··· 1003 1003 if (ret) 1004 1004 return ret; 1005 1005 1006 - mutex_lock(&inode->i_mutex); 1006 + inode_lock(inode); 1007 1007 1008 1008 isize = i_size_read(inode); 1009 1009 ··· 1113 1113 if (ret == 1) 1114 1114 ret = 0; 1115 1115 1116 - mutex_unlock(&inode->i_mutex); 1116 + inode_unlock(inode); 1117 1117 return ret; 1118 1118 }
+2 -2
fs/nilfs2/ioctl.c
··· 158 158 159 159 flags = nilfs_mask_flags(inode->i_mode, flags); 160 160 161 - mutex_lock(&inode->i_mutex); 161 + inode_lock(inode); 162 162 163 163 oldflags = NILFS_I(inode)->i_flags; 164 164 ··· 186 186 nilfs_mark_inode_dirty(inode); 187 187 ret = nilfs_transaction_commit(inode->i_sb); 188 188 out: 189 - mutex_unlock(&inode->i_mutex); 189 + inode_unlock(inode); 190 190 mnt_drop_write_file(filp); 191 191 return ret; 192 192 }
+2 -2
fs/ntfs/dir.c
··· 1509 1509 err = filemap_write_and_wait_range(vi->i_mapping, start, end); 1510 1510 if (err) 1511 1511 return err; 1512 - mutex_lock(&vi->i_mutex); 1512 + inode_lock(vi); 1513 1513 1514 1514 BUG_ON(!S_ISDIR(vi->i_mode)); 1515 1515 /* If the bitmap attribute inode is in memory sync it, too. */ ··· 1532 1532 else 1533 1533 ntfs_warning(vi->i_sb, "Failed to f%ssync inode 0x%lx. Error " 1534 1534 "%u.", datasync ? "data" : "", vi->i_ino, -ret); 1535 - mutex_unlock(&vi->i_mutex); 1535 + inode_unlock(vi); 1536 1536 return ret; 1537 1537 } 1538 1538
+4 -4
fs/ntfs/file.c
··· 1944 1944 ssize_t written = 0; 1945 1945 ssize_t err; 1946 1946 1947 - mutex_lock(&vi->i_mutex); 1947 + inode_lock(vi); 1948 1948 /* We can write back this queue in page reclaim. */ 1949 1949 current->backing_dev_info = inode_to_bdi(vi); 1950 1950 err = ntfs_prepare_file_for_write(iocb, from); 1951 1951 if (iov_iter_count(from) && !err) 1952 1952 written = ntfs_perform_write(file, from, iocb->ki_pos); 1953 1953 current->backing_dev_info = NULL; 1954 - mutex_unlock(&vi->i_mutex); 1954 + inode_unlock(vi); 1955 1955 if (likely(written > 0)) { 1956 1956 err = generic_write_sync(file, iocb->ki_pos, written); 1957 1957 if (err < 0) ··· 1996 1996 err = filemap_write_and_wait_range(vi->i_mapping, start, end); 1997 1997 if (err) 1998 1998 return err; 1999 - mutex_lock(&vi->i_mutex); 1999 + inode_lock(vi); 2000 2000 2001 2001 BUG_ON(S_ISDIR(vi->i_mode)); 2002 2002 if (!datasync || !NInoNonResident(NTFS_I(vi))) ··· 2015 2015 else 2016 2016 ntfs_warning(vi->i_sb, "Failed to f%ssync inode 0x%lx. Error " 2017 2017 "%u.", datasync ? "data" : "", vi->i_ino, -ret); 2018 - mutex_unlock(&vi->i_mutex); 2018 + inode_unlock(vi); 2019 2019 return ret; 2020 2020 } 2021 2021
+3 -3
fs/ntfs/quota.c
··· 48 48 ntfs_error(vol->sb, "Quota inodes are not open."); 49 49 return false; 50 50 } 51 - mutex_lock(&vol->quota_q_ino->i_mutex); 51 + inode_lock(vol->quota_q_ino); 52 52 ictx = ntfs_index_ctx_get(NTFS_I(vol->quota_q_ino)); 53 53 if (!ictx) { 54 54 ntfs_error(vol->sb, "Failed to get index context."); ··· 98 98 ntfs_index_entry_mark_dirty(ictx); 99 99 set_done: 100 100 ntfs_index_ctx_put(ictx); 101 - mutex_unlock(&vol->quota_q_ino->i_mutex); 101 + inode_unlock(vol->quota_q_ino); 102 102 /* 103 103 * We set the flag so we do not try to mark the quotas out of date 104 104 * again on remount. ··· 110 110 err_out: 111 111 if (ictx) 112 112 ntfs_index_ctx_put(ictx); 113 - mutex_unlock(&vol->quota_q_ino->i_mutex); 113 + inode_unlock(vol->quota_q_ino); 114 114 return false; 115 115 } 116 116
+6 -6
fs/ntfs/super.c
··· 1284 1284 * Find the inode number for the hibernation file by looking up the 1285 1285 * filename hiberfil.sys in the root directory. 1286 1286 */ 1287 - mutex_lock(&vol->root_ino->i_mutex); 1287 + inode_lock(vol->root_ino); 1288 1288 mref = ntfs_lookup_inode_by_name(NTFS_I(vol->root_ino), hiberfil, 12, 1289 1289 &name); 1290 - mutex_unlock(&vol->root_ino->i_mutex); 1290 + inode_unlock(vol->root_ino); 1291 1291 if (IS_ERR_MREF(mref)) { 1292 1292 ret = MREF_ERR(mref); 1293 1293 /* If the file does not exist, Windows is not hibernated. */ ··· 1377 1377 * Find the inode number for the quota file by looking up the filename 1378 1378 * $Quota in the extended system files directory $Extend. 1379 1379 */ 1380 - mutex_lock(&vol->extend_ino->i_mutex); 1380 + inode_lock(vol->extend_ino); 1381 1381 mref = ntfs_lookup_inode_by_name(NTFS_I(vol->extend_ino), Quota, 6, 1382 1382 &name); 1383 - mutex_unlock(&vol->extend_ino->i_mutex); 1383 + inode_unlock(vol->extend_ino); 1384 1384 if (IS_ERR_MREF(mref)) { 1385 1385 /* 1386 1386 * If the file does not exist, quotas are disabled and have ··· 1460 1460 * Find the inode number for the transaction log file by looking up the 1461 1461 * filename $UsnJrnl in the extended system files directory $Extend. 1462 1462 */ 1463 - mutex_lock(&vol->extend_ino->i_mutex); 1463 + inode_lock(vol->extend_ino); 1464 1464 mref = ntfs_lookup_inode_by_name(NTFS_I(vol->extend_ino), UsnJrnl, 8, 1465 1465 &name); 1466 - mutex_unlock(&vol->extend_ino->i_mutex); 1466 + inode_unlock(vol->extend_ino); 1467 1467 if (IS_ERR_MREF(mref)) { 1468 1468 /* 1469 1469 * If the file does not exist, transaction logging is disabled,
+16 -16
fs/ocfs2/alloc.c
··· 5719 5719 goto bail; 5720 5720 } 5721 5721 5722 - mutex_lock(&tl_inode->i_mutex); 5722 + inode_lock(tl_inode); 5723 5723 5724 5724 if (ocfs2_truncate_log_needs_flush(osb)) { 5725 5725 ret = __ocfs2_flush_truncate_log(osb); ··· 5776 5776 out_commit: 5777 5777 ocfs2_commit_trans(osb, handle); 5778 5778 out: 5779 - mutex_unlock(&tl_inode->i_mutex); 5779 + inode_unlock(tl_inode); 5780 5780 bail: 5781 5781 if (meta_ac) 5782 5782 ocfs2_free_alloc_context(meta_ac); ··· 5832 5832 struct ocfs2_dinode *di; 5833 5833 struct ocfs2_truncate_log *tl; 5834 5834 5835 - BUG_ON(mutex_trylock(&tl_inode->i_mutex)); 5835 + BUG_ON(inode_trylock(tl_inode)); 5836 5836 5837 5837 start_cluster = ocfs2_blocks_to_clusters(osb->sb, start_blk); 5838 5838 ··· 5980 5980 struct ocfs2_dinode *di; 5981 5981 struct ocfs2_truncate_log *tl; 5982 5982 5983 - BUG_ON(mutex_trylock(&tl_inode->i_mutex)); 5983 + BUG_ON(inode_trylock(tl_inode)); 5984 5984 5985 5985 di = (struct ocfs2_dinode *) tl_bh->b_data; 5986 5986 ··· 6008 6008 goto out; 6009 6009 } 6010 6010 6011 - mutex_lock(&data_alloc_inode->i_mutex); 6011 + inode_lock(data_alloc_inode); 6012 6012 6013 6013 status = ocfs2_inode_lock(data_alloc_inode, &data_alloc_bh, 1); 6014 6014 if (status < 0) { ··· 6035 6035 ocfs2_inode_unlock(data_alloc_inode, 1); 6036 6036 6037 6037 out_mutex: 6038 - mutex_unlock(&data_alloc_inode->i_mutex); 6038 + inode_unlock(data_alloc_inode); 6039 6039 iput(data_alloc_inode); 6040 6040 6041 6041 out: ··· 6047 6047 int status; 6048 6048 struct inode *tl_inode = osb->osb_tl_inode; 6049 6049 6050 - mutex_lock(&tl_inode->i_mutex); 6050 + inode_lock(tl_inode); 6051 6051 status = __ocfs2_flush_truncate_log(osb); 6052 - mutex_unlock(&tl_inode->i_mutex); 6052 + inode_unlock(tl_inode); 6053 6053 6054 6054 return status; 6055 6055 } ··· 6208 6208 (unsigned long long)le64_to_cpu(tl_copy->i_blkno), 6209 6209 num_recs); 6210 6210 6211 - mutex_lock(&tl_inode->i_mutex); 6211 + inode_lock(tl_inode); 6212 6212 for(i = 0; i < num_recs; i++) { 6213 6213 if (ocfs2_truncate_log_needs_flush(osb)) { 6214 6214 status = __ocfs2_flush_truncate_log(osb); ··· 6239 6239 } 6240 6240 6241 6241 bail_up: 6242 - mutex_unlock(&tl_inode->i_mutex); 6242 + inode_unlock(tl_inode); 6243 6243 6244 6244 return status; 6245 6245 } ··· 6346 6346 goto out; 6347 6347 } 6348 6348 6349 - mutex_lock(&inode->i_mutex); 6349 + inode_lock(inode); 6350 6350 6351 6351 ret = ocfs2_inode_lock(inode, &di_bh, 1); 6352 6352 if (ret) { ··· 6395 6395 ocfs2_inode_unlock(inode, 1); 6396 6396 brelse(di_bh); 6397 6397 out_mutex: 6398 - mutex_unlock(&inode->i_mutex); 6398 + inode_unlock(inode); 6399 6399 iput(inode); 6400 6400 out: 6401 6401 while(head) { ··· 6439 6439 handle_t *handle; 6440 6440 int ret = 0; 6441 6441 6442 - mutex_lock(&tl_inode->i_mutex); 6442 + inode_lock(tl_inode); 6443 6443 6444 6444 while (head) { 6445 6445 if (ocfs2_truncate_log_needs_flush(osb)) { ··· 6471 6471 } 6472 6472 } 6473 6473 6474 - mutex_unlock(&tl_inode->i_mutex); 6474 + inode_unlock(tl_inode); 6475 6475 6476 6476 while (head) { 6477 6477 /* Premature exit may have left some dangling items. */ ··· 7355 7355 goto out; 7356 7356 } 7357 7357 7358 - mutex_lock(&main_bm_inode->i_mutex); 7358 + inode_lock(main_bm_inode); 7359 7359 7360 7360 ret = ocfs2_inode_lock(main_bm_inode, &main_bm_bh, 0); 7361 7361 if (ret < 0) { ··· 7422 7422 ocfs2_inode_unlock(main_bm_inode, 0); 7423 7423 brelse(main_bm_bh); 7424 7424 out_mutex: 7425 - mutex_unlock(&main_bm_inode->i_mutex); 7425 + inode_unlock(main_bm_inode); 7426 7426 iput(main_bm_inode); 7427 7427 out: 7428 7428 return ret;
+2 -2
fs/ocfs2/aops.c
··· 2046 2046 int ret = 0; 2047 2047 unsigned int truncated_clusters; 2048 2048 2049 - mutex_lock(&osb->osb_tl_inode->i_mutex); 2049 + inode_lock(osb->osb_tl_inode); 2050 2050 truncated_clusters = osb->truncated_clusters; 2051 - mutex_unlock(&osb->osb_tl_inode->i_mutex); 2051 + inode_unlock(osb->osb_tl_inode); 2052 2052 2053 2053 /* 2054 2054 * Check whether we can succeed in allocating if we free
+2 -2
fs/ocfs2/dir.c
··· 4361 4361 mlog_errno(ret); 4362 4362 goto out; 4363 4363 } 4364 - mutex_lock(&dx_alloc_inode->i_mutex); 4364 + inode_lock(dx_alloc_inode); 4365 4365 4366 4366 ret = ocfs2_inode_lock(dx_alloc_inode, &dx_alloc_bh, 1); 4367 4367 if (ret) { ··· 4410 4410 ocfs2_inode_unlock(dx_alloc_inode, 1); 4411 4411 4412 4412 out_mutex: 4413 - mutex_unlock(&dx_alloc_inode->i_mutex); 4413 + inode_unlock(dx_alloc_inode); 4414 4414 brelse(dx_alloc_bh); 4415 4415 out: 4416 4416 iput(dx_alloc_inode);
+6 -6
fs/ocfs2/file.c
··· 1872 1872 if (ocfs2_is_hard_readonly(osb) || ocfs2_is_soft_readonly(osb)) 1873 1873 return -EROFS; 1874 1874 1875 - mutex_lock(&inode->i_mutex); 1875 + inode_lock(inode); 1876 1876 1877 1877 /* 1878 1878 * This prevents concurrent writes on other nodes ··· 1991 1991 ocfs2_rw_unlock(inode, 1); 1992 1992 1993 1993 out: 1994 - mutex_unlock(&inode->i_mutex); 1994 + inode_unlock(inode); 1995 1995 return ret; 1996 1996 } 1997 1997 ··· 2299 2299 appending = iocb->ki_flags & IOCB_APPEND ? 1 : 0; 2300 2300 direct_io = iocb->ki_flags & IOCB_DIRECT ? 1 : 0; 2301 2301 2302 - mutex_lock(&inode->i_mutex); 2302 + inode_lock(inode); 2303 2303 2304 2304 relock: 2305 2305 /* ··· 2435 2435 ocfs2_rw_unlock(inode, rw_level); 2436 2436 2437 2437 out_mutex: 2438 - mutex_unlock(&inode->i_mutex); 2438 + inode_unlock(inode); 2439 2439 2440 2440 if (written) 2441 2441 ret = written; ··· 2547 2547 struct inode *inode = file->f_mapping->host; 2548 2548 int ret = 0; 2549 2549 2550 - mutex_lock(&inode->i_mutex); 2550 + inode_lock(inode); 2551 2551 2552 2552 switch (whence) { 2553 2553 case SEEK_SET: ··· 2585 2585 offset = vfs_setpos(file, offset, inode->i_sb->s_maxbytes); 2586 2586 2587 2587 out: 2588 - mutex_unlock(&inode->i_mutex); 2588 + inode_unlock(inode); 2589 2589 if (ret) 2590 2590 return ret; 2591 2591 return offset;
+6 -6
fs/ocfs2/inode.c
··· 630 630 goto bail; 631 631 } 632 632 633 - mutex_lock(&inode_alloc_inode->i_mutex); 633 + inode_lock(inode_alloc_inode); 634 634 status = ocfs2_inode_lock(inode_alloc_inode, &inode_alloc_bh, 1); 635 635 if (status < 0) { 636 - mutex_unlock(&inode_alloc_inode->i_mutex); 636 + inode_unlock(inode_alloc_inode); 637 637 638 638 mlog_errno(status); 639 639 goto bail; ··· 680 680 ocfs2_commit_trans(osb, handle); 681 681 bail_unlock: 682 682 ocfs2_inode_unlock(inode_alloc_inode, 1); 683 - mutex_unlock(&inode_alloc_inode->i_mutex); 683 + inode_unlock(inode_alloc_inode); 684 684 brelse(inode_alloc_bh); 685 685 bail: 686 686 iput(inode_alloc_inode); ··· 751 751 /* Lock the orphan dir. The lock will be held for the entire 752 752 * delete_inode operation. We do this now to avoid races with 753 753 * recovery completion on other nodes. */ 754 - mutex_lock(&orphan_dir_inode->i_mutex); 754 + inode_lock(orphan_dir_inode); 755 755 status = ocfs2_inode_lock(orphan_dir_inode, &orphan_dir_bh, 1); 756 756 if (status < 0) { 757 - mutex_unlock(&orphan_dir_inode->i_mutex); 757 + inode_unlock(orphan_dir_inode); 758 758 759 759 mlog_errno(status); 760 760 goto bail; ··· 803 803 return status; 804 804 805 805 ocfs2_inode_unlock(orphan_dir_inode, 1); 806 - mutex_unlock(&orphan_dir_inode->i_mutex); 806 + inode_unlock(orphan_dir_inode); 807 807 brelse(orphan_dir_bh); 808 808 bail: 809 809 iput(orphan_dir_inode);
+6 -6
fs/ocfs2/ioctl.c
··· 86 86 unsigned oldflags; 87 87 int status; 88 88 89 - mutex_lock(&inode->i_mutex); 89 + inode_lock(inode); 90 90 91 91 status = ocfs2_inode_lock(inode, &bh, 1); 92 92 if (status < 0) { ··· 135 135 bail_unlock: 136 136 ocfs2_inode_unlock(inode, 1); 137 137 bail: 138 - mutex_unlock(&inode->i_mutex); 138 + inode_unlock(inode); 139 139 140 140 brelse(bh); 141 141 ··· 287 287 struct ocfs2_dinode *dinode_alloc = NULL; 288 288 289 289 if (inode_alloc) 290 - mutex_lock(&inode_alloc->i_mutex); 290 + inode_lock(inode_alloc); 291 291 292 292 if (o2info_coherent(&fi->ifi_req)) { 293 293 status = ocfs2_inode_lock(inode_alloc, &bh, 0); ··· 317 317 ocfs2_inode_unlock(inode_alloc, 0); 318 318 319 319 if (inode_alloc) 320 - mutex_unlock(&inode_alloc->i_mutex); 320 + inode_unlock(inode_alloc); 321 321 322 322 brelse(bh); 323 323 ··· 547 547 struct ocfs2_dinode *gb_dinode = NULL; 548 548 549 549 if (gb_inode) 550 - mutex_lock(&gb_inode->i_mutex); 550 + inode_lock(gb_inode); 551 551 552 552 if (o2info_coherent(&ffg->iff_req)) { 553 553 status = ocfs2_inode_lock(gb_inode, &bh, 0); ··· 604 604 ocfs2_inode_unlock(gb_inode, 0); 605 605 606 606 if (gb_inode) 607 - mutex_unlock(&gb_inode->i_mutex); 607 + inode_unlock(gb_inode); 608 608 609 609 iput(gb_inode); 610 610 brelse(bh);
+4 -4
fs/ocfs2/journal.c
··· 2088 2088 return status; 2089 2089 } 2090 2090 2091 - mutex_lock(&orphan_dir_inode->i_mutex); 2091 + inode_lock(orphan_dir_inode); 2092 2092 status = ocfs2_inode_lock(orphan_dir_inode, NULL, 0); 2093 2093 if (status < 0) { 2094 2094 mlog_errno(status); ··· 2106 2106 out_cluster: 2107 2107 ocfs2_inode_unlock(orphan_dir_inode, 0); 2108 2108 out: 2109 - mutex_unlock(&orphan_dir_inode->i_mutex); 2109 + inode_unlock(orphan_dir_inode); 2110 2110 iput(orphan_dir_inode); 2111 2111 return status; 2112 2112 } ··· 2196 2196 oi->ip_next_orphan = NULL; 2197 2197 2198 2198 if (oi->ip_flags & OCFS2_INODE_DIO_ORPHAN_ENTRY) { 2199 - mutex_lock(&inode->i_mutex); 2199 + inode_lock(inode); 2200 2200 ret = ocfs2_rw_lock(inode, 1); 2201 2201 if (ret < 0) { 2202 2202 mlog_errno(ret); ··· 2235 2235 unlock_rw: 2236 2236 ocfs2_rw_unlock(inode, 1); 2237 2237 unlock_mutex: 2238 - mutex_unlock(&inode->i_mutex); 2238 + inode_unlock(inode); 2239 2239 2240 2240 /* clear dio flag in ocfs2_inode_info */ 2241 2241 oi->ip_flags &= ~OCFS2_INODE_DIO_ORPHAN_ENTRY;
+8 -8
fs/ocfs2/localalloc.c
··· 414 414 goto out; 415 415 } 416 416 417 - mutex_lock(&main_bm_inode->i_mutex); 417 + inode_lock(main_bm_inode); 418 418 419 419 status = ocfs2_inode_lock(main_bm_inode, &main_bm_bh, 1); 420 420 if (status < 0) { ··· 468 468 ocfs2_inode_unlock(main_bm_inode, 1); 469 469 470 470 out_mutex: 471 - mutex_unlock(&main_bm_inode->i_mutex); 471 + inode_unlock(main_bm_inode); 472 472 iput(main_bm_inode); 473 473 474 474 out: ··· 506 506 goto bail; 507 507 } 508 508 509 - mutex_lock(&inode->i_mutex); 509 + inode_lock(inode); 510 510 511 511 status = ocfs2_read_inode_block_full(inode, &alloc_bh, 512 512 OCFS2_BH_IGNORE_CACHE); ··· 539 539 brelse(alloc_bh); 540 540 541 541 if (inode) { 542 - mutex_unlock(&inode->i_mutex); 542 + inode_unlock(inode); 543 543 iput(inode); 544 544 } 545 545 ··· 571 571 goto out; 572 572 } 573 573 574 - mutex_lock(&main_bm_inode->i_mutex); 574 + inode_lock(main_bm_inode); 575 575 576 576 status = ocfs2_inode_lock(main_bm_inode, &main_bm_bh, 1); 577 577 if (status < 0) { ··· 601 601 ocfs2_inode_unlock(main_bm_inode, 1); 602 602 603 603 out_mutex: 604 - mutex_unlock(&main_bm_inode->i_mutex); 604 + inode_unlock(main_bm_inode); 605 605 606 606 brelse(main_bm_bh); 607 607 ··· 643 643 goto bail; 644 644 } 645 645 646 - mutex_lock(&local_alloc_inode->i_mutex); 646 + inode_lock(local_alloc_inode); 647 647 648 648 /* 649 649 * We must double check state and allocator bits because ··· 709 709 status = 0; 710 710 bail: 711 711 if (status < 0 && local_alloc_inode) { 712 - mutex_unlock(&local_alloc_inode->i_mutex); 712 + inode_unlock(local_alloc_inode); 713 713 iput(local_alloc_inode); 714 714 } 715 715
+8 -8
fs/ocfs2/move_extents.c
··· 276 276 * context->data_ac->ac_resv = &OCFS2_I(inode)->ip_la_data_resv; 277 277 */ 278 278 279 - mutex_lock(&tl_inode->i_mutex); 279 + inode_lock(tl_inode); 280 280 281 281 if (ocfs2_truncate_log_needs_flush(osb)) { 282 282 ret = __ocfs2_flush_truncate_log(osb); ··· 338 338 ocfs2_commit_trans(osb, handle); 339 339 340 340 out_unlock_mutex: 341 - mutex_unlock(&tl_inode->i_mutex); 341 + inode_unlock(tl_inode); 342 342 343 343 if (context->data_ac) { 344 344 ocfs2_free_alloc_context(context->data_ac); ··· 632 632 goto out; 633 633 } 634 634 635 - mutex_lock(&gb_inode->i_mutex); 635 + inode_lock(gb_inode); 636 636 637 637 ret = ocfs2_inode_lock(gb_inode, &gb_bh, 1); 638 638 if (ret) { ··· 640 640 goto out_unlock_gb_mutex; 641 641 } 642 642 643 - mutex_lock(&tl_inode->i_mutex); 643 + inode_lock(tl_inode); 644 644 645 645 handle = ocfs2_start_trans(osb, credits); 646 646 if (IS_ERR(handle)) { ··· 708 708 brelse(gd_bh); 709 709 710 710 out_unlock_tl_inode: 711 - mutex_unlock(&tl_inode->i_mutex); 711 + inode_unlock(tl_inode); 712 712 713 713 ocfs2_inode_unlock(gb_inode, 1); 714 714 out_unlock_gb_mutex: 715 - mutex_unlock(&gb_inode->i_mutex); 715 + inode_unlock(gb_inode); 716 716 brelse(gb_bh); 717 717 iput(gb_inode); 718 718 ··· 905 905 if (ocfs2_is_hard_readonly(osb) || ocfs2_is_soft_readonly(osb)) 906 906 return -EROFS; 907 907 908 - mutex_lock(&inode->i_mutex); 908 + inode_lock(inode); 909 909 910 910 /* 911 911 * This prevents concurrent writes from other nodes ··· 969 969 out_rw_unlock: 970 970 ocfs2_rw_unlock(inode, 1); 971 971 out: 972 - mutex_unlock(&inode->i_mutex); 972 + inode_unlock(inode); 973 973 974 974 return status; 975 975 }
+14 -14
fs/ocfs2/namei.c
··· 1045 1045 if (orphan_dir) { 1046 1046 /* This was locked for us in ocfs2_prepare_orphan_dir() */ 1047 1047 ocfs2_inode_unlock(orphan_dir, 1); 1048 - mutex_unlock(&orphan_dir->i_mutex); 1048 + inode_unlock(orphan_dir); 1049 1049 iput(orphan_dir); 1050 1050 } 1051 1051 ··· 1664 1664 if (orphan_dir) { 1665 1665 /* This was locked for us in ocfs2_prepare_orphan_dir() */ 1666 1666 ocfs2_inode_unlock(orphan_dir, 1); 1667 - mutex_unlock(&orphan_dir->i_mutex); 1667 + inode_unlock(orphan_dir); 1668 1668 iput(orphan_dir); 1669 1669 } 1670 1670 ··· 2121 2121 return ret; 2122 2122 } 2123 2123 2124 - mutex_lock(&orphan_dir_inode->i_mutex); 2124 + inode_lock(orphan_dir_inode); 2125 2125 2126 2126 ret = ocfs2_inode_lock(orphan_dir_inode, &orphan_dir_bh, 1); 2127 2127 if (ret < 0) { 2128 - mutex_unlock(&orphan_dir_inode->i_mutex); 2128 + inode_unlock(orphan_dir_inode); 2129 2129 iput(orphan_dir_inode); 2130 2130 2131 2131 mlog_errno(ret); ··· 2226 2226 2227 2227 if (ret) { 2228 2228 ocfs2_inode_unlock(orphan_dir_inode, 1); 2229 - mutex_unlock(&orphan_dir_inode->i_mutex); 2229 + inode_unlock(orphan_dir_inode); 2230 2230 iput(orphan_dir_inode); 2231 2231 } 2232 2232 ··· 2495 2495 ocfs2_free_alloc_context(inode_ac); 2496 2496 2497 2497 /* Unroll orphan dir locking */ 2498 - mutex_unlock(&orphan_dir->i_mutex); 2498 + inode_unlock(orphan_dir); 2499 2499 ocfs2_inode_unlock(orphan_dir, 1); 2500 2500 iput(orphan_dir); 2501 2501 } ··· 2602 2602 if (orphan_dir) { 2603 2603 /* This was locked for us in ocfs2_prepare_orphan_dir() */ 2604 2604 ocfs2_inode_unlock(orphan_dir, 1); 2605 - mutex_unlock(&orphan_dir->i_mutex); 2605 + inode_unlock(orphan_dir); 2606 2606 iput(orphan_dir); 2607 2607 } 2608 2608 ··· 2689 2689 2690 2690 bail_unlock_orphan: 2691 2691 ocfs2_inode_unlock(orphan_dir_inode, 1); 2692 - mutex_unlock(&orphan_dir_inode->i_mutex); 2692 + inode_unlock(orphan_dir_inode); 2693 2693 iput(orphan_dir_inode); 2694 2694 2695 2695 ocfs2_free_dir_lookup_result(&orphan_insert); ··· 2721 2721 goto bail; 2722 2722 } 2723 2723 2724 - mutex_lock(&orphan_dir_inode->i_mutex); 2724 + inode_lock(orphan_dir_inode); 2725 2725 status = ocfs2_inode_lock(orphan_dir_inode, &orphan_dir_bh, 1); 2726 2726 if (status < 0) { 2727 - mutex_unlock(&orphan_dir_inode->i_mutex); 2727 + inode_unlock(orphan_dir_inode); 2728 2728 iput(orphan_dir_inode); 2729 2729 mlog_errno(status); 2730 2730 goto bail; ··· 2770 2770 2771 2771 bail_unlock_orphan: 2772 2772 ocfs2_inode_unlock(orphan_dir_inode, 1); 2773 - mutex_unlock(&orphan_dir_inode->i_mutex); 2773 + inode_unlock(orphan_dir_inode); 2774 2774 brelse(orphan_dir_bh); 2775 2775 iput(orphan_dir_inode); 2776 2776 ··· 2834 2834 goto leave; 2835 2835 } 2836 2836 2837 - mutex_lock(&orphan_dir_inode->i_mutex); 2837 + inode_lock(orphan_dir_inode); 2838 2838 2839 2839 status = ocfs2_inode_lock(orphan_dir_inode, &orphan_dir_bh, 1); 2840 2840 if (status < 0) { 2841 2841 mlog_errno(status); 2842 - mutex_unlock(&orphan_dir_inode->i_mutex); 2842 + inode_unlock(orphan_dir_inode); 2843 2843 iput(orphan_dir_inode); 2844 2844 goto leave; 2845 2845 } ··· 2901 2901 ocfs2_commit_trans(osb, handle); 2902 2902 orphan_unlock: 2903 2903 ocfs2_inode_unlock(orphan_dir_inode, 1); 2904 - mutex_unlock(&orphan_dir_inode->i_mutex); 2904 + inode_unlock(orphan_dir_inode); 2905 2905 iput(orphan_dir_inode); 2906 2906 leave: 2907 2907
+2 -2
fs/ocfs2/quota_global.c
··· 308 308 WARN_ON(bh != oinfo->dqi_gqi_bh); 309 309 spin_unlock(&dq_data_lock); 310 310 if (ex) { 311 - mutex_lock(&oinfo->dqi_gqinode->i_mutex); 311 + inode_lock(oinfo->dqi_gqinode); 312 312 down_write(&OCFS2_I(oinfo->dqi_gqinode)->ip_alloc_sem); 313 313 } else { 314 314 down_read(&OCFS2_I(oinfo->dqi_gqinode)->ip_alloc_sem); ··· 320 320 { 321 321 if (ex) { 322 322 up_write(&OCFS2_I(oinfo->dqi_gqinode)->ip_alloc_sem); 323 - mutex_unlock(&oinfo->dqi_gqinode->i_mutex); 323 + inode_unlock(oinfo->dqi_gqinode); 324 324 } else { 325 325 up_read(&OCFS2_I(oinfo->dqi_gqinode)->ip_alloc_sem); 326 326 }
+6 -6
fs/ocfs2/refcounttree.c
··· 807 807 mlog_errno(ret); 808 808 goto out; 809 809 } 810 - mutex_lock(&alloc_inode->i_mutex); 810 + inode_lock(alloc_inode); 811 811 812 812 ret = ocfs2_inode_lock(alloc_inode, &alloc_bh, 1); 813 813 if (ret) { ··· 867 867 } 868 868 out_mutex: 869 869 if (alloc_inode) { 870 - mutex_unlock(&alloc_inode->i_mutex); 870 + inode_unlock(alloc_inode); 871 871 iput(alloc_inode); 872 872 } 873 873 out: ··· 4197 4197 goto out; 4198 4198 } 4199 4199 4200 - mutex_lock_nested(&new_inode->i_mutex, I_MUTEX_CHILD); 4200 + inode_lock_nested(new_inode, I_MUTEX_CHILD); 4201 4201 ret = ocfs2_inode_lock_nested(new_inode, &new_bh, 1, 4202 4202 OI_LS_REFLINK_TARGET); 4203 4203 if (ret) { ··· 4231 4231 ocfs2_inode_unlock(new_inode, 1); 4232 4232 brelse(new_bh); 4233 4233 out_unlock: 4234 - mutex_unlock(&new_inode->i_mutex); 4234 + inode_unlock(new_inode); 4235 4235 out: 4236 4236 if (!ret) { 4237 4237 ret = filemap_fdatawait(inode->i_mapping); ··· 4402 4402 return error; 4403 4403 } 4404 4404 4405 - mutex_lock(&inode->i_mutex); 4405 + inode_lock(inode); 4406 4406 error = dquot_initialize(dir); 4407 4407 if (!error) 4408 4408 error = ocfs2_reflink(old_dentry, dir, new_dentry, preserve); 4409 - mutex_unlock(&inode->i_mutex); 4409 + inode_unlock(inode); 4410 4410 if (!error) 4411 4411 fsnotify_create(dir, new_dentry); 4412 4412 return error;
+4 -4
fs/ocfs2/resize.c
··· 301 301 goto out; 302 302 } 303 303 304 - mutex_lock(&main_bm_inode->i_mutex); 304 + inode_lock(main_bm_inode); 305 305 306 306 ret = ocfs2_inode_lock(main_bm_inode, &main_bm_bh, 1); 307 307 if (ret < 0) { ··· 375 375 ocfs2_inode_unlock(main_bm_inode, 1); 376 376 377 377 out_mutex: 378 - mutex_unlock(&main_bm_inode->i_mutex); 378 + inode_unlock(main_bm_inode); 379 379 iput(main_bm_inode); 380 380 381 381 out: ··· 486 486 goto out; 487 487 } 488 488 489 - mutex_lock(&main_bm_inode->i_mutex); 489 + inode_lock(main_bm_inode); 490 490 491 491 ret = ocfs2_inode_lock(main_bm_inode, &main_bm_bh, 1); 492 492 if (ret < 0) { ··· 590 590 ocfs2_inode_unlock(main_bm_inode, 1); 591 591 592 592 out_mutex: 593 - mutex_unlock(&main_bm_inode->i_mutex); 593 + inode_unlock(main_bm_inode); 594 594 iput(main_bm_inode); 595 595 596 596 out:
+6 -6
fs/ocfs2/suballoc.c
··· 141 141 if (ac->ac_which != OCFS2_AC_USE_LOCAL) 142 142 ocfs2_inode_unlock(inode, 1); 143 143 144 - mutex_unlock(&inode->i_mutex); 144 + inode_unlock(inode); 145 145 146 146 iput(inode); 147 147 ac->ac_inode = NULL; ··· 797 797 return -EINVAL; 798 798 } 799 799 800 - mutex_lock(&alloc_inode->i_mutex); 800 + inode_lock(alloc_inode); 801 801 802 802 status = ocfs2_inode_lock(alloc_inode, &bh, 1); 803 803 if (status < 0) { 804 - mutex_unlock(&alloc_inode->i_mutex); 804 + inode_unlock(alloc_inode); 805 805 iput(alloc_inode); 806 806 807 807 mlog_errno(status); ··· 2875 2875 goto bail; 2876 2876 } 2877 2877 2878 - mutex_lock(&inode_alloc_inode->i_mutex); 2878 + inode_lock(inode_alloc_inode); 2879 2879 status = ocfs2_inode_lock(inode_alloc_inode, &alloc_bh, 0); 2880 2880 if (status < 0) { 2881 - mutex_unlock(&inode_alloc_inode->i_mutex); 2881 + inode_unlock(inode_alloc_inode); 2882 2882 iput(inode_alloc_inode); 2883 2883 mlog(ML_ERROR, "lock on alloc inode on slot %u failed %d\n", 2884 2884 (u32)suballoc_slot, status); ··· 2891 2891 mlog(ML_ERROR, "test suballoc bit failed %d\n", status); 2892 2892 2893 2893 ocfs2_inode_unlock(inode_alloc_inode, 0); 2894 - mutex_unlock(&inode_alloc_inode->i_mutex); 2894 + inode_unlock(inode_alloc_inode); 2895 2895 2896 2896 iput(inode_alloc_inode); 2897 2897 brelse(alloc_bh);
+7 -7
fs/ocfs2/xattr.c
··· 2524 2524 mlog_errno(ret); 2525 2525 goto out; 2526 2526 } 2527 - mutex_lock(&xb_alloc_inode->i_mutex); 2527 + inode_lock(xb_alloc_inode); 2528 2528 2529 2529 ret = ocfs2_inode_lock(xb_alloc_inode, &xb_alloc_bh, 1); 2530 2530 if (ret < 0) { ··· 2549 2549 ocfs2_inode_unlock(xb_alloc_inode, 1); 2550 2550 brelse(xb_alloc_bh); 2551 2551 out_mutex: 2552 - mutex_unlock(&xb_alloc_inode->i_mutex); 2552 + inode_unlock(xb_alloc_inode); 2553 2553 iput(xb_alloc_inode); 2554 2554 out: 2555 2555 brelse(blk_bh); ··· 3619 3619 } 3620 3620 } 3621 3621 3622 - mutex_lock(&tl_inode->i_mutex); 3622 + inode_lock(tl_inode); 3623 3623 3624 3624 if (ocfs2_truncate_log_needs_flush(osb)) { 3625 3625 ret = __ocfs2_flush_truncate_log(osb); 3626 3626 if (ret < 0) { 3627 - mutex_unlock(&tl_inode->i_mutex); 3627 + inode_unlock(tl_inode); 3628 3628 mlog_errno(ret); 3629 3629 goto cleanup; 3630 3630 } 3631 3631 } 3632 - mutex_unlock(&tl_inode->i_mutex); 3632 + inode_unlock(tl_inode); 3633 3633 3634 3634 ret = ocfs2_init_xattr_set_ctxt(inode, di, &xi, &xis, 3635 3635 &xbs, &ctxt, ref_meta, &credits); ··· 5460 5460 return ret; 5461 5461 } 5462 5462 5463 - mutex_lock(&tl_inode->i_mutex); 5463 + inode_lock(tl_inode); 5464 5464 5465 5465 if (ocfs2_truncate_log_needs_flush(osb)) { 5466 5466 ret = __ocfs2_flush_truncate_log(osb); ··· 5504 5504 out: 5505 5505 ocfs2_schedule_truncate_log_flush(osb, 1); 5506 5506 5507 - mutex_unlock(&tl_inode->i_mutex); 5507 + inode_unlock(tl_inode); 5508 5508 5509 5509 if (meta_ac) 5510 5510 ocfs2_free_alloc_context(meta_ac);
+6 -6
fs/open.c
··· 58 58 if (ret) 59 59 newattrs.ia_valid |= ret | ATTR_FORCE; 60 60 61 - mutex_lock(&dentry->d_inode->i_mutex); 61 + inode_lock(dentry->d_inode); 62 62 /* Note any delegations or leases have already been broken: */ 63 63 ret = notify_change(dentry, &newattrs, NULL); 64 - mutex_unlock(&dentry->d_inode->i_mutex); 64 + inode_unlock(dentry->d_inode); 65 65 return ret; 66 66 } 67 67 ··· 510 510 if (error) 511 511 return error; 512 512 retry_deleg: 513 - mutex_lock(&inode->i_mutex); 513 + inode_lock(inode); 514 514 error = security_path_chmod(path, mode); 515 515 if (error) 516 516 goto out_unlock; ··· 518 518 newattrs.ia_valid = ATTR_MODE | ATTR_CTIME; 519 519 error = notify_change(path->dentry, &newattrs, &delegated_inode); 520 520 out_unlock: 521 - mutex_unlock(&inode->i_mutex); 521 + inode_unlock(inode); 522 522 if (delegated_inode) { 523 523 error = break_deleg_wait(&delegated_inode); 524 524 if (!error) ··· 593 593 if (!S_ISDIR(inode->i_mode)) 594 594 newattrs.ia_valid |= 595 595 ATTR_KILL_SUID | ATTR_KILL_SGID | ATTR_KILL_PRIV; 596 - mutex_lock(&inode->i_mutex); 596 + inode_lock(inode); 597 597 error = security_path_chown(path, uid, gid); 598 598 if (!error) 599 599 error = notify_change(path->dentry, &newattrs, &delegated_inode); 600 - mutex_unlock(&inode->i_mutex); 600 + inode_unlock(inode); 601 601 if (delegated_inode) { 602 602 error = break_deleg_wait(&delegated_inode); 603 603 if (!error)
+2 -2
fs/overlayfs/copy_up.c
··· 248 248 if (err) 249 249 goto out_cleanup; 250 250 251 - mutex_lock(&newdentry->d_inode->i_mutex); 251 + inode_lock(newdentry->d_inode); 252 252 err = ovl_set_attr(newdentry, stat); 253 - mutex_unlock(&newdentry->d_inode->i_mutex); 253 + inode_unlock(newdentry->d_inode); 254 254 if (err) 255 255 goto out_cleanup; 256 256
+6 -6
fs/overlayfs/dir.c
··· 167 167 struct dentry *newdentry; 168 168 int err; 169 169 170 - mutex_lock_nested(&udir->i_mutex, I_MUTEX_PARENT); 170 + inode_lock_nested(udir, I_MUTEX_PARENT); 171 171 newdentry = lookup_one_len(dentry->d_name.name, upperdir, 172 172 dentry->d_name.len); 173 173 err = PTR_ERR(newdentry); ··· 185 185 out_dput: 186 186 dput(newdentry); 187 187 out_unlock: 188 - mutex_unlock(&udir->i_mutex); 188 + inode_unlock(udir); 189 189 return err; 190 190 } 191 191 ··· 258 258 if (err) 259 259 goto out_cleanup; 260 260 261 - mutex_lock(&opaquedir->d_inode->i_mutex); 261 + inode_lock(opaquedir->d_inode); 262 262 err = ovl_set_attr(opaquedir, &stat); 263 - mutex_unlock(&opaquedir->d_inode->i_mutex); 263 + inode_unlock(opaquedir->d_inode); 264 264 if (err) 265 265 goto out_cleanup; 266 266 ··· 599 599 struct dentry *upper = ovl_dentry_upper(dentry); 600 600 int err; 601 601 602 - mutex_lock_nested(&dir->i_mutex, I_MUTEX_PARENT); 602 + inode_lock_nested(dir, I_MUTEX_PARENT); 603 603 err = -ESTALE; 604 604 if (upper->d_parent == upperdir) { 605 605 /* Don't let d_delete() think it can reset d_inode */ ··· 619 619 * now. 620 620 */ 621 621 d_drop(dentry); 622 - mutex_unlock(&dir->i_mutex); 622 + inode_unlock(dir); 623 623 624 624 return err; 625 625 }
+2 -2
fs/overlayfs/inode.c
··· 63 63 if (!err) { 64 64 upperdentry = ovl_dentry_upper(dentry); 65 65 66 - mutex_lock(&upperdentry->d_inode->i_mutex); 66 + inode_lock(upperdentry->d_inode); 67 67 err = notify_change(upperdentry, attr, NULL); 68 - mutex_unlock(&upperdentry->d_inode->i_mutex); 68 + inode_unlock(upperdentry->d_inode); 69 69 } 70 70 ovl_drop_write(dentry); 71 71 out:
+10 -10
fs/overlayfs/readdir.c
··· 228 228 dput(dentry); 229 229 } 230 230 } 231 - mutex_unlock(&dir->d_inode->i_mutex); 231 + inode_unlock(dir->d_inode); 232 232 } 233 233 revert_creds(old_cred); 234 234 put_cred(override_cred); ··· 399 399 loff_t res; 400 400 struct ovl_dir_file *od = file->private_data; 401 401 402 - mutex_lock(&file_inode(file)->i_mutex); 402 + inode_lock(file_inode(file)); 403 403 if (!file->f_pos) 404 404 ovl_dir_reset(file); 405 405 ··· 429 429 res = offset; 430 430 } 431 431 out_unlock: 432 - mutex_unlock(&file_inode(file)->i_mutex); 432 + inode_unlock(file_inode(file)); 433 433 434 434 return res; 435 435 } ··· 454 454 ovl_path_upper(dentry, &upperpath); 455 455 realfile = ovl_path_open(&upperpath, O_RDONLY); 456 456 smp_mb__before_spinlock(); 457 - mutex_lock(&inode->i_mutex); 457 + inode_lock(inode); 458 458 if (!od->upperfile) { 459 459 if (IS_ERR(realfile)) { 460 - mutex_unlock(&inode->i_mutex); 460 + inode_unlock(inode); 461 461 return PTR_ERR(realfile); 462 462 } 463 463 od->upperfile = realfile; ··· 467 467 fput(realfile); 468 468 realfile = od->upperfile; 469 469 } 470 - mutex_unlock(&inode->i_mutex); 470 + inode_unlock(inode); 471 471 } 472 472 } 473 473 ··· 479 479 struct ovl_dir_file *od = file->private_data; 480 480 481 481 if (od->cache) { 482 - mutex_lock(&inode->i_mutex); 482 + inode_lock(inode); 483 483 ovl_cache_put(od, file->f_path.dentry); 484 - mutex_unlock(&inode->i_mutex); 484 + inode_unlock(inode); 485 485 } 486 486 fput(od->realfile); 487 487 if (od->upperfile) ··· 557 557 { 558 558 struct ovl_cache_entry *p; 559 559 560 - mutex_lock_nested(&upper->d_inode->i_mutex, I_MUTEX_CHILD); 560 + inode_lock_nested(upper->d_inode, I_MUTEX_CHILD); 561 561 list_for_each_entry(p, list, l_node) { 562 562 struct dentry *dentry; 563 563 ··· 575 575 ovl_cleanup(upper->d_inode, dentry); 576 576 dput(dentry); 577 577 } 578 - mutex_unlock(&upper->d_inode->i_mutex); 578 + inode_unlock(upper->d_inode); 579 579 }
+7 -7
fs/overlayfs/super.c
··· 229 229 { 230 230 struct ovl_entry *oe = dentry->d_fsdata; 231 231 232 - WARN_ON(!mutex_is_locked(&upperdentry->d_parent->d_inode->i_mutex)); 232 + WARN_ON(!inode_is_locked(upperdentry->d_parent->d_inode)); 233 233 WARN_ON(oe->__upperdentry); 234 234 BUG_ON(!upperdentry->d_inode); 235 235 /* ··· 244 244 { 245 245 struct ovl_entry *oe = dentry->d_fsdata; 246 246 247 - WARN_ON(!mutex_is_locked(&dentry->d_inode->i_mutex)); 247 + WARN_ON(!inode_is_locked(dentry->d_inode)); 248 248 oe->version++; 249 249 } 250 250 ··· 252 252 { 253 253 struct ovl_entry *oe = dentry->d_fsdata; 254 254 255 - WARN_ON(!mutex_is_locked(&dentry->d_inode->i_mutex)); 255 + WARN_ON(!inode_is_locked(dentry->d_inode)); 256 256 return oe->version; 257 257 } 258 258 ··· 375 375 { 376 376 struct dentry *dentry; 377 377 378 - mutex_lock(&dir->d_inode->i_mutex); 378 + inode_lock(dir->d_inode); 379 379 dentry = lookup_one_len(name->name, dir, name->len); 380 - mutex_unlock(&dir->d_inode->i_mutex); 380 + inode_unlock(dir->d_inode); 381 381 382 382 if (IS_ERR(dentry)) { 383 383 if (PTR_ERR(dentry) == -ENOENT) ··· 744 744 if (err) 745 745 return ERR_PTR(err); 746 746 747 - mutex_lock_nested(&dir->i_mutex, I_MUTEX_PARENT); 747 + inode_lock_nested(dir, I_MUTEX_PARENT); 748 748 retry: 749 749 work = lookup_one_len(OVL_WORKDIR_NAME, dentry, 750 750 strlen(OVL_WORKDIR_NAME)); ··· 770 770 goto out_dput; 771 771 } 772 772 out_unlock: 773 - mutex_unlock(&dir->i_mutex); 773 + inode_unlock(dir); 774 774 mnt_drop_write(mnt); 775 775 776 776 return work;
+2 -2
fs/proc/kcore.c
··· 552 552 if (kcore_need_update) 553 553 kcore_update_ram(); 554 554 if (i_size_read(inode) != proc_root_kcore->size) { 555 - mutex_lock(&inode->i_mutex); 555 + inode_lock(inode); 556 556 i_size_write(inode, proc_root_kcore->size); 557 - mutex_unlock(&inode->i_mutex); 557 + inode_unlock(inode); 558 558 } 559 559 return 0; 560 560 }
+2 -2
fs/proc/self.c
··· 50 50 struct pid_namespace *ns = s->s_fs_info; 51 51 struct dentry *self; 52 52 53 - mutex_lock(&root_inode->i_mutex); 53 + inode_lock(root_inode); 54 54 self = d_alloc_name(s->s_root, "self"); 55 55 if (self) { 56 56 struct inode *inode = new_inode_pseudo(s); ··· 69 69 } else { 70 70 self = ERR_PTR(-ENOMEM); 71 71 } 72 - mutex_unlock(&root_inode->i_mutex); 72 + inode_unlock(root_inode); 73 73 if (IS_ERR(self)) { 74 74 pr_err("proc_fill_super: can't allocate /proc/self\n"); 75 75 return PTR_ERR(self);
+2 -2
fs/proc/thread_self.c
··· 52 52 struct pid_namespace *ns = s->s_fs_info; 53 53 struct dentry *thread_self; 54 54 55 - mutex_lock(&root_inode->i_mutex); 55 + inode_lock(root_inode); 56 56 thread_self = d_alloc_name(s->s_root, "thread-self"); 57 57 if (thread_self) { 58 58 struct inode *inode = new_inode_pseudo(s); ··· 71 71 } else { 72 72 thread_self = ERR_PTR(-ENOMEM); 73 73 } 74 - mutex_unlock(&root_inode->i_mutex); 74 + inode_unlock(root_inode); 75 75 if (IS_ERR(thread_self)) { 76 76 pr_err("proc_fill_super: can't allocate /proc/thread_self\n"); 77 77 return PTR_ERR(thread_self);
+3 -3
fs/pstore/inode.c
··· 377 377 break; 378 378 } 379 379 380 - mutex_lock(&d_inode(root)->i_mutex); 380 + inode_lock(d_inode(root)); 381 381 382 382 dentry = d_alloc_name(root, name); 383 383 if (!dentry) ··· 397 397 list_add(&private->list, &allpstore); 398 398 spin_unlock_irqrestore(&allpstore_lock, flags); 399 399 400 - mutex_unlock(&d_inode(root)->i_mutex); 400 + inode_unlock(d_inode(root)); 401 401 402 402 return 0; 403 403 404 404 fail_lockedalloc: 405 - mutex_unlock(&d_inode(root)->i_mutex); 405 + inode_unlock(d_inode(root)); 406 406 kfree(private); 407 407 fail_alloc: 408 408 iput(inode);
+10 -10
fs/quota/dquot.c
··· 682 682 continue; 683 683 if (!sb_has_quota_active(sb, cnt)) 684 684 continue; 685 - mutex_lock(&dqopt->files[cnt]->i_mutex); 685 + inode_lock(dqopt->files[cnt]); 686 686 truncate_inode_pages(&dqopt->files[cnt]->i_data, 0); 687 - mutex_unlock(&dqopt->files[cnt]->i_mutex); 687 + inode_unlock(dqopt->files[cnt]); 688 688 } 689 689 mutex_unlock(&dqopt->dqonoff_mutex); 690 690 ··· 2162 2162 /* If quota was reenabled in the meantime, we have 2163 2163 * nothing to do */ 2164 2164 if (!sb_has_quota_loaded(sb, cnt)) { 2165 - mutex_lock(&toputinode[cnt]->i_mutex); 2165 + inode_lock(toputinode[cnt]); 2166 2166 toputinode[cnt]->i_flags &= ~(S_IMMUTABLE | 2167 2167 S_NOATIME | S_NOQUOTA); 2168 2168 truncate_inode_pages(&toputinode[cnt]->i_data, 2169 2169 0); 2170 - mutex_unlock(&toputinode[cnt]->i_mutex); 2170 + inode_unlock(toputinode[cnt]); 2171 2171 mark_inode_dirty_sync(toputinode[cnt]); 2172 2172 } 2173 2173 mutex_unlock(&dqopt->dqonoff_mutex); ··· 2258 2258 /* We don't want quota and atime on quota files (deadlocks 2259 2259 * possible) Also nobody should write to the file - we use 2260 2260 * special IO operations which ignore the immutable bit. */ 2261 - mutex_lock(&inode->i_mutex); 2261 + inode_lock(inode); 2262 2262 oldflags = inode->i_flags & (S_NOATIME | S_IMMUTABLE | 2263 2263 S_NOQUOTA); 2264 2264 inode->i_flags |= S_NOQUOTA | S_NOATIME | S_IMMUTABLE; 2265 - mutex_unlock(&inode->i_mutex); 2265 + inode_unlock(inode); 2266 2266 /* 2267 2267 * When S_NOQUOTA is set, remove dquot references as no more 2268 2268 * references can be added ··· 2305 2305 iput(inode); 2306 2306 out_lock: 2307 2307 if (oldflags != -1) { 2308 - mutex_lock(&inode->i_mutex); 2308 + inode_lock(inode); 2309 2309 /* Set the flags back (in the case of accidental quotaon() 2310 2310 * on a wrong file we don't want to mess up the flags) */ 2311 2311 inode->i_flags &= ~(S_NOATIME | S_NOQUOTA | S_IMMUTABLE); 2312 2312 inode->i_flags |= oldflags; 2313 - mutex_unlock(&inode->i_mutex); 2313 + inode_unlock(inode); 2314 2314 } 2315 2315 mutex_unlock(&dqopt->dqonoff_mutex); 2316 2316 out_fmt: ··· 2430 2430 struct dentry *dentry; 2431 2431 int error; 2432 2432 2433 - mutex_lock(&d_inode(sb->s_root)->i_mutex); 2433 + inode_lock(d_inode(sb->s_root)); 2434 2434 dentry = lookup_one_len(qf_name, sb->s_root, strlen(qf_name)); 2435 - mutex_unlock(&d_inode(sb->s_root)->i_mutex); 2435 + inode_unlock(d_inode(sb->s_root)); 2436 2436 if (IS_ERR(dentry)) 2437 2437 return PTR_ERR(dentry); 2438 2438
+2 -2
fs/read_write.c
··· 238 238 struct inode *inode = file_inode(file); 239 239 loff_t retval; 240 240 241 - mutex_lock(&inode->i_mutex); 241 + inode_lock(inode); 242 242 switch (whence) { 243 243 case SEEK_END: 244 244 offset += i_size_read(inode); ··· 283 283 retval = offset; 284 284 } 285 285 out: 286 - mutex_unlock(&inode->i_mutex); 286 + inode_unlock(inode); 287 287 return retval; 288 288 } 289 289 EXPORT_SYMBOL(default_llseek);
+1 -1
fs/readdir.c
··· 44 44 fsnotify_access(file); 45 45 file_accessed(file); 46 46 } 47 - mutex_unlock(&inode->i_mutex); 47 + inode_unlock(inode); 48 48 out: 49 49 return res; 50 50 }
+2 -2
fs/reiserfs/dir.c
··· 38 38 if (err) 39 39 return err; 40 40 41 - mutex_lock(&inode->i_mutex); 41 + inode_lock(inode); 42 42 reiserfs_write_lock(inode->i_sb); 43 43 err = reiserfs_commit_for_inode(inode); 44 44 reiserfs_write_unlock(inode->i_sb); 45 - mutex_unlock(&inode->i_mutex); 45 + inode_unlock(inode); 46 46 if (err < 0) 47 47 return err; 48 48 return 0;
+2 -2
fs/reiserfs/file.c
··· 158 158 if (err) 159 159 return err; 160 160 161 - mutex_lock(&inode->i_mutex); 161 + inode_lock(inode); 162 162 BUG_ON(!S_ISREG(inode->i_mode)); 163 163 err = sync_mapping_buffers(inode->i_mapping); 164 164 reiserfs_write_lock(inode->i_sb); ··· 166 166 reiserfs_write_unlock(inode->i_sb); 167 167 if (barrier_done != 1 && reiserfs_barrier_flush(inode->i_sb)) 168 168 blkdev_issue_flush(inode->i_sb->s_bdev, GFP_KERNEL, NULL); 169 - mutex_unlock(&inode->i_mutex); 169 + inode_unlock(inode); 170 170 if (barrier_done < 0) 171 171 return barrier_done; 172 172 return (err < 0) ? -EIO : 0;
+1 -1
fs/reiserfs/ioctl.c
··· 224 224 page_cache_release(page); 225 225 226 226 out: 227 - mutex_unlock(&inode->i_mutex); 227 + inode_unlock(inode); 228 228 reiserfs_write_unlock(inode->i_sb); 229 229 return retval; 230 230 }
+32 -32
fs/reiserfs/xattr.c
··· 64 64 #ifdef CONFIG_REISERFS_FS_XATTR 65 65 static int xattr_create(struct inode *dir, struct dentry *dentry, int mode) 66 66 { 67 - BUG_ON(!mutex_is_locked(&dir->i_mutex)); 67 + BUG_ON(!inode_is_locked(dir)); 68 68 return dir->i_op->create(dir, dentry, mode, true); 69 69 } 70 70 #endif 71 71 72 72 static int xattr_mkdir(struct inode *dir, struct dentry *dentry, umode_t mode) 73 73 { 74 - BUG_ON(!mutex_is_locked(&dir->i_mutex)); 74 + BUG_ON(!inode_is_locked(dir)); 75 75 return dir->i_op->mkdir(dir, dentry, mode); 76 76 } 77 77 ··· 85 85 { 86 86 int error; 87 87 88 - BUG_ON(!mutex_is_locked(&dir->i_mutex)); 88 + BUG_ON(!inode_is_locked(dir)); 89 89 90 - mutex_lock_nested(&d_inode(dentry)->i_mutex, I_MUTEX_CHILD); 90 + inode_lock_nested(d_inode(dentry), I_MUTEX_CHILD); 91 91 error = dir->i_op->unlink(dir, dentry); 92 - mutex_unlock(&d_inode(dentry)->i_mutex); 92 + inode_unlock(d_inode(dentry)); 93 93 94 94 if (!error) 95 95 d_delete(dentry); ··· 100 100 { 101 101 int error; 102 102 103 - BUG_ON(!mutex_is_locked(&dir->i_mutex)); 103 + BUG_ON(!inode_is_locked(dir)); 104 104 105 - mutex_lock_nested(&d_inode(dentry)->i_mutex, I_MUTEX_CHILD); 105 + inode_lock_nested(d_inode(dentry), I_MUTEX_CHILD); 106 106 error = dir->i_op->rmdir(dir, dentry); 107 107 if (!error) 108 108 d_inode(dentry)->i_flags |= S_DEAD; 109 - mutex_unlock(&d_inode(dentry)->i_mutex); 109 + inode_unlock(d_inode(dentry)); 110 110 if (!error) 111 111 d_delete(dentry); 112 112 ··· 123 123 if (d_really_is_negative(privroot)) 124 124 return ERR_PTR(-ENODATA); 125 125 126 - mutex_lock_nested(&d_inode(privroot)->i_mutex, I_MUTEX_XATTR); 126 + inode_lock_nested(d_inode(privroot), I_MUTEX_XATTR); 127 127 128 128 xaroot = dget(REISERFS_SB(sb)->xattr_root); 129 129 if (!xaroot) ··· 139 139 } 140 140 } 141 141 142 - mutex_unlock(&d_inode(privroot)->i_mutex); 142 + inode_unlock(d_inode(privroot)); 143 143 return xaroot; 144 144 } 145 145 ··· 156 156 le32_to_cpu(INODE_PKEY(inode)->k_objectid), 157 157 inode->i_generation); 158 158 159 - mutex_lock_nested(&d_inode(xaroot)->i_mutex, I_MUTEX_XATTR); 159 + inode_lock_nested(d_inode(xaroot), I_MUTEX_XATTR); 160 160 161 161 xadir = lookup_one_len(namebuf, xaroot, strlen(namebuf)); 162 162 if (!IS_ERR(xadir) && d_really_is_negative(xadir)) { ··· 170 170 } 171 171 } 172 172 173 - mutex_unlock(&d_inode(xaroot)->i_mutex); 173 + inode_unlock(d_inode(xaroot)); 174 174 dput(xaroot); 175 175 return xadir; 176 176 } ··· 195 195 container_of(ctx, struct reiserfs_dentry_buf, ctx); 196 196 struct dentry *dentry; 197 197 198 - WARN_ON_ONCE(!mutex_is_locked(&d_inode(dbuf->xadir)->i_mutex)); 198 + WARN_ON_ONCE(!inode_is_locked(d_inode(dbuf->xadir))); 199 199 200 200 if (dbuf->count == ARRAY_SIZE(dbuf->dentries)) 201 201 return -ENOSPC; ··· 254 254 goto out_dir; 255 255 } 256 256 257 - mutex_lock_nested(&d_inode(dir)->i_mutex, I_MUTEX_XATTR); 257 + inode_lock_nested(d_inode(dir), I_MUTEX_XATTR); 258 258 259 259 buf.xadir = dir; 260 260 while (1) { ··· 276 276 break; 277 277 buf.count = 0; 278 278 } 279 - mutex_unlock(&d_inode(dir)->i_mutex); 279 + inode_unlock(d_inode(dir)); 280 280 281 281 cleanup_dentry_buf(&buf); 282 282 ··· 298 298 if (!err) { 299 299 int jerror; 300 300 301 - mutex_lock_nested(&d_inode(dir->d_parent)->i_mutex, 301 + inode_lock_nested(d_inode(dir->d_parent), 302 302 I_MUTEX_XATTR); 303 303 err = action(dir, data); 304 304 reiserfs_write_lock(inode->i_sb); 305 305 jerror = journal_end(&th); 306 306 reiserfs_write_unlock(inode->i_sb); 307 - mutex_unlock(&d_inode(dir->d_parent)->i_mutex); 307 + inode_unlock(d_inode(dir->d_parent)); 308 308 err = jerror ?: err; 309 309 } 310 310 } ··· 384 384 if (IS_ERR(xadir)) 385 385 return ERR_CAST(xadir); 386 386 387 - mutex_lock_nested(&d_inode(xadir)->i_mutex, I_MUTEX_XATTR); 387 + inode_lock_nested(d_inode(xadir), I_MUTEX_XATTR); 388 388 xafile = lookup_one_len(name, xadir, strlen(name)); 389 389 if (IS_ERR(xafile)) { 390 390 err = PTR_ERR(xafile); ··· 404 404 if (err) 405 405 dput(xafile); 406 406 out: 407 - mutex_unlock(&d_inode(xadir)->i_mutex); 407 + inode_unlock(d_inode(xadir)); 408 408 dput(xadir); 409 409 if (err) 410 410 return ERR_PTR(err); ··· 469 469 if (IS_ERR(xadir)) 470 470 return PTR_ERR(xadir); 471 471 472 - mutex_lock_nested(&d_inode(xadir)->i_mutex, I_MUTEX_XATTR); 472 + inode_lock_nested(d_inode(xadir), I_MUTEX_XATTR); 473 473 dentry = lookup_one_len(name, xadir, strlen(name)); 474 474 if (IS_ERR(dentry)) { 475 475 err = PTR_ERR(dentry); ··· 483 483 484 484 dput(dentry); 485 485 out_dput: 486 - mutex_unlock(&d_inode(xadir)->i_mutex); 486 + inode_unlock(d_inode(xadir)); 487 487 dput(xadir); 488 488 return err; 489 489 } ··· 580 580 .ia_valid = ATTR_SIZE | ATTR_CTIME, 581 581 }; 582 582 583 - mutex_lock_nested(&d_inode(dentry)->i_mutex, I_MUTEX_XATTR); 583 + inode_lock_nested(d_inode(dentry), I_MUTEX_XATTR); 584 584 inode_dio_wait(d_inode(dentry)); 585 585 586 586 err = reiserfs_setattr(dentry, &newattrs); 587 - mutex_unlock(&d_inode(dentry)->i_mutex); 587 + inode_unlock(d_inode(dentry)); 588 588 } else 589 589 update_ctime(inode); 590 590 out_unlock: ··· 888 888 goto out; 889 889 } 890 890 891 - mutex_lock_nested(&d_inode(dir)->i_mutex, I_MUTEX_XATTR); 891 + inode_lock_nested(d_inode(dir), I_MUTEX_XATTR); 892 892 err = reiserfs_readdir_inode(d_inode(dir), &buf.ctx); 893 - mutex_unlock(&d_inode(dir)->i_mutex); 893 + inode_unlock(d_inode(dir)); 894 894 895 895 if (!err) 896 896 err = buf.pos; ··· 905 905 int err; 906 906 struct inode *inode = d_inode(dentry->d_parent); 907 907 908 - WARN_ON_ONCE(!mutex_is_locked(&inode->i_mutex)); 908 + WARN_ON_ONCE(!inode_is_locked(inode)); 909 909 910 910 err = xattr_mkdir(inode, dentry, 0700); 911 911 if (err || d_really_is_negative(dentry)) { ··· 995 995 int err = 0; 996 996 997 997 /* If we don't have the privroot located yet - go find it */ 998 - mutex_lock(&d_inode(s->s_root)->i_mutex); 998 + inode_lock(d_inode(s->s_root)); 999 999 dentry = lookup_one_len(PRIVROOT_NAME, s->s_root, 1000 1000 strlen(PRIVROOT_NAME)); 1001 1001 if (!IS_ERR(dentry)) { ··· 1005 1005 d_inode(dentry)->i_flags |= S_PRIVATE; 1006 1006 } else 1007 1007 err = PTR_ERR(dentry); 1008 - mutex_unlock(&d_inode(s->s_root)->i_mutex); 1008 + inode_unlock(d_inode(s->s_root)); 1009 1009 1010 1010 return err; 1011 1011 } ··· 1025 1025 goto error; 1026 1026 1027 1027 if (d_really_is_negative(privroot) && !(mount_flags & MS_RDONLY)) { 1028 - mutex_lock(&d_inode(s->s_root)->i_mutex); 1028 + inode_lock(d_inode(s->s_root)); 1029 1029 err = create_privroot(REISERFS_SB(s)->priv_root); 1030 - mutex_unlock(&d_inode(s->s_root)->i_mutex); 1030 + inode_unlock(d_inode(s->s_root)); 1031 1031 } 1032 1032 1033 1033 if (d_really_is_positive(privroot)) { 1034 1034 s->s_xattr = reiserfs_xattr_handlers; 1035 - mutex_lock(&d_inode(privroot)->i_mutex); 1035 + inode_lock(d_inode(privroot)); 1036 1036 if (!REISERFS_SB(s)->xattr_root) { 1037 1037 struct dentry *dentry; 1038 1038 ··· 1043 1043 else 1044 1044 err = PTR_ERR(dentry); 1045 1045 } 1046 - mutex_unlock(&d_inode(privroot)->i_mutex); 1046 + inode_unlock(d_inode(privroot)); 1047 1047 } 1048 1048 1049 1049 error:
+17 -17
fs/tracefs/inode.c
··· 84 84 * the files within the tracefs system. It is up to the individual 85 85 * mkdir routine to handle races. 86 86 */ 87 - mutex_unlock(&inode->i_mutex); 87 + inode_unlock(inode); 88 88 ret = tracefs_ops.mkdir(name); 89 - mutex_lock(&inode->i_mutex); 89 + inode_lock(inode); 90 90 91 91 kfree(name); 92 92 ··· 109 109 * This time we need to unlock not only the parent (inode) but 110 110 * also the directory that is being deleted. 111 111 */ 112 - mutex_unlock(&inode->i_mutex); 113 - mutex_unlock(&dentry->d_inode->i_mutex); 112 + inode_unlock(inode); 113 + inode_unlock(dentry->d_inode); 114 114 115 115 ret = tracefs_ops.rmdir(name); 116 116 117 - mutex_lock_nested(&inode->i_mutex, I_MUTEX_PARENT); 118 - mutex_lock(&dentry->d_inode->i_mutex); 117 + inode_lock_nested(inode, I_MUTEX_PARENT); 118 + inode_lock(dentry->d_inode); 119 119 120 120 kfree(name); 121 121 ··· 334 334 if (!parent) 335 335 parent = tracefs_mount->mnt_root; 336 336 337 - mutex_lock(&parent->d_inode->i_mutex); 337 + inode_lock(parent->d_inode); 338 338 dentry = lookup_one_len(name, parent, strlen(name)); 339 339 if (!IS_ERR(dentry) && dentry->d_inode) { 340 340 dput(dentry); ··· 342 342 } 343 343 344 344 if (IS_ERR(dentry)) { 345 - mutex_unlock(&parent->d_inode->i_mutex); 345 + inode_unlock(parent->d_inode); 346 346 simple_release_fs(&tracefs_mount, &tracefs_mount_count); 347 347 } 348 348 ··· 351 351 352 352 static struct dentry *failed_creating(struct dentry *dentry) 353 353 { 354 - mutex_unlock(&dentry->d_parent->d_inode->i_mutex); 354 + inode_unlock(dentry->d_parent->d_inode); 355 355 dput(dentry); 356 356 simple_release_fs(&tracefs_mount, &tracefs_mount_count); 357 357 return NULL; ··· 359 359 360 360 static struct dentry *end_creating(struct dentry *dentry) 361 361 { 362 - mutex_unlock(&dentry->d_parent->d_inode->i_mutex); 362 + inode_unlock(dentry->d_parent->d_inode); 363 363 return dentry; 364 364 } 365 365 ··· 544 544 if (!parent || !parent->d_inode) 545 545 return; 546 546 547 - mutex_lock(&parent->d_inode->i_mutex); 547 + inode_lock(parent->d_inode); 548 548 ret = __tracefs_remove(dentry, parent); 549 - mutex_unlock(&parent->d_inode->i_mutex); 549 + inode_unlock(parent->d_inode); 550 550 if (!ret) 551 551 simple_release_fs(&tracefs_mount, &tracefs_mount_count); 552 552 } ··· 572 572 573 573 parent = dentry; 574 574 down: 575 - mutex_lock(&parent->d_inode->i_mutex); 575 + inode_lock(parent->d_inode); 576 576 loop: 577 577 /* 578 578 * The parent->d_subdirs is protected by the d_lock. Outside that ··· 587 587 /* perhaps simple_empty(child) makes more sense */ 588 588 if (!list_empty(&child->d_subdirs)) { 589 589 spin_unlock(&parent->d_lock); 590 - mutex_unlock(&parent->d_inode->i_mutex); 590 + inode_unlock(parent->d_inode); 591 591 parent = child; 592 592 goto down; 593 593 } ··· 608 608 } 609 609 spin_unlock(&parent->d_lock); 610 610 611 - mutex_unlock(&parent->d_inode->i_mutex); 611 + inode_unlock(parent->d_inode); 612 612 child = parent; 613 613 parent = parent->d_parent; 614 - mutex_lock(&parent->d_inode->i_mutex); 614 + inode_lock(parent->d_inode); 615 615 616 616 if (child != dentry) 617 617 /* go up */ ··· 619 619 620 620 if (!__tracefs_remove(child, parent)) 621 621 simple_release_fs(&tracefs_mount, &tracefs_mount_count); 622 - mutex_unlock(&parent->d_inode->i_mutex); 622 + inode_unlock(parent->d_inode); 623 623 } 624 624 625 625 /**
+9 -9
fs/ubifs/dir.c
··· 515 515 dbg_gen("dent '%pd' to ino %lu (nlink %d) in dir ino %lu", 516 516 dentry, inode->i_ino, 517 517 inode->i_nlink, dir->i_ino); 518 - ubifs_assert(mutex_is_locked(&dir->i_mutex)); 519 - ubifs_assert(mutex_is_locked(&inode->i_mutex)); 518 + ubifs_assert(inode_is_locked(dir)); 519 + ubifs_assert(inode_is_locked(inode)); 520 520 521 521 err = dbg_check_synced_i_size(c, inode); 522 522 if (err) ··· 572 572 dbg_gen("dent '%pd' from ino %lu (nlink %d) in dir ino %lu", 573 573 dentry, inode->i_ino, 574 574 inode->i_nlink, dir->i_ino); 575 - ubifs_assert(mutex_is_locked(&dir->i_mutex)); 576 - ubifs_assert(mutex_is_locked(&inode->i_mutex)); 575 + ubifs_assert(inode_is_locked(dir)); 576 + ubifs_assert(inode_is_locked(inode)); 577 577 err = dbg_check_synced_i_size(c, inode); 578 578 if (err) 579 579 return err; ··· 661 661 662 662 dbg_gen("directory '%pd', ino %lu in dir ino %lu", dentry, 663 663 inode->i_ino, dir->i_ino); 664 - ubifs_assert(mutex_is_locked(&dir->i_mutex)); 665 - ubifs_assert(mutex_is_locked(&inode->i_mutex)); 664 + ubifs_assert(inode_is_locked(dir)); 665 + ubifs_assert(inode_is_locked(inode)); 666 666 err = check_dir_empty(c, d_inode(dentry)); 667 667 if (err) 668 668 return err; ··· 996 996 dbg_gen("dent '%pd' ino %lu in dir ino %lu to dent '%pd' in dir ino %lu", 997 997 old_dentry, old_inode->i_ino, old_dir->i_ino, 998 998 new_dentry, new_dir->i_ino); 999 - ubifs_assert(mutex_is_locked(&old_dir->i_mutex)); 1000 - ubifs_assert(mutex_is_locked(&new_dir->i_mutex)); 999 + ubifs_assert(inode_is_locked(old_dir)); 1000 + ubifs_assert(inode_is_locked(new_dir)); 1001 1001 if (unlink) 1002 - ubifs_assert(mutex_is_locked(&new_inode->i_mutex)); 1002 + ubifs_assert(inode_is_locked(new_inode)); 1003 1003 1004 1004 1005 1005 if (unlink && is_dir) {
+2 -2
fs/ubifs/file.c
··· 1317 1317 err = filemap_write_and_wait_range(inode->i_mapping, start, end); 1318 1318 if (err) 1319 1319 return err; 1320 - mutex_lock(&inode->i_mutex); 1320 + inode_lock(inode); 1321 1321 1322 1322 /* Synchronize the inode unless this is a 'datasync()' call. */ 1323 1323 if (!datasync || (inode->i_state & I_DIRTY_DATASYNC)) { ··· 1332 1332 */ 1333 1333 err = ubifs_sync_wbufs_by_inode(c, inode); 1334 1334 out: 1335 - mutex_unlock(&inode->i_mutex); 1335 + inode_unlock(inode); 1336 1336 return err; 1337 1337 } 1338 1338
+2 -2
fs/ubifs/xattr.c
··· 313 313 union ubifs_key key; 314 314 int err, type; 315 315 316 - ubifs_assert(mutex_is_locked(&host->i_mutex)); 316 + ubifs_assert(inode_is_locked(host)); 317 317 318 318 if (size > UBIFS_MAX_INO_DATA) 319 319 return -ERANGE; ··· 550 550 551 551 dbg_gen("xattr '%s', ino %lu ('%pd')", name, 552 552 host->i_ino, dentry); 553 - ubifs_assert(mutex_is_locked(&host->i_mutex)); 553 + ubifs_assert(inode_is_locked(host)); 554 554 555 555 err = check_namespace(&nm); 556 556 if (err < 0)
+5 -5
fs/udf/file.c
··· 122 122 struct udf_inode_info *iinfo = UDF_I(inode); 123 123 int err; 124 124 125 - mutex_lock(&inode->i_mutex); 125 + inode_lock(inode); 126 126 127 127 retval = generic_write_checks(iocb, from); 128 128 if (retval <= 0) ··· 136 136 (udf_file_entry_alloc_offset(inode) + end)) { 137 137 err = udf_expand_file_adinicb(inode); 138 138 if (err) { 139 - mutex_unlock(&inode->i_mutex); 139 + inode_unlock(inode); 140 140 udf_debug("udf_expand_adinicb: err=%d\n", err); 141 141 return err; 142 142 } ··· 149 149 150 150 retval = __generic_file_write_iter(iocb, from); 151 151 out: 152 - mutex_unlock(&inode->i_mutex); 152 + inode_unlock(inode); 153 153 154 154 if (retval > 0) { 155 155 mark_inode_dirty(inode); ··· 223 223 * Grab i_mutex to avoid races with writes changing i_size 224 224 * while we are running. 225 225 */ 226 - mutex_lock(&inode->i_mutex); 226 + inode_lock(inode); 227 227 down_write(&UDF_I(inode)->i_data_sem); 228 228 udf_discard_prealloc(inode); 229 229 udf_truncate_tail_extent(inode); 230 230 up_write(&UDF_I(inode)->i_data_sem); 231 - mutex_unlock(&inode->i_mutex); 231 + inode_unlock(inode); 232 232 } 233 233 return 0; 234 234 }
+1 -1
fs/udf/inode.c
··· 262 262 .nr_to_write = 1, 263 263 }; 264 264 265 - WARN_ON_ONCE(!mutex_is_locked(&inode->i_mutex)); 265 + WARN_ON_ONCE(!inode_is_locked(inode)); 266 266 if (!iinfo->i_lenAlloc) { 267 267 if (UDF_QUERY_FLAG(inode->i_sb, UDF_FLAG_USE_SHORT_AD)) 268 268 iinfo->i_alloc_type = ICBTAG_FLAG_AD_SHORT;
+2 -2
fs/utimes.c
··· 103 103 } 104 104 } 105 105 retry_deleg: 106 - mutex_lock(&inode->i_mutex); 106 + inode_lock(inode); 107 107 error = notify_change(path->dentry, &newattrs, &delegated_inode); 108 - mutex_unlock(&inode->i_mutex); 108 + inode_unlock(inode); 109 109 if (delegated_inode) { 110 110 error = break_deleg_wait(&delegated_inode); 111 111 if (!error)
+4 -4
fs/xattr.c
··· 129 129 if (error) 130 130 return error; 131 131 132 - mutex_lock(&inode->i_mutex); 132 + inode_lock(inode); 133 133 error = security_inode_setxattr(dentry, name, value, size, flags); 134 134 if (error) 135 135 goto out; ··· 137 137 error = __vfs_setxattr_noperm(dentry, name, value, size, flags); 138 138 139 139 out: 140 - mutex_unlock(&inode->i_mutex); 140 + inode_unlock(inode); 141 141 return error; 142 142 } 143 143 EXPORT_SYMBOL_GPL(vfs_setxattr); ··· 277 277 if (error) 278 278 return error; 279 279 280 - mutex_lock(&inode->i_mutex); 280 + inode_lock(inode); 281 281 error = security_inode_removexattr(dentry, name); 282 282 if (error) 283 283 goto out; ··· 290 290 } 291 291 292 292 out: 293 - mutex_unlock(&inode->i_mutex); 293 + inode_unlock(inode); 294 294 return error; 295 295 } 296 296 EXPORT_SYMBOL_GPL(vfs_removexattr);
+3 -3
fs/xfs/xfs_file.c
··· 55 55 int type) 56 56 { 57 57 if (type & XFS_IOLOCK_EXCL) 58 - mutex_lock(&VFS_I(ip)->i_mutex); 58 + inode_lock(VFS_I(ip)); 59 59 xfs_ilock(ip, type); 60 60 } 61 61 ··· 66 66 { 67 67 xfs_iunlock(ip, type); 68 68 if (type & XFS_IOLOCK_EXCL) 69 - mutex_unlock(&VFS_I(ip)->i_mutex); 69 + inode_unlock(VFS_I(ip)); 70 70 } 71 71 72 72 static inline void ··· 76 76 { 77 77 xfs_ilock_demote(ip, type); 78 78 if (type & XFS_IOLOCK_EXCL) 79 - mutex_unlock(&VFS_I(ip)->i_mutex); 79 + inode_unlock(VFS_I(ip)); 80 80 } 81 81 82 82 /*
+2 -2
fs/xfs/xfs_pnfs.c
··· 42 42 while ((error = break_layout(inode, false) == -EWOULDBLOCK)) { 43 43 xfs_iunlock(ip, *iolock); 44 44 if (with_imutex && (*iolock & XFS_IOLOCK_EXCL)) 45 - mutex_unlock(&inode->i_mutex); 45 + inode_unlock(inode); 46 46 error = break_layout(inode, true); 47 47 *iolock = XFS_IOLOCK_EXCL; 48 48 if (with_imutex) 49 - mutex_lock(&inode->i_mutex); 49 + inode_lock(inode); 50 50 xfs_ilock(ip, *iolock); 51 51 } 52 52
+27 -2
include/linux/fs.h
··· 714 714 I_MUTEX_PARENT2, 715 715 }; 716 716 717 + static inline void inode_lock(struct inode *inode) 718 + { 719 + mutex_lock(&inode->i_mutex); 720 + } 721 + 722 + static inline void inode_unlock(struct inode *inode) 723 + { 724 + mutex_unlock(&inode->i_mutex); 725 + } 726 + 727 + static inline int inode_trylock(struct inode *inode) 728 + { 729 + return mutex_trylock(&inode->i_mutex); 730 + } 731 + 732 + static inline int inode_is_locked(struct inode *inode) 733 + { 734 + return mutex_is_locked(&inode->i_mutex); 735 + } 736 + 737 + static inline void inode_lock_nested(struct inode *inode, unsigned subclass) 738 + { 739 + mutex_lock_nested(&inode->i_mutex, subclass); 740 + } 741 + 717 742 void lock_two_nondirectories(struct inode *, struct inode*); 718 743 void unlock_two_nondirectories(struct inode *, struct inode*); 719 744 ··· 3072 3047 } 3073 3048 static inline bool dir_relax(struct inode *inode) 3074 3049 { 3075 - mutex_unlock(&inode->i_mutex); 3076 - mutex_lock(&inode->i_mutex); 3050 + inode_unlock(inode); 3051 + inode_lock(inode); 3077 3052 return !IS_DEADDIR(inode); 3078 3053 } 3079 3054
+4 -4
ipc/mqueue.c
··· 795 795 796 796 ro = mnt_want_write(mnt); /* we'll drop it in any case */ 797 797 error = 0; 798 - mutex_lock(&d_inode(root)->i_mutex); 798 + inode_lock(d_inode(root)); 799 799 path.dentry = lookup_one_len(name->name, root, strlen(name->name)); 800 800 if (IS_ERR(path.dentry)) { 801 801 error = PTR_ERR(path.dentry); ··· 841 841 put_unused_fd(fd); 842 842 fd = error; 843 843 } 844 - mutex_unlock(&d_inode(root)->i_mutex); 844 + inode_unlock(d_inode(root)); 845 845 if (!ro) 846 846 mnt_drop_write(mnt); 847 847 out_putname: ··· 866 866 err = mnt_want_write(mnt); 867 867 if (err) 868 868 goto out_name; 869 - mutex_lock_nested(&d_inode(mnt->mnt_root)->i_mutex, I_MUTEX_PARENT); 869 + inode_lock_nested(d_inode(mnt->mnt_root), I_MUTEX_PARENT); 870 870 dentry = lookup_one_len(name->name, mnt->mnt_root, 871 871 strlen(name->name)); 872 872 if (IS_ERR(dentry)) { ··· 884 884 dput(dentry); 885 885 886 886 out_unlock: 887 - mutex_unlock(&d_inode(mnt->mnt_root)->i_mutex); 887 + inode_unlock(d_inode(mnt->mnt_root)); 888 888 if (inode) 889 889 iput(inode); 890 890 mnt_drop_write(mnt);
+1 -1
kernel/audit_fsnotify.c
··· 95 95 if (IS_ERR(dentry)) 96 96 return (void *)dentry; /* returning an error */ 97 97 inode = path.dentry->d_inode; 98 - mutex_unlock(&inode->i_mutex); 98 + inode_unlock(inode); 99 99 100 100 audit_mark = kzalloc(sizeof(*audit_mark), GFP_KERNEL); 101 101 if (unlikely(!audit_mark)) {
+1 -1
kernel/audit_watch.c
··· 364 364 struct dentry *d = kern_path_locked(watch->path, parent); 365 365 if (IS_ERR(d)) 366 366 return PTR_ERR(d); 367 - mutex_unlock(&d_backing_inode(parent->dentry)->i_mutex); 367 + inode_unlock(d_backing_inode(parent->dentry)); 368 368 if (d_is_positive(d)) { 369 369 /* update watch filter fields */ 370 370 watch->dev = d_backing_inode(d)->i_sb->s_dev;
+2 -2
kernel/events/core.c
··· 4872 4872 struct perf_event *event = filp->private_data; 4873 4873 int retval; 4874 4874 4875 - mutex_lock(&inode->i_mutex); 4875 + inode_lock(inode); 4876 4876 retval = fasync_helper(fd, filp, on, &event->fasync); 4877 - mutex_unlock(&inode->i_mutex); 4877 + inode_unlock(inode); 4878 4878 4879 4879 if (retval < 0) 4880 4880 return retval;
+2 -2
kernel/relay.c
··· 1133 1133 if (!desc->count) 1134 1134 return 0; 1135 1135 1136 - mutex_lock(&file_inode(filp)->i_mutex); 1136 + inode_lock(file_inode(filp)); 1137 1137 do { 1138 1138 if (!relay_file_read_avail(buf, *ppos)) 1139 1139 break; ··· 1153 1153 *ppos = relay_file_read_end_pos(buf, read_start, ret); 1154 1154 } 1155 1155 } while (desc->count && ret); 1156 - mutex_unlock(&file_inode(filp)->i_mutex); 1156 + inode_unlock(file_inode(filp)); 1157 1157 1158 1158 return desc->written; 1159 1159 }
+2 -2
kernel/sched/core.c
··· 222 222 223 223 /* Ensure the static_key remains in a consistent state */ 224 224 inode = file_inode(filp); 225 - mutex_lock(&inode->i_mutex); 225 + inode_lock(inode); 226 226 i = sched_feat_set(cmp); 227 - mutex_unlock(&inode->i_mutex); 227 + inode_unlock(inode); 228 228 if (i == __SCHED_FEAT_NR) 229 229 return -EINVAL; 230 230
+2 -2
mm/filemap.c
··· 2684 2684 struct inode *inode = file->f_mapping->host; 2685 2685 ssize_t ret; 2686 2686 2687 - mutex_lock(&inode->i_mutex); 2687 + inode_lock(inode); 2688 2688 ret = generic_write_checks(iocb, from); 2689 2689 if (ret > 0) 2690 2690 ret = __generic_file_write_iter(iocb, from); 2691 - mutex_unlock(&inode->i_mutex); 2691 + inode_unlock(inode); 2692 2692 2693 2693 if (ret > 0) { 2694 2694 ssize_t err;
+6 -6
mm/shmem.c
··· 1902 1902 if (whence != SEEK_DATA && whence != SEEK_HOLE) 1903 1903 return generic_file_llseek_size(file, offset, whence, 1904 1904 MAX_LFS_FILESIZE, i_size_read(inode)); 1905 - mutex_lock(&inode->i_mutex); 1905 + inode_lock(inode); 1906 1906 /* We're holding i_mutex so we can access i_size directly */ 1907 1907 1908 1908 if (offset < 0) ··· 1926 1926 1927 1927 if (offset >= 0) 1928 1928 offset = vfs_setpos(file, offset, MAX_LFS_FILESIZE); 1929 - mutex_unlock(&inode->i_mutex); 1929 + inode_unlock(inode); 1930 1930 return offset; 1931 1931 } 1932 1932 ··· 2091 2091 if (seals & ~(unsigned int)F_ALL_SEALS) 2092 2092 return -EINVAL; 2093 2093 2094 - mutex_lock(&inode->i_mutex); 2094 + inode_lock(inode); 2095 2095 2096 2096 if (info->seals & F_SEAL_SEAL) { 2097 2097 error = -EPERM; ··· 2114 2114 error = 0; 2115 2115 2116 2116 unlock: 2117 - mutex_unlock(&inode->i_mutex); 2117 + inode_unlock(inode); 2118 2118 return error; 2119 2119 } 2120 2120 EXPORT_SYMBOL_GPL(shmem_add_seals); ··· 2164 2164 if (mode & ~(FALLOC_FL_KEEP_SIZE | FALLOC_FL_PUNCH_HOLE)) 2165 2165 return -EOPNOTSUPP; 2166 2166 2167 - mutex_lock(&inode->i_mutex); 2167 + inode_lock(inode); 2168 2168 2169 2169 if (mode & FALLOC_FL_PUNCH_HOLE) { 2170 2170 struct address_space *mapping = file->f_mapping; ··· 2277 2277 inode->i_private = NULL; 2278 2278 spin_unlock(&inode->i_lock); 2279 2279 out: 2280 - mutex_unlock(&inode->i_mutex); 2280 + inode_unlock(inode); 2281 2281 return error; 2282 2282 } 2283 2283
+6 -6
mm/swapfile.c
··· 1956 1956 set_blocksize(bdev, old_block_size); 1957 1957 blkdev_put(bdev, FMODE_READ | FMODE_WRITE | FMODE_EXCL); 1958 1958 } else { 1959 - mutex_lock(&inode->i_mutex); 1959 + inode_lock(inode); 1960 1960 inode->i_flags &= ~S_SWAPFILE; 1961 - mutex_unlock(&inode->i_mutex); 1961 + inode_unlock(inode); 1962 1962 } 1963 1963 filp_close(swap_file, NULL); 1964 1964 ··· 2183 2183 p->flags |= SWP_BLKDEV; 2184 2184 } else if (S_ISREG(inode->i_mode)) { 2185 2185 p->bdev = inode->i_sb->s_bdev; 2186 - mutex_lock(&inode->i_mutex); 2186 + inode_lock(inode); 2187 2187 if (IS_SWAPFILE(inode)) 2188 2188 return -EBUSY; 2189 2189 } else ··· 2416 2416 mapping = swap_file->f_mapping; 2417 2417 inode = mapping->host; 2418 2418 2419 - /* If S_ISREG(inode->i_mode) will do mutex_lock(&inode->i_mutex); */ 2419 + /* If S_ISREG(inode->i_mode) will do inode_lock(inode); */ 2420 2420 error = claim_swapfile(p, inode); 2421 2421 if (unlikely(error)) 2422 2422 goto bad_swap; ··· 2561 2561 vfree(cluster_info); 2562 2562 if (swap_file) { 2563 2563 if (inode && S_ISREG(inode->i_mode)) { 2564 - mutex_unlock(&inode->i_mutex); 2564 + inode_unlock(inode); 2565 2565 inode = NULL; 2566 2566 } 2567 2567 filp_close(swap_file, NULL); ··· 2574 2574 if (name) 2575 2575 putname(name); 2576 2576 if (inode && S_ISREG(inode->i_mode)) 2577 - mutex_unlock(&inode->i_mutex); 2577 + inode_unlock(inode); 2578 2578 return error; 2579 2579 } 2580 2580
+5 -5
net/sunrpc/cache.c
··· 771 771 if (count == 0) 772 772 return 0; 773 773 774 - mutex_lock(&inode->i_mutex); /* protect against multiple concurrent 774 + inode_lock(inode); /* protect against multiple concurrent 775 775 * readers on this file */ 776 776 again: 777 777 spin_lock(&queue_lock); ··· 784 784 } 785 785 if (rp->q.list.next == &cd->queue) { 786 786 spin_unlock(&queue_lock); 787 - mutex_unlock(&inode->i_mutex); 787 + inode_unlock(inode); 788 788 WARN_ON_ONCE(rp->offset); 789 789 return 0; 790 790 } ··· 838 838 } 839 839 if (err == -EAGAIN) 840 840 goto again; 841 - mutex_unlock(&inode->i_mutex); 841 + inode_unlock(inode); 842 842 return err ? err : count; 843 843 } 844 844 ··· 909 909 if (!cd->cache_parse) 910 910 goto out; 911 911 912 - mutex_lock(&inode->i_mutex); 912 + inode_lock(inode); 913 913 ret = cache_downcall(mapping, buf, count, cd); 914 - mutex_unlock(&inode->i_mutex); 914 + inode_unlock(inode); 915 915 out: 916 916 return ret; 917 917 }
+30 -30
net/sunrpc/rpc_pipe.c
··· 172 172 int need_release; 173 173 LIST_HEAD(free_list); 174 174 175 - mutex_lock(&inode->i_mutex); 175 + inode_lock(inode); 176 176 spin_lock(&pipe->lock); 177 177 need_release = pipe->nreaders != 0 || pipe->nwriters != 0; 178 178 pipe->nreaders = 0; ··· 188 188 cancel_delayed_work_sync(&pipe->queue_timeout); 189 189 rpc_inode_setowner(inode, NULL); 190 190 RPC_I(inode)->pipe = NULL; 191 - mutex_unlock(&inode->i_mutex); 191 + inode_unlock(inode); 192 192 } 193 193 194 194 static struct inode * ··· 221 221 int first_open; 222 222 int res = -ENXIO; 223 223 224 - mutex_lock(&inode->i_mutex); 224 + inode_lock(inode); 225 225 pipe = RPC_I(inode)->pipe; 226 226 if (pipe == NULL) 227 227 goto out; ··· 237 237 pipe->nwriters++; 238 238 res = 0; 239 239 out: 240 - mutex_unlock(&inode->i_mutex); 240 + inode_unlock(inode); 241 241 return res; 242 242 } 243 243 ··· 248 248 struct rpc_pipe_msg *msg; 249 249 int last_close; 250 250 251 - mutex_lock(&inode->i_mutex); 251 + inode_lock(inode); 252 252 pipe = RPC_I(inode)->pipe; 253 253 if (pipe == NULL) 254 254 goto out; ··· 278 278 if (last_close && pipe->ops->release_pipe) 279 279 pipe->ops->release_pipe(inode); 280 280 out: 281 - mutex_unlock(&inode->i_mutex); 281 + inode_unlock(inode); 282 282 return 0; 283 283 } 284 284 ··· 290 290 struct rpc_pipe_msg *msg; 291 291 int res = 0; 292 292 293 - mutex_lock(&inode->i_mutex); 293 + inode_lock(inode); 294 294 pipe = RPC_I(inode)->pipe; 295 295 if (pipe == NULL) { 296 296 res = -EPIPE; ··· 322 322 pipe->ops->destroy_msg(msg); 323 323 } 324 324 out_unlock: 325 - mutex_unlock(&inode->i_mutex); 325 + inode_unlock(inode); 326 326 return res; 327 327 } 328 328 ··· 332 332 struct inode *inode = file_inode(filp); 333 333 int res; 334 334 335 - mutex_lock(&inode->i_mutex); 335 + inode_lock(inode); 336 336 res = -EPIPE; 337 337 if (RPC_I(inode)->pipe != NULL) 338 338 res = RPC_I(inode)->pipe->ops->downcall(filp, buf, len); 339 - mutex_unlock(&inode->i_mutex); 339 + inode_unlock(inode); 340 340 return res; 341 341 } 342 342 ··· 349 349 350 350 poll_wait(filp, &rpci->waitq, wait); 351 351 352 - mutex_lock(&inode->i_mutex); 352 + inode_lock(inode); 353 353 if (rpci->pipe == NULL) 354 354 mask |= POLLERR | POLLHUP; 355 355 else if (filp->private_data || !list_empty(&rpci->pipe->pipe)) 356 356 mask |= POLLIN | POLLRDNORM; 357 - mutex_unlock(&inode->i_mutex); 357 + inode_unlock(inode); 358 358 return mask; 359 359 } 360 360 ··· 367 367 368 368 switch (cmd) { 369 369 case FIONREAD: 370 - mutex_lock(&inode->i_mutex); 370 + inode_lock(inode); 371 371 pipe = RPC_I(inode)->pipe; 372 372 if (pipe == NULL) { 373 - mutex_unlock(&inode->i_mutex); 373 + inode_unlock(inode); 374 374 return -EPIPE; 375 375 } 376 376 spin_lock(&pipe->lock); ··· 381 381 len += msg->len - msg->copied; 382 382 } 383 383 spin_unlock(&pipe->lock); 384 - mutex_unlock(&inode->i_mutex); 384 + inode_unlock(inode); 385 385 return put_user(len, (int __user *)arg); 386 386 default: 387 387 return -EINVAL; ··· 617 617 618 618 parent = dget_parent(dentry); 619 619 dir = d_inode(parent); 620 - mutex_lock_nested(&dir->i_mutex, I_MUTEX_PARENT); 620 + inode_lock_nested(dir, I_MUTEX_PARENT); 621 621 error = __rpc_rmdir(dir, dentry); 622 - mutex_unlock(&dir->i_mutex); 622 + inode_unlock(dir); 623 623 dput(parent); 624 624 return error; 625 625 } ··· 701 701 { 702 702 struct inode *dir = d_inode(parent); 703 703 704 - mutex_lock_nested(&dir->i_mutex, I_MUTEX_CHILD); 704 + inode_lock_nested(dir, I_MUTEX_CHILD); 705 705 __rpc_depopulate(parent, files, start, eof); 706 - mutex_unlock(&dir->i_mutex); 706 + inode_unlock(dir); 707 707 } 708 708 709 709 static int rpc_populate(struct dentry *parent, ··· 715 715 struct dentry *dentry; 716 716 int i, err; 717 717 718 - mutex_lock(&dir->i_mutex); 718 + inode_lock(dir); 719 719 for (i = start; i < eof; i++) { 720 720 dentry = __rpc_lookup_create_exclusive(parent, files[i].name); 721 721 err = PTR_ERR(dentry); ··· 739 739 if (err != 0) 740 740 goto out_bad; 741 741 } 742 - mutex_unlock(&dir->i_mutex); 742 + inode_unlock(dir); 743 743 return 0; 744 744 out_bad: 745 745 __rpc_depopulate(parent, files, start, eof); 746 - mutex_unlock(&dir->i_mutex); 746 + inode_unlock(dir); 747 747 printk(KERN_WARNING "%s: %s failed to populate directory %pd\n", 748 748 __FILE__, __func__, parent); 749 749 return err; ··· 757 757 struct inode *dir = d_inode(parent); 758 758 int error; 759 759 760 - mutex_lock_nested(&dir->i_mutex, I_MUTEX_PARENT); 760 + inode_lock_nested(dir, I_MUTEX_PARENT); 761 761 dentry = __rpc_lookup_create_exclusive(parent, name); 762 762 if (IS_ERR(dentry)) 763 763 goto out; ··· 770 770 goto err_rmdir; 771 771 } 772 772 out: 773 - mutex_unlock(&dir->i_mutex); 773 + inode_unlock(dir); 774 774 return dentry; 775 775 err_rmdir: 776 776 __rpc_rmdir(dir, dentry); ··· 788 788 789 789 parent = dget_parent(dentry); 790 790 dir = d_inode(parent); 791 - mutex_lock_nested(&dir->i_mutex, I_MUTEX_PARENT); 791 + inode_lock_nested(dir, I_MUTEX_PARENT); 792 792 if (depopulate != NULL) 793 793 depopulate(dentry); 794 794 error = __rpc_rmdir(dir, dentry); 795 - mutex_unlock(&dir->i_mutex); 795 + inode_unlock(dir); 796 796 dput(parent); 797 797 return error; 798 798 } ··· 828 828 if (pipe->ops->downcall == NULL) 829 829 umode &= ~S_IWUGO; 830 830 831 - mutex_lock_nested(&dir->i_mutex, I_MUTEX_PARENT); 831 + inode_lock_nested(dir, I_MUTEX_PARENT); 832 832 dentry = __rpc_lookup_create_exclusive(parent, name); 833 833 if (IS_ERR(dentry)) 834 834 goto out; ··· 837 837 if (err) 838 838 goto out_err; 839 839 out: 840 - mutex_unlock(&dir->i_mutex); 840 + inode_unlock(dir); 841 841 return dentry; 842 842 out_err: 843 843 dentry = ERR_PTR(err); ··· 865 865 866 866 parent = dget_parent(dentry); 867 867 dir = d_inode(parent); 868 - mutex_lock_nested(&dir->i_mutex, I_MUTEX_PARENT); 868 + inode_lock_nested(dir, I_MUTEX_PARENT); 869 869 error = __rpc_rmpipe(dir, dentry); 870 - mutex_unlock(&dir->i_mutex); 870 + inode_unlock(dir); 871 871 dput(parent); 872 872 return error; 873 873 }
+5 -5
security/inode.c
··· 99 99 100 100 dir = d_inode(parent); 101 101 102 - mutex_lock(&dir->i_mutex); 102 + inode_lock(dir); 103 103 dentry = lookup_one_len(name, parent, strlen(name)); 104 104 if (IS_ERR(dentry)) 105 105 goto out; ··· 129 129 } 130 130 d_instantiate(dentry, inode); 131 131 dget(dentry); 132 - mutex_unlock(&dir->i_mutex); 132 + inode_unlock(dir); 133 133 return dentry; 134 134 135 135 out1: 136 136 dput(dentry); 137 137 dentry = ERR_PTR(error); 138 138 out: 139 - mutex_unlock(&dir->i_mutex); 139 + inode_unlock(dir); 140 140 simple_release_fs(&mount, &mount_count); 141 141 return dentry; 142 142 } ··· 195 195 if (!parent || d_really_is_negative(parent)) 196 196 return; 197 197 198 - mutex_lock(&d_inode(parent)->i_mutex); 198 + inode_lock(d_inode(parent)); 199 199 if (simple_positive(dentry)) { 200 200 if (d_is_dir(dentry)) 201 201 simple_rmdir(d_inode(parent), dentry); ··· 203 203 simple_unlink(d_inode(parent), dentry); 204 204 dput(dentry); 205 205 } 206 - mutex_unlock(&d_inode(parent)->i_mutex); 206 + inode_unlock(d_inode(parent)); 207 207 simple_release_fs(&mount, &mount_count); 208 208 } 209 209 EXPORT_SYMBOL_GPL(securityfs_remove);
+4 -4
security/integrity/ima/ima_main.c
··· 121 121 if (!(mode & FMODE_WRITE)) 122 122 return; 123 123 124 - mutex_lock(&inode->i_mutex); 124 + inode_lock(inode); 125 125 if (atomic_read(&inode->i_writecount) == 1) { 126 126 if ((iint->version != inode->i_version) || 127 127 (iint->flags & IMA_NEW_FILE)) { ··· 130 130 ima_update_xattr(iint, file); 131 131 } 132 132 } 133 - mutex_unlock(&inode->i_mutex); 133 + inode_unlock(inode); 134 134 } 135 135 136 136 /** ··· 186 186 if (action & IMA_FILE_APPRAISE) 187 187 function = FILE_CHECK; 188 188 189 - mutex_lock(&inode->i_mutex); 189 + inode_lock(inode); 190 190 191 191 if (action) { 192 192 iint = integrity_inode_get(inode); ··· 250 250 if (pathbuf) 251 251 __putname(pathbuf); 252 252 out: 253 - mutex_unlock(&inode->i_mutex); 253 + inode_unlock(inode); 254 254 if ((rc && must_appraise) && (ima_appraise & IMA_APPRAISE_ENFORCE)) 255 255 return -EACCES; 256 256 return 0;
+2 -2
security/selinux/selinuxfs.c
··· 380 380 goto err; 381 381 382 382 if (i_size_read(inode) != security_policydb_len()) { 383 - mutex_lock(&inode->i_mutex); 383 + inode_lock(inode); 384 384 i_size_write(inode, security_policydb_len()); 385 - mutex_unlock(&inode->i_mutex); 385 + inode_unlock(inode); 386 386 } 387 387 388 388 rc = security_read_policy(&plm->data, &plm->len);