Tito, farmatito at tiscali dot it writes:

Hi to all,
This patch is useful for:
1) remove an unused var from extern char *find_real_root_device_name(const char* name)
    changing it to extern char *find_real_root_device_name(void).
2) fixes include/libbb.h, coreutils/df.c, util-linux/mount.c and  util-linux/umount.c accordingly.
3) fixes a bug, really a false positive,  in find_real_root_device_name() that happens if
    in the /dev directory exists a link named root (/dev/root) that should be skipped but
    is not. This affects applets like df that display wrong results
diff --git a/libbb/find_root_device.c b/libbb/find_root_device.c
index 81824a2..2600ce5 100644
--- a/libbb/find_root_device.c
+++ b/libbb/find_root_device.c
@@ -27,7 +27,7 @@
 
 
 
-extern char *find_real_root_device_name(const char* name)
+extern char *find_real_root_device_name(void)
 {
 	DIR *dir;
 	struct dirent *entry;
@@ -54,7 +54,11 @@
 				 * would get a false positive on ".."  */
 				if (myname[0] == '.' && myname[1] == '.' && !myname[2])
 					continue;
-
+#ifdef CONFIG_FEATURE_DEVFS
+				/* if there is a link named /dev/root skip that too */
+				if (strcmp(myname, "root")==0)
+					continue;
+#endif
 				fileName = concat_path_file("/dev", myname);
 
 				/* Some char devices have the same dev_t as block