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. Upstream commit: http://git.kernel.org/linus/b338cc8207eae46640a8d534738fda7b5e48511d