diff --git a/fs/inode.c b/fs/inode.c index 0401d2c6d0879a51fe833f63e971a53e08e55d05..648e71ce6ec216358e6733c2d6e0141c3d90c6f6 100644 --- a/fs/inode.c +++ b/fs/inode.c @@ -840,7 +840,11 @@ unsigned int get_next_ino(void) } #endif - *p = ++res; + res++; + /* get_next_ino should not provide a 0 inode number */ + if (unlikely(!res)) + res++; + *p = res; put_cpu_var(last_ino); return res; }