2006-03-16 03:01:47

by Eugene Teo

[permalink] [raw]
Subject: [PATCH] Fix vfs_inode dereference before NULL check

__getname, which in turn will call kmem_cache_alloc, may return NULL.

Coverity bug #977

Signed-off-by: Eugene Teo <[email protected]>

--- linux-2.6/fs/9p/vfs_inode.c~ 2006-03-15 10:05:37.000000000 +0800
+++ linux-2.6/fs/9p/vfs_inode.c 2006-03-16 10:54:33.000000000 +0800
@@ -1254,6 +1254,8 @@
return -EINVAL;

name = __getname();
+ if (!name)
+ return -EINVAL;
/* build extension */
if (S_ISBLK(mode))
sprintf(name, "b %u %u", MAJOR(rdev), MINOR(rdev));

--
1024D/A6D12F80 print D51D 2633 8DAC 04DB 7265 9BB8 5883 6DAA A6D1 2F80
main(i) { putchar(182623909 >> (i-1) * 5&31|!!(i<7)<<6) && main(++i); }