fs: Don't return 0 from get_anon_bdev
authorThomas Bächler <thomas@archlinux.org>
Thu, 3 Apr 2014 19:55:37 +0000 (21:55 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 31 May 2014 20:20:31 +0000 (13:20 -0700)
commit47ce856c8f85530d6586562f982493dae2a4423e
treee28a8c13d074a6e8edc6a158bcb99d0fe4cdb6dc
parent2ad1de98b6fc6c7d04b00506e77b2aa1f7838c01
fs: Don't return 0 from get_anon_bdev

commit a2a4dc494a7b7135f460e38e788c4a58f65e4ac3 upstream.

Commit 9e30cc9595303b27b48 removed an internal mount. This
has the side-effect that rootfs now has FSID 0. Many
userspace utilities assume that st_dev in struct stat
is never 0, so this change breaks a number of tools in
early userspace.

Since we don't know how many userspace programs are affected,
make sure that FSID is at least 1.

References: http://article.gmane.org/gmane.linux.kernel/1666905
References: http://permalink.gmane.org/gmane.linux.utilities.util-linux-ng/8557
Signed-off-by: Thomas Bächler <thomas@archlinux.org>
Acked-by: Tejun Heo <tj@kernel.org>
Acked-by: H. Peter Anvin <hpa@zytor.com>
Tested-by: Alexandre Demers <alexandre.f.demers@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/super.c