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

Configure Feed

Select the types of activity you want to include in your feed.

Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs

Pull ext2, ext3, reiserfs, quota fixes from Jan Kara:
"A fix for regression in ext2, and a format string issue in ext3. The
rest isn't too serious."

* 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs:
ext2: Fix BUG_ON in evict() on inode deletion
reiserfs: Use kstrdup instead of kmalloc/strcpy
ext3: Fix format string issues
quota: add missing use of dq_data_lock in __dquot_initialize

+9 -7
-1
fs/ext2/ialloc.c
··· 118 118 * as writing the quota to disk may need the lock as well. 119 119 */ 120 120 /* Quota is already initialized in iput() */ 121 - ext2_xattr_delete_inode(inode); 122 121 dquot_free_inode(inode); 123 122 dquot_drop(inode); 124 123
+2
fs/ext2/inode.c
··· 34 34 #include "ext2.h" 35 35 #include "acl.h" 36 36 #include "xip.h" 37 + #include "xattr.h" 37 38 38 39 static int __ext2_write_inode(struct inode *inode, int do_sync); 39 40 ··· 89 88 inode->i_size = 0; 90 89 if (inode->i_blocks) 91 90 ext2_truncate_blocks(inode, 0); 91 + ext2_xattr_delete_inode(inode); 92 92 } 93 93 94 94 invalidate_inode_buffers(inode);
+2 -2
fs/ext3/super.c
··· 353 353 return bdev; 354 354 355 355 fail: 356 - ext3_msg(sb, "error: failed to open journal device %s: %ld", 356 + ext3_msg(sb, KERN_ERR, "error: failed to open journal device %s: %ld", 357 357 __bdevname(dev, b), PTR_ERR(bdev)); 358 358 359 359 return NULL; ··· 887 887 /*todo: use simple_strtoll with >32bit ext3 */ 888 888 sb_block = simple_strtoul(options, &options, 0); 889 889 if (*options && *options != ',') { 890 - ext3_msg(sb, "error: invalid sb specification: %s", 890 + ext3_msg(sb, KERN_ERR, "error: invalid sb specification: %s", 891 891 (char *) *data); 892 892 return 1; 893 893 }
+4 -1
fs/quota/dquot.c
··· 1439 1439 * did a write before quota was turned on 1440 1440 */ 1441 1441 rsv = inode_get_rsv_space(inode); 1442 - if (unlikely(rsv)) 1442 + if (unlikely(rsv)) { 1443 + spin_lock(&dq_data_lock); 1443 1444 dquot_resv_space(inode->i_dquot[cnt], rsv); 1445 + spin_unlock(&dq_data_lock); 1446 + } 1444 1447 } 1445 1448 } 1446 1449 out_err:
+1 -3
fs/reiserfs/super.c
··· 1147 1147 "on filesystem root."); 1148 1148 return 0; 1149 1149 } 1150 - qf_names[qtype] = 1151 - kmalloc(strlen(arg) + 1, GFP_KERNEL); 1150 + qf_names[qtype] = kstrdup(arg, GFP_KERNEL); 1152 1151 if (!qf_names[qtype]) { 1153 1152 reiserfs_warning(s, "reiserfs-2502", 1154 1153 "not enough memory " ··· 1155 1156 "quotafile name."); 1156 1157 return 0; 1157 1158 } 1158 - strcpy(qf_names[qtype], arg); 1159 1159 if (qtype == USRQUOTA) 1160 1160 *mount_options |= 1 << REISERFS_USRQUOTA; 1161 1161 else