fs/super.c: fix WARN on alloc_super() fail path
authorVladimir Davydov <[email protected]>
Tue, 21 Jan 2014 23:48:45 +0000 (15:48 -0800)
committerLinus Torvalds <[email protected]>
Wed, 22 Jan 2014 00:19:42 +0000 (16:19 -0800)
commitb5bd856a0c2a6331ee3300fb589aeea56eba110b
tree3dff9573fc8fdc07b1961dc7412f7ceea7d17c1b
parent4e4f9e66a75921aa260c2f5bf626bdea54e51ba2
fs/super.c: fix WARN on alloc_super() fail path

On fail path alloc_super() calls destroy_super(), which issues a warning
if the sb's s_mounts list is not empty, in particular if it has not been
initialized.  That said s_mounts must be initialized in alloc_super()
before any possible failure, but currently it is initialized close to
the end of the function leading to a useless warning dumped to log if
either percpu_counter_init() or list_lru_init() fails.  Let's fix this.

Signed-off-by: Vladimir Davydov <[email protected]>
Cc: Al Viro <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
fs/super.c