diff --git a/libbb/loop.c b/libbb/loop.c index 8c3ad2ce0..19bbf3674 100644 --- a/libbb/loop.c +++ b/libbb/loop.c @@ -132,7 +132,7 @@ extern char *find_unused_loop_device(void) struct stat statbuf; struct loop_info loopinfo; - for (i = 0; i <= 7; i++) { + for (i = 0; i <= CONFIG_FEATURE_MOUNT_LOOP_MAX; i++) { sprintf(dev, LOOP_FORMAT, i); if (stat(dev, &statbuf) == 0 && S_ISBLK(statbuf.st_mode)) { if ((fd = open(dev, O_RDONLY)) >= 0) { diff --git a/util-linux/Config.in b/util-linux/Config.in index b54165409..7007915ba 100644 --- a/util-linux/Config.in +++ b/util-linux/Config.in @@ -349,6 +349,14 @@ config CONFIG_FEATURE_MOUNT_LOOP if you need to do something advanced, such as specify an offset or cryptographic options to the loopback device. +config CONFIG_FEATURE_MOUNT_LOOP_MAX + int " max number of loop devices" + default 7 + depends on CONFIG_FEATURE_MOUNT_LOOP + help + This option sets the highest numbered loop device to be used + automatically by the '-o loop' feature of mount. + config CONFIG_FEATURE_MTAB_SUPPORT bool " Support for a /etc/mtab file (instead of symlink to /proc/mounts)" default n