diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2013-11-13 01:34:18 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2013-11-13 01:34:18 -0500 |
commit | 9bc9ccd7db1c9f043f75380b5a5b94912046a60e (patch) | |
tree | dd0a1b3396ae9414f668b0110cc39d11268ad3ed /fs/ubifs | |
parent | f0230294271f511b41797305b685365a9e569a09 (diff) | |
parent | bdd3536618443809d18868563eeafa63b9d29603 (diff) |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
Pull vfs updates from Al Viro:
"All kinds of stuff this time around; some more notable parts:
- RCU'd vfsmounts handling
- new primitives for coredump handling
- files_lock is gone
- Bruce's delegations handling series
- exportfs fixes
plus misc stuff all over the place"
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (101 commits)
ecryptfs: ->f_op is never NULL
locks: break delegations on any attribute modification
locks: break delegations on link
locks: break delegations on rename
locks: helper functions for delegation breaking
locks: break delegations on unlink
namei: minor vfs_unlink cleanup
locks: implement delegations
locks: introduce new FL_DELEG lock flag
vfs: take i_mutex on renamed file
vfs: rename I_MUTEX_QUOTA now that it's not used for quotas
vfs: don't use PARENT/CHILD lock classes for non-directories
vfs: pull ext4's double-i_mutex-locking into common code
exportfs: fix quadratic behavior in filehandle lookup
exportfs: better variable name
exportfs: move most of reconnect_path to helper function
exportfs: eliminate unused "noprogress" counter
exportfs: stop retrying once we race with rename/remove
exportfs: clear DISCONNECTED on all parents sooner
exportfs: more detailed comment for path_reconnect
...
Diffstat (limited to 'fs/ubifs')
-rw-r--r-- | fs/ubifs/dir.c | 41 | ||||
-rw-r--r-- | fs/ubifs/journal.c | 6 | ||||
-rw-r--r-- | fs/ubifs/xattr.c | 16 |
3 files changed, 29 insertions, 34 deletions
diff --git a/fs/ubifs/dir.c b/fs/ubifs/dir.c index 6b4947f75af7..ea41649e4ca5 100644 --- a/fs/ubifs/dir.c +++ b/fs/ubifs/dir.c | |||
@@ -192,8 +192,7 @@ static struct dentry *ubifs_lookup(struct inode *dir, struct dentry *dentry, | |||
192 | struct ubifs_dent_node *dent; | 192 | struct ubifs_dent_node *dent; |
193 | struct ubifs_info *c = dir->i_sb->s_fs_info; | 193 | struct ubifs_info *c = dir->i_sb->s_fs_info; |
194 | 194 | ||
195 | dbg_gen("'%.*s' in dir ino %lu", | 195 | dbg_gen("'%pd' in dir ino %lu", dentry, dir->i_ino); |
196 | dentry->d_name.len, dentry->d_name.name, dir->i_ino); | ||
197 | 196 | ||
198 | if (dentry->d_name.len > UBIFS_MAX_NLEN) | 197 | if (dentry->d_name.len > UBIFS_MAX_NLEN) |
199 | return ERR_PTR(-ENAMETOOLONG); | 198 | return ERR_PTR(-ENAMETOOLONG); |
@@ -225,8 +224,8 @@ static struct dentry *ubifs_lookup(struct inode *dir, struct dentry *dentry, | |||
225 | * checking. | 224 | * checking. |
226 | */ | 225 | */ |
227 | err = PTR_ERR(inode); | 226 | err = PTR_ERR(inode); |
228 | ubifs_err("dead directory entry '%.*s', error %d", | 227 | ubifs_err("dead directory entry '%pd', error %d", |
229 | dentry->d_name.len, dentry->d_name.name, err); | 228 | dentry, err); |
230 | ubifs_ro_mode(c, err); | 229 | ubifs_ro_mode(c, err); |
231 | goto out; | 230 | goto out; |
232 | } | 231 | } |
@@ -260,8 +259,8 @@ static int ubifs_create(struct inode *dir, struct dentry *dentry, umode_t mode, | |||
260 | * parent directory inode. | 259 | * parent directory inode. |
261 | */ | 260 | */ |
262 | 261 | ||
263 | dbg_gen("dent '%.*s', mode %#hx in dir ino %lu", | 262 | dbg_gen("dent '%pd', mode %#hx in dir ino %lu", |
264 | dentry->d_name.len, dentry->d_name.name, mode, dir->i_ino); | 263 | dentry, mode, dir->i_ino); |
265 | 264 | ||
266 | err = ubifs_budget_space(c, &req); | 265 | err = ubifs_budget_space(c, &req); |
267 | if (err) | 266 | if (err) |
@@ -509,8 +508,8 @@ static int ubifs_link(struct dentry *old_dentry, struct inode *dir, | |||
509 | * changing the parent inode. | 508 | * changing the parent inode. |
510 | */ | 509 | */ |
511 | 510 | ||
512 | dbg_gen("dent '%.*s' to ino %lu (nlink %d) in dir ino %lu", | 511 | dbg_gen("dent '%pd' to ino %lu (nlink %d) in dir ino %lu", |
513 | dentry->d_name.len, dentry->d_name.name, inode->i_ino, | 512 | dentry, inode->i_ino, |
514 | inode->i_nlink, dir->i_ino); | 513 | inode->i_nlink, dir->i_ino); |
515 | ubifs_assert(mutex_is_locked(&dir->i_mutex)); | 514 | ubifs_assert(mutex_is_locked(&dir->i_mutex)); |
516 | ubifs_assert(mutex_is_locked(&inode->i_mutex)); | 515 | ubifs_assert(mutex_is_locked(&inode->i_mutex)); |
@@ -566,8 +565,8 @@ static int ubifs_unlink(struct inode *dir, struct dentry *dentry) | |||
566 | * deletions. | 565 | * deletions. |
567 | */ | 566 | */ |
568 | 567 | ||
569 | dbg_gen("dent '%.*s' from ino %lu (nlink %d) in dir ino %lu", | 568 | dbg_gen("dent '%pd' from ino %lu (nlink %d) in dir ino %lu", |
570 | dentry->d_name.len, dentry->d_name.name, inode->i_ino, | 569 | dentry, inode->i_ino, |
571 | inode->i_nlink, dir->i_ino); | 570 | inode->i_nlink, dir->i_ino); |
572 | ubifs_assert(mutex_is_locked(&dir->i_mutex)); | 571 | ubifs_assert(mutex_is_locked(&dir->i_mutex)); |
573 | ubifs_assert(mutex_is_locked(&inode->i_mutex)); | 572 | ubifs_assert(mutex_is_locked(&inode->i_mutex)); |
@@ -656,8 +655,8 @@ static int ubifs_rmdir(struct inode *dir, struct dentry *dentry) | |||
656 | * because we have extra space reserved for deletions. | 655 | * because we have extra space reserved for deletions. |
657 | */ | 656 | */ |
658 | 657 | ||
659 | dbg_gen("directory '%.*s', ino %lu in dir ino %lu", dentry->d_name.len, | 658 | dbg_gen("directory '%pd', ino %lu in dir ino %lu", dentry, |
660 | dentry->d_name.name, inode->i_ino, dir->i_ino); | 659 | inode->i_ino, dir->i_ino); |
661 | ubifs_assert(mutex_is_locked(&dir->i_mutex)); | 660 | ubifs_assert(mutex_is_locked(&dir->i_mutex)); |
662 | ubifs_assert(mutex_is_locked(&inode->i_mutex)); | 661 | ubifs_assert(mutex_is_locked(&inode->i_mutex)); |
663 | err = check_dir_empty(c, dentry->d_inode); | 662 | err = check_dir_empty(c, dentry->d_inode); |
@@ -716,8 +715,8 @@ static int ubifs_mkdir(struct inode *dir, struct dentry *dentry, umode_t mode) | |||
716 | * directory inode. | 715 | * directory inode. |
717 | */ | 716 | */ |
718 | 717 | ||
719 | dbg_gen("dent '%.*s', mode %#hx in dir ino %lu", | 718 | dbg_gen("dent '%pd', mode %#hx in dir ino %lu", |
720 | dentry->d_name.len, dentry->d_name.name, mode, dir->i_ino); | 719 | dentry, mode, dir->i_ino); |
721 | 720 | ||
722 | err = ubifs_budget_space(c, &req); | 721 | err = ubifs_budget_space(c, &req); |
723 | if (err) | 722 | if (err) |
@@ -778,8 +777,7 @@ static int ubifs_mknod(struct inode *dir, struct dentry *dentry, | |||
778 | * directory inode. | 777 | * directory inode. |
779 | */ | 778 | */ |
780 | 779 | ||
781 | dbg_gen("dent '%.*s' in dir ino %lu", | 780 | dbg_gen("dent '%pd' in dir ino %lu", dentry, dir->i_ino); |
782 | dentry->d_name.len, dentry->d_name.name, dir->i_ino); | ||
783 | 781 | ||
784 | if (!new_valid_dev(rdev)) | 782 | if (!new_valid_dev(rdev)) |
785 | return -EINVAL; | 783 | return -EINVAL; |
@@ -853,8 +851,8 @@ static int ubifs_symlink(struct inode *dir, struct dentry *dentry, | |||
853 | * directory inode. | 851 | * directory inode. |
854 | */ | 852 | */ |
855 | 853 | ||
856 | dbg_gen("dent '%.*s', target '%s' in dir ino %lu", dentry->d_name.len, | 854 | dbg_gen("dent '%pd', target '%s' in dir ino %lu", dentry, |
857 | dentry->d_name.name, symname, dir->i_ino); | 855 | symname, dir->i_ino); |
858 | 856 | ||
859 | if (len > UBIFS_MAX_INO_DATA) | 857 | if (len > UBIFS_MAX_INO_DATA) |
860 | return -ENAMETOOLONG; | 858 | return -ENAMETOOLONG; |
@@ -979,10 +977,9 @@ static int ubifs_rename(struct inode *old_dir, struct dentry *old_dentry, | |||
979 | * separately. | 977 | * separately. |
980 | */ | 978 | */ |
981 | 979 | ||
982 | dbg_gen("dent '%.*s' ino %lu in dir ino %lu to dent '%.*s' in dir ino %lu", | 980 | dbg_gen("dent '%pd' ino %lu in dir ino %lu to dent '%pd' in dir ino %lu", |
983 | old_dentry->d_name.len, old_dentry->d_name.name, | 981 | old_dentry, old_inode->i_ino, old_dir->i_ino, |
984 | old_inode->i_ino, old_dir->i_ino, new_dentry->d_name.len, | 982 | new_dentry, new_dir->i_ino); |
985 | new_dentry->d_name.name, new_dir->i_ino); | ||
986 | ubifs_assert(mutex_is_locked(&old_dir->i_mutex)); | 983 | ubifs_assert(mutex_is_locked(&old_dir->i_mutex)); |
987 | ubifs_assert(mutex_is_locked(&new_dir->i_mutex)); | 984 | ubifs_assert(mutex_is_locked(&new_dir->i_mutex)); |
988 | if (unlink) | 985 | if (unlink) |
diff --git a/fs/ubifs/journal.c b/fs/ubifs/journal.c index afaad07f3b29..0e045e75abd8 100644 --- a/fs/ubifs/journal.c +++ b/fs/ubifs/journal.c | |||
@@ -933,10 +933,8 @@ int ubifs_jnl_rename(struct ubifs_info *c, const struct inode *old_dir, | |||
933 | int move = (old_dir != new_dir); | 933 | int move = (old_dir != new_dir); |
934 | struct ubifs_inode *uninitialized_var(new_ui); | 934 | struct ubifs_inode *uninitialized_var(new_ui); |
935 | 935 | ||
936 | dbg_jnl("dent '%.*s' in dir ino %lu to dent '%.*s' in dir ino %lu", | 936 | dbg_jnl("dent '%pd' in dir ino %lu to dent '%pd' in dir ino %lu", |
937 | old_dentry->d_name.len, old_dentry->d_name.name, | 937 | old_dentry, old_dir->i_ino, new_dentry, new_dir->i_ino); |
938 | old_dir->i_ino, new_dentry->d_name.len, | ||
939 | new_dentry->d_name.name, new_dir->i_ino); | ||
940 | ubifs_assert(ubifs_inode(old_dir)->data_len == 0); | 938 | ubifs_assert(ubifs_inode(old_dir)->data_len == 0); |
941 | ubifs_assert(ubifs_inode(new_dir)->data_len == 0); | 939 | ubifs_assert(ubifs_inode(new_dir)->data_len == 0); |
942 | ubifs_assert(mutex_is_locked(&ubifs_inode(old_dir)->ui_mutex)); | 940 | ubifs_assert(mutex_is_locked(&ubifs_inode(old_dir)->ui_mutex)); |
diff --git a/fs/ubifs/xattr.c b/fs/ubifs/xattr.c index 0f7139bdb2c2..5e0a63b1b0d5 100644 --- a/fs/ubifs/xattr.c +++ b/fs/ubifs/xattr.c | |||
@@ -303,8 +303,8 @@ int ubifs_setxattr(struct dentry *dentry, const char *name, | |||
303 | union ubifs_key key; | 303 | union ubifs_key key; |
304 | int err, type; | 304 | int err, type; |
305 | 305 | ||
306 | dbg_gen("xattr '%s', host ino %lu ('%.*s'), size %zd", name, | 306 | dbg_gen("xattr '%s', host ino %lu ('%pd'), size %zd", name, |
307 | host->i_ino, dentry->d_name.len, dentry->d_name.name, size); | 307 | host->i_ino, dentry, size); |
308 | ubifs_assert(mutex_is_locked(&host->i_mutex)); | 308 | ubifs_assert(mutex_is_locked(&host->i_mutex)); |
309 | 309 | ||
310 | if (size > UBIFS_MAX_INO_DATA) | 310 | if (size > UBIFS_MAX_INO_DATA) |
@@ -367,8 +367,8 @@ ssize_t ubifs_getxattr(struct dentry *dentry, const char *name, void *buf, | |||
367 | union ubifs_key key; | 367 | union ubifs_key key; |
368 | int err; | 368 | int err; |
369 | 369 | ||
370 | dbg_gen("xattr '%s', ino %lu ('%.*s'), buf size %zd", name, | 370 | dbg_gen("xattr '%s', ino %lu ('%pd'), buf size %zd", name, |
371 | host->i_ino, dentry->d_name.len, dentry->d_name.name, size); | 371 | host->i_ino, dentry, size); |
372 | 372 | ||
373 | err = check_namespace(&nm); | 373 | err = check_namespace(&nm); |
374 | if (err < 0) | 374 | if (err < 0) |
@@ -426,8 +426,8 @@ ssize_t ubifs_listxattr(struct dentry *dentry, char *buffer, size_t size) | |||
426 | int err, len, written = 0; | 426 | int err, len, written = 0; |
427 | struct qstr nm = { .name = NULL }; | 427 | struct qstr nm = { .name = NULL }; |
428 | 428 | ||
429 | dbg_gen("ino %lu ('%.*s'), buffer size %zd", host->i_ino, | 429 | dbg_gen("ino %lu ('%pd'), buffer size %zd", host->i_ino, |
430 | dentry->d_name.len, dentry->d_name.name, size); | 430 | dentry, size); |
431 | 431 | ||
432 | len = host_ui->xattr_names + host_ui->xattr_cnt; | 432 | len = host_ui->xattr_names + host_ui->xattr_cnt; |
433 | if (!buffer) | 433 | if (!buffer) |
@@ -529,8 +529,8 @@ int ubifs_removexattr(struct dentry *dentry, const char *name) | |||
529 | union ubifs_key key; | 529 | union ubifs_key key; |
530 | int err; | 530 | int err; |
531 | 531 | ||
532 | dbg_gen("xattr '%s', ino %lu ('%.*s')", name, | 532 | dbg_gen("xattr '%s', ino %lu ('%pd')", name, |
533 | host->i_ino, dentry->d_name.len, dentry->d_name.name); | 533 | host->i_ino, dentry); |
534 | ubifs_assert(mutex_is_locked(&host->i_mutex)); | 534 | ubifs_assert(mutex_is_locked(&host->i_mutex)); |
535 | 535 | ||
536 | err = check_namespace(&nm); | 536 | err = check_namespace(&nm); |