On Thu 04-10-12 14:42:12, Jan Kara wrote: > On Tue 02-10-12 23:59:23, Carlos Maiolino wrote: > > This is the ext3 version of the same patch applied to Ext4, where such goal is > > to audit the usage of ext3_bread() due a possible misinterpretion of its return > > value. > > > > Focused on directory blocks, a NULL value returned from ext3_bread() means a > > hole, which cannot exist into a directory inode. It can pass undetected after a > > fix in an uninitialized error variable. > > > > The (now) initialized variable into ext3_getblk() may lead to a zero'ed return > > value of ext3_bread() to its callers, which can make the caller do not detect > > the hole in the directory inode. > > > > This checks for directory holes when buffer_head and error value are both > > zero'ed returning -EIO to their callers > > > > Some ext3_bread() callers do not needed any changes either because they already > > had its own hole detector paths or because these are deprecaded (like > > dx_show_entries) > > > > V2: It adds a wrapper function ext3_dir_bread() to check for directory holes > > when reading blocks for a directory inode, and callers of ext3_bread() to read > > directory blocks were replaced by this wrapper. > > > > Signed-off-by: Carlos Maiolino <cmaiolino@xxxxxxxxxx> > Oh, I see you already sent V2. Thanks. I've put the patch to my tree. Umm, after checking - any reason why you didn't convert also ext3_bread() in dir.c and ext3_bread() in ext3_rename()? Honza -- Jan Kara <jack@xxxxxxx> SUSE Labs, CR -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html