diff --git a/libbb/loop.c b/libbb/loop.c index f0d4296ae..c78535a20 100644 --- a/libbb/loop.c +++ b/libbb/loop.c @@ -106,6 +106,10 @@ int FAST_FUNC set_loop(char **device, const char *file, unsigned long long offse return -errno; } +//TODO: use LOOP_CTL_GET_FREE instead of trying every loopN in sequence? a-la: +// fd = open("/dev/loop-control", O_RDWR); +// loopN = ioctl(fd, LOOP_CTL_GET_FREE); +// /* Find a loop device. */ try = *device ? *device : dev; /* 1048575 (0xfffff) is a max possible minor number in Linux circa 2010 */ diff --git a/testsuite/mount.tests b/testsuite/mount.tests index a0bc50888..91c2e8b42 100755 --- a/testsuite/mount.tests +++ b/testsuite/mount.tests @@ -10,9 +10,11 @@ test "`id -u`" = 0 || { exit 0 } +# Without MOUNT_LOOP_CREATE, the test will fail if /dev/loopN's do not exist if test x"$CONFIG_MKFS_MINIX" != x"y" \ || test x"$CONFIG_FEATURE_MINIX2" != x"y" \ || test x"$CONFIG_FEATURE_MOUNT_LOOP" != x"y" \ +|| test x"$CONFIG_FEATURE_MOUNT_LOOP_CREATE" != x"y" \ || test x"$CONFIG_FEATURE_MOUNT_FLAGS" != x"y" \ || test x"$CONFIG_FEATURE_DEVFS" = x"y" \ ; then