Description of problem:
There is a typo here. We should be testing "*dentry" instead of "dentry". If
"*dentry" is an ERR_PTR, it gets dereferenced in either mkdir() or create()
which would cause an OOPs.
This bug has been in the kernel since 2.6.14-rc2 via b67dbf9d.
Patch bz594630-testing-wrong-variable-in-create_by_name.patch, backport of upstream commit b338cc8207eae46640a8d534738fda7b5e48511d added to kernel -159 patch queue.
Verified by code review. Found bz594630-testing-wrong-variable-in-create_by_name.patch implemented in kernel-rt-184.108.40.206-160.src.rpm.
Technical note added. If any revisions are required, please edit the "Technical Notes" field
accordingly. All revisions will be proofread by the Engineering Content Services team.
Fixed a typo in security filesystem code that should be dereferencing an inode pointer and instead was checking the value of the pointer.
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.