aboutsummaryrefslogtreecommitdiffstats
path: root/fs/jfs
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2012-10-09 15:20:05 -0400
committerThomas Gleixner <tglx@linutronix.de>2012-10-09 15:20:05 -0400
commitdb8c246937713e60b7628661ccc187eeb81f2bae (patch)
tree6351e8bca23eef40fce85396d1c6f6cfffbd4b66 /fs/jfs
parentc5f66e99b7cb091e3d51ae8e8156892e8feb7fa3 (diff)
parent28f2b02bc581ffc835bc1691b18d03f62fcf0395 (diff)
Merge branch 'fortglx/3.7/time' of git://git.linaro.org/people/jstultz/linux into timers/core
Diffstat (limited to 'fs/jfs')
-rw-r--r--fs/jfs/namei.c18
-rw-r--r--fs/jfs/super.c5
2 files changed, 14 insertions, 9 deletions
diff --git a/fs/jfs/namei.c b/fs/jfs/namei.c
index 07c91ca6017..3b91a7ad608 100644
--- a/fs/jfs/namei.c
+++ b/fs/jfs/namei.c
@@ -73,7 +73,7 @@ static inline void free_ea_wmap(struct inode *inode)
73 * 73 *
74 */ 74 */
75static int jfs_create(struct inode *dip, struct dentry *dentry, umode_t mode, 75static int jfs_create(struct inode *dip, struct dentry *dentry, umode_t mode,
76 struct nameidata *nd) 76 bool excl)
77{ 77{
78 int rc = 0; 78 int rc = 0;
79 tid_t tid; /* transaction id */ 79 tid_t tid; /* transaction id */
@@ -176,8 +176,8 @@ static int jfs_create(struct inode *dip, struct dentry *dentry, umode_t mode,
176 unlock_new_inode(ip); 176 unlock_new_inode(ip);
177 iput(ip); 177 iput(ip);
178 } else { 178 } else {
179 d_instantiate(dentry, ip);
180 unlock_new_inode(ip); 179 unlock_new_inode(ip);
180 d_instantiate(dentry, ip);
181 } 181 }
182 182
183 out2: 183 out2:
@@ -309,8 +309,8 @@ static int jfs_mkdir(struct inode *dip, struct dentry *dentry, umode_t mode)
309 unlock_new_inode(ip); 309 unlock_new_inode(ip);
310 iput(ip); 310 iput(ip);
311 } else { 311 } else {
312 d_instantiate(dentry, ip);
313 unlock_new_inode(ip); 312 unlock_new_inode(ip);
313 d_instantiate(dentry, ip);
314 } 314 }
315 315
316 out2: 316 out2:
@@ -1043,8 +1043,8 @@ static int jfs_symlink(struct inode *dip, struct dentry *dentry,
1043 unlock_new_inode(ip); 1043 unlock_new_inode(ip);
1044 iput(ip); 1044 iput(ip);
1045 } else { 1045 } else {
1046 d_instantiate(dentry, ip);
1047 unlock_new_inode(ip); 1046 unlock_new_inode(ip);
1047 d_instantiate(dentry, ip);
1048 } 1048 }
1049 1049
1050 out2: 1050 out2:
@@ -1424,8 +1424,8 @@ static int jfs_mknod(struct inode *dir, struct dentry *dentry,
1424 unlock_new_inode(ip); 1424 unlock_new_inode(ip);
1425 iput(ip); 1425 iput(ip);
1426 } else { 1426 } else {
1427 d_instantiate(dentry, ip);
1428 unlock_new_inode(ip); 1427 unlock_new_inode(ip);
1428 d_instantiate(dentry, ip);
1429 } 1429 }
1430 1430
1431 out1: 1431 out1:
@@ -1436,7 +1436,7 @@ static int jfs_mknod(struct inode *dir, struct dentry *dentry,
1436 return rc; 1436 return rc;
1437} 1437}
1438 1438
1439static struct dentry *jfs_lookup(struct inode *dip, struct dentry *dentry, struct nameidata *nd) 1439static struct dentry *jfs_lookup(struct inode *dip, struct dentry *dentry, unsigned int flags)
1440{ 1440{
1441 struct btstack btstack; 1441 struct btstack btstack;
1442 ino_t inum; 1442 ino_t inum;
@@ -1570,7 +1570,7 @@ out:
1570 return result; 1570 return result;
1571} 1571}
1572 1572
1573static int jfs_ci_revalidate(struct dentry *dentry, struct nameidata *nd) 1573static int jfs_ci_revalidate(struct dentry *dentry, unsigned int flags)
1574{ 1574{
1575 /* 1575 /*
1576 * This is not negative dentry. Always valid. 1576 * This is not negative dentry. Always valid.
@@ -1589,7 +1589,7 @@ static int jfs_ci_revalidate(struct dentry *dentry, struct nameidata *nd)
1589 * This may be nfsd (or something), anyway, we can't see the 1589 * This may be nfsd (or something), anyway, we can't see the
1590 * intent of this. So, since this can be for creation, drop it. 1590 * intent of this. So, since this can be for creation, drop it.
1591 */ 1591 */
1592 if (!nd) 1592 if (!flags)
1593 return 0; 1593 return 0;
1594 1594
1595 /* 1595 /*
@@ -1597,7 +1597,7 @@ static int jfs_ci_revalidate(struct dentry *dentry, struct nameidata *nd)
1597 * case sensitive name which is specified by user if this is 1597 * case sensitive name which is specified by user if this is
1598 * for creation. 1598 * for creation.
1599 */ 1599 */
1600 if (nd->flags & (LOOKUP_CREATE | LOOKUP_RENAME_TARGET)) 1600 if (flags & (LOOKUP_CREATE | LOOKUP_RENAME_TARGET))
1601 return 0; 1601 return 0;
1602 return 1; 1602 return 1;
1603} 1603}
diff --git a/fs/jfs/super.c b/fs/jfs/super.c
index 4a82950f412..c55c7452d28 100644
--- a/fs/jfs/super.c
+++ b/fs/jfs/super.c
@@ -601,6 +601,11 @@ static int jfs_sync_fs(struct super_block *sb, int wait)
601 601
602 /* log == NULL indicates read-only mount */ 602 /* log == NULL indicates read-only mount */
603 if (log) { 603 if (log) {
604 /*
605 * Write quota structures to quota file, sync_blockdev() will
606 * write them to disk later
607 */
608 dquot_writeback_dquots(sb, -1);
604 jfs_flush_journal(log, wait); 609 jfs_flush_journal(log, wait);
605 jfs_syncpt(log, 0); 610 jfs_syncpt(log, 0);
606 } 611 }