mount,losetup: use /dev/loop-control is it exists
function old new delta get_free_loop - 58 +58 set_loop 597 649 +52 losetup_main 482 476 -6 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 1/1 up/down: 110/-6) Total: 104 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
@@ -114,8 +114,14 @@ int losetup_main(int argc UNUSED_PARAM, char **argv)
|
||||
/* contains -f */
|
||||
if (opt & OPT_f) {
|
||||
char *s;
|
||||
int n = 0;
|
||||
int n;
|
||||
|
||||
n = get_free_loop();
|
||||
if (n == -1)
|
||||
bb_error_msg_and_die("no free loop devices");
|
||||
if (n < 0) /* n == -2: no /dev/loop-control, use legacy method */
|
||||
n = 0;
|
||||
/* or: n >= 0: the number of next free loopdev, just verify it */
|
||||
do {
|
||||
if (n > MAX_LOOP_NUM)
|
||||
bb_error_msg_and_die("no free loop devices");
|
||||
|
Reference in New Issue
Block a user