vfs: fix panic in __d_lookup() with high dentry hashtable counts
authorDimitri Sivanich <sivanich@sgi.com>
Wed, 8 Feb 2012 20:39:07 +0000 (12:39 -0800)
committerAl Viro <viro@zeniv.linux.org.uk>
Tue, 14 Feb 2012 01:45:38 +0000 (20:45 -0500)
commit074b85175a43a23fdbde60f55feea636e0bf0f85
treee6f6fdd82854b2bf25ea5b404cee010806a8fced
parent1d6f2097865e64963e90cce04980dce2f9fc023f
vfs: fix panic in __d_lookup() with high dentry hashtable counts

When the number of dentry cache hash table entries gets too high
(2147483648 entries), as happens by default on a 16TB system, use of a
signed integer in the dcache_init() initialization loop prevents the
dentry_hashtable from getting initialized, causing a panic in
__d_lookup().  Fix this in dcache_init() and similar areas.

Signed-off-by: Dimitri Sivanich <sivanich@sgi.com>
Acked-by: David S. Miller <davem@davemloft.net>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
fs/dcache.c
fs/inode.c
kernel/pid.c
mm/page_alloc.c
net/ipv4/tcp.c