ext4: propagate errors up to ext4_find_entry()'s callers
authorTheodore Ts'o <tytso@mit.edu>
Sat, 23 Aug 2014 21:47:19 +0000 (17:47 -0400)
committerTheodore Ts'o <tytso@mit.edu>
Sat, 23 Aug 2014 21:47:19 +0000 (17:47 -0400)
commit36de928641ee48b2078d3fe9514242aaa2f92013
treebc4c393c347215ba7e240c4a0a15d47fab24dddf
parent7d1311b93e58ed55f3a31cc8f94c4b8fe988a2b9
ext4: propagate errors up to ext4_find_entry()'s callers

If we run into some kind of error, such as ENOMEM, while calling
ext4_getblk() or ext4_dx_find_entry(), we need to make sure this error
gets propagated up to ext4_find_entry() and then to its callers.  This
way, transient errors such as ENOMEM can get propagated to the VFS.
This is important so that the system calls return the appropriate
error, and also so that in the case of ext4_lookup(), we return an
error instead of a NULL inode, since that will result in a negative
dentry cache entry that will stick around long past the OOM condition
which caused a transient ENOMEM error.

Google-Bug-Id: #17142205

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Cc: stable@vger.kernel.org
fs/ext4/ext4.h
fs/ext4/namei.c