aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenys Vlasenko <vda.linux@googlemail.com>2010-04-14 13:52:41 -0700
committerDenys Vlasenko <vda.linux@googlemail.com>2010-04-14 13:52:41 -0700
commitb9dd5ab6d954d0a6fd3813191a2ff2844347c54c (patch)
tree07cb07e7bccf7148ae9919616f1c1e68430861d2
parent351ef7188a1a2e2f154bbda6f703c2d3f4af6d79 (diff)
downloadbusybox-w32-b9dd5ab6d954d0a6fd3813191a2ff2844347c54c.tar.gz
busybox-w32-b9dd5ab6d954d0a6fd3813191a2ff2844347c54c.tar.bz2
busybox-w32-b9dd5ab6d954d0a6fd3813191a2ff2844347c54c.zip
loop: correct minor device number limit
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r--libbb/loop.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libbb/loop.c b/libbb/loop.c
index 204fcc982..b69d9d961 100644
--- a/libbb/loop.c
+++ b/libbb/loop.c
@@ -104,7 +104,8 @@ int FAST_FUNC set_loop(char **device, const char *file, unsigned long long offse
104 104
105 /* Find a loop device. */ 105 /* Find a loop device. */
106 try = *device ? *device : dev; 106 try = *device ? *device : dev;
107 for (i = 0; rc && i < 256; i++) { 107 /* 1048575 is a max possible minor number in Linux circa 2010 */
108 for (i = 0; rc && i < 1048576; i++) {
108 sprintf(dev, LOOP_FORMAT, i); 109 sprintf(dev, LOOP_FORMAT, i);
109 110
110 IF_FEATURE_MOUNT_LOOP_CREATE(errno = 0;) 111 IF_FEATURE_MOUNT_LOOP_CREATE(errno = 0;)