From: Carlos Maiolino Date: Wed, 3 Oct 2012 02:59:23 +0000 (-0300) Subject: ext3: ext3_bread usage audit X-Git-Tag: v3.7-rc2~39^2~3 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c3d59ad6ab0b3d01c10f326bbc9b089424a3a5c4;p=pandora-kernel.git ext3: ext3_bread usage audit 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 patch creates a new wrapper function ext3_dir_bread() which checks for holes properly, reports error, and returns EIO in that case. Signed-off-by: Carlos Maiolino Signed-off-by: Jan Kara --- Reading git-diff-tree failed