aboutsummaryrefslogtreecommitdiff
path: root/util-linux
Commit message (Collapse)AuthorAgeFilesLines
* join some common strings, -400 bytesGravatar Denys Vlasenko2015-10-081-5/+5
| | | | | | | | | | | | | | | function old new delta print_intel_cstates 499 511 +12 file_insert 355 364 +9 dpkg_main 2944 2940 -4 ifenslave_main 645 640 -5 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 2/2 up/down: 21/-9) Total: 12 bytes text data bss dec hex filename 937564 932 17676 956172 e970c busybox_old 937164 932 17676 955772 e957c busybox_unstripped Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* build system: -fno-builtin-printfGravatar Denys Vlasenko2015-10-076-61/+61
| | | | | | | | | | | | | | | | | | | | | | | | | | Benefits are: drops reference to out-of-line putchar(), fixes a few cases of failed string merge. function old new delta i2cdump_main 1488 1502 +14 sha256_process_block64 423 433 +10 sendmail_main 1183 1185 +2 list_table 1114 1116 +2 i2cdetect_main 1235 1237 +2 fdisk_main 2852 2854 +2 builtin_type 119 121 +2 unicode_conv_to_printable2 325 324 -1 scan_recursive 380 378 -2 mkfs_minix_main 2687 2684 -3 buffer_fill_and_print 178 169 -9 putchar 152 - -152 ------------------------------------------------------------------------------ (add/remove: 0/2 grow/shrink: 7/4 up/down: 34/-167) Total: -133 bytes text data bss dec hex filename 937788 932 17676 956396 e97ec busybox_old 937564 932 17676 956172 e970c busybox_unstripped Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* libbb: more compact API for bb_parse_mode()Gravatar Denys Vlasenko2015-10-071-1/+1
| | | | | | | | | | | | | | | | | function old new delta make_device 2182 2188 +6 parse_command 1440 1443 +3 parse_params 1497 1499 +2 install_main 773 769 -4 mkdir_main 168 160 -8 getoptscmd 641 632 -9 builtin_umask 158 147 -11 bb_parse_mode 431 410 -21 umaskcmd 286 258 -28 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 3/6 up/down: 11/-81) Total: -70 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* umount: always use umount2 syscall with specified flagsGravatar Denys Vlasenko2015-10-011-4/+16
| | | | | | | | | | | | | | | | | | | | Make umount -f more compatible with util-linux 2.22.2. Before: * 'umount -f': calls umount syscall, if it fails calls umount2 with 'MNT_FORCE' * 'mount -f -l': calls umount syscall, if it fails calls umount2 with 'MNT_LAZY'. 'MNT_FORCE' dropped After: * 'umount -f': calls umount2 syscall with 'MNT_FORCE' * 'mount -f -l': calls umount2 syscall with 'MNT_LAZY' and 'MNT_FORCE' function old new delta umount 45 - -45 umount_main 610 555 -55 Signed-off-by: Anton Bondarenko <anton.bondarenko@axis.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* dmesg: add -r option to print raw format even when FEATURE_DMESG_PRETTY is ↵Gravatar Peter Korsgaard2015-08-241-3/+5
| | | | | | | | | | enabled Similar to the "big" util-linux version. For !DMESG_PRETTY, the option is accepted (but ignored) as well, for compatibility reasons. Signed-off-by: Peter Korsgaard <peter@korsgaard.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* libbb: add setsockopt_foo helpersGravatar Denys Vlasenko2015-08-241-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | function old new delta setsockopt_int - 23 +23 do_load 918 934 +16 setsockopt_SOL_SOCKET_int - 14 +14 setsockopt_keepalive - 10 +10 setsockopt_SOL_SOCKET_1 - 10 +10 buffer_fill_and_print 169 178 +9 setsockopt_1 - 8 +8 nfsmount 3560 3566 +6 redirect 1277 1282 +5 tcpudpsvd_main 1782 1786 +4 d6_send_kernel_packet 272 275 +3 i2cget_main 380 382 +2 ed_main 2544 2545 +1 scan_recursive 380 378 -2 nbdclient_main 492 490 -2 hash_find 235 233 -2 cmdputs 334 332 -2 parse_command 1443 1440 -3 static.two 4 - -4 ntpd_main 1039 1035 -4 const_int_1 4 - -4 const_IPTOS_LOWDELAY 4 - -4 RCVBUF 4 - -4 ntp_init 474 469 -5 change_listen_mode 316 310 -6 uevent_main 416 409 -7 arping_main 1697 1690 -7 telnet_main 1612 1603 -9 socket_want_pktinfo 42 33 -9 setsockopt_reuseaddr 21 10 -11 setsockopt_broadcast 21 10 -11 httpd_main 772 757 -15 get_remote_transfer_fd 109 94 -15 make_new_session 503 487 -16 ftpd_main 2177 2160 -17 read_bunzip 1896 1866 -30 common_traceroute_main 4099 4058 -41 common_ping_main 1836 1783 -53 ------------------------------------------------------------------------------ (add/remove: 5/4 grow/shrink: 8/21 up/down: 111/-283) Total: -172 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* fbset: fix rgba parsingGravatar Linus Walleij2015-07-301-4/+4
| | | | | | | | | | | | | | In commit b5c7220e7b2b6611fe5beca494c67bfe51fcfafb "fbset: respect rgba configuration lines in fb.modes" I somehow managed to swap the offset/length markers around. The man page for fb.modes says it should be offset/length not length/offset as I was accidentally parsing it. As my fb.modes file was also reversed I didn't notice until I tried someone elses fb.modes file. Mea culpa. Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* libbb: add a function to make a copy of a region of memoryGravatar Ron Yorston2015-07-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Introduce a library routine to package the idiom: p = xmalloc(b, n); memcpy(p, b, n); and use it where possible. The example in traceroute used xzalloc but it didn't need to. function old new delta xmemdup - 32 +32 last_main 834 826 -8 make_device 2321 2311 -10 common_traceroute_main 3698 3685 -13 readtoken1 3182 3168 -14 procps_scan 1222 1206 -16 forkchild 655 638 -17 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 0/6 up/down: 32/-78) Total: -46 bytes Signed-off-by: Ron Yorston <rmy@frippery.org> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* typo fixesGravatar Maninder Singh2015-05-251-1/+1
| | | | | Signed-off-by: Maninder Singh <maninder1.s@samsung.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* mdev: if a "future" mdev.seq is seen, do not overwrite it with oursGravatar Denys Vlasenko2015-04-191-7/+22
| | | | | | | | | | | This was seen to happen if two mdevs are run in parallel, mdev.seq is empty, and the "newer" one manages to write it first. function old new delta mdev_main 1366 1388 +22 atoll - 20 +20 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* mdev: improve loggingGravatar Denys Vlasenko2015-04-191-4/+8
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* uevent: new appletGravatar Denys Vlasenko2015-04-161-0/+127
| | | | | | | | | | | | | | | | | This applet listens on netlink socket with kernel's uevent messages. Run-tested. function old new delta uevent_main - 416 +416 packed_usage 30671 30713 +42 applet_names 2531 2538 +7 applet_main 1468 1472 +4 RCVBUF - 4 +4 applet_nameofs 734 736 +2 ------------------------------------------------------------------------------ (add/remove: 3/0 grow/shrink: 4/0 up/down: 475/0) Total: 475 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* volume_id: fix a buglet introduced by is_prefixed_with() conversionGravatar Alfonso Ranieri2015-04-141-1/+1
| | | | | Signed-off-by: Alfonso Ranieri <alforan@tin.it> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* Use chomp to remove newlinesGravatar Ron Yorston2015-03-121-1/+1
| | | | | | | | | | | | | | function old new delta unix_do_one 548 540 -8 process_timer_stats 508 500 -8 process_irq_counts 532 524 -8 lpd_main 839 831 -8 hwclock_main 502 494 -8 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 0/6 up/down: 0/-50) Total: -40 bytes Signed-off-by: Ron Yorston <rmy@tigress.co.uk> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* libbb: introduce and use is_prefixed_with()Gravatar Denys Vlasenko2015-03-129-16/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | function old new delta is_prefixed_with - 18 +18 complete_username 78 77 -1 man_main 737 735 -2 fsck_device 429 427 -2 unpack_ar_archive 80 76 -4 strip_unsafe_prefix 105 101 -4 singlemount 1054 1050 -4 rtc_adjtime_is_utc 90 86 -4 resolve_mount_spec 88 84 -4 parse_one_line 1029 1025 -4 parse_conf 1460 1456 -4 may_wakeup 83 79 -4 loadkmap_main 219 215 -4 get_irqs_from_stat 103 99 -4 get_header_cpio 913 909 -4 findfs_main 79 75 -4 fbsplash_main 1230 1226 -4 load_crontab 776 771 -5 expand_vars_to_list 1151 1146 -5 date_main 881 876 -5 skip_dev_pfx 30 24 -6 make_device 2199 2193 -6 complete_cmd_dir_file 773 767 -6 run_applet_and_exit 715 708 -7 uudecode_main 321 313 -8 pwdx_main 197 189 -8 execute 568 560 -8 i2cdetect_main 1186 1176 -10 procps_scan 1242 1230 -12 procps_read_smaps 1017 1005 -12 process_module 746 734 -12 patch_main 1903 1891 -12 nfsmount 3572 3560 -12 stack_machine 126 112 -14 process_timer_stats 449 435 -14 match_fstype 111 97 -14 do_ipaddr 1344 1330 -14 open_list_and_close 359 343 -16 get_header_tar 1795 1779 -16 prepend_new_eth_table 340 323 -17 fsck_main 1811 1794 -17 find_iface_state 56 38 -18 dnsd_main 1321 1303 -18 base_device 179 158 -21 find_keyword 104 82 -22 handle_incoming_and_exit 2785 2762 -23 parse_and_put_prompt 774 746 -28 modinfo 347 317 -30 find_action 204 171 -33 update_passwd 1470 1436 -34 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 0/49 up/down: 18/-540) Total: -522 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* mount: -T OTHERTAB supportGravatar Isaac Dunham2015-03-112-94/+108
| | | | | | | | | function old new delta mount_main 1221 1241 +20 packed_usage 30616 30610 -6 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com> Signed-off-by: Isaac Dunham <ibid.ag@gmail.com>
* acpid: fix loggingGravatar Serj Kalichev2015-02-231-5/+3
| | | | | | | | Without this patch acpid can't log the events at all. Moreover it tries to truncate log file every time. Signed-off-by: Serj Kalichev <serj.kalichev@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* trivial code shrinkGravatar Denys Vlasenko2015-02-182-10/+10
| | | | | | | | | | | | | | | function old new delta rdate_main 246 251 +5 show_entry 291 287 -4 daytime_stream 44 39 -5 packed_usage 30176 30168 -8 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 1/3 up/down: 5/-17) Total: -12 bytes text data bss dec hex filename 929453 932 17684 948069 e7765 busybox_old 929411 932 17684 948027 e773b busybox_unstripped Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* fstrim: fix help textGravatar Denys Vlasenko2015-02-041-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* swaponoff: add support for -eGravatar René Rhéaume2015-01-051-5/+13
| | | | | Signed-off-by: René Rhéaume <rene.rheaume@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* mdev: treat zero-length /dev/mdev.seq the same as "\n" one. Closes 7334Gravatar Denys Vlasenko2014-09-081-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* fatattr: use the standard type for 32-bit intGravatar Denys Vlasenko2014-07-041-2/+2
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* fatattr: new appletGravatar Pascal Bellard2014-06-301-0/+104
| | | | | | | | | | | | | | | function old new delta fatattr_main - 281 +281 packed_usage 29821 29871 +50 bit_to_char - 10 +10 applet_names 2472 2480 +8 applet_main 1436 1440 +4 applet_nameofs 718 720 +2 ------------------------------------------------------------------------------ (add/remove: 3/0 grow/shrink: 4/0 up/down: 355/0) Total: 355 bytes Signed-off-by: Pascal Bellard <pascal.bellard@ads-lu.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* rtcwake: fix incorrect (reversed) rtc/sys adjuestment; code shrinkGravatar Denys Vlasenko2014-05-021-23/+32
| | | | | | | function old new delta rtcwake_main 482 462 -20 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* swapon/swapoff: -a returns 0 on ignored errorsGravatar Tito Ragusa2014-04-011-3/+2
| | | | | Signed-off-by: Tito Ragusa <farmatito@tiscali.it> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* swapon/swapoff: size reduction, cleanup, fixes, improvementsGravatar Tito Ragusa2014-03-311-115/+161
| | | | | | | | | | | | | | | | | | | | | | | | | | | 1) real swapon/swapoff handles also devices on the commandline with -a; 2) xstat(device) in swap_enable_disable aborts on error when cycling through fstab so some devices are not handled; 3) duplicated code for ENABLE_FEATURE_SWAPON_DISCARD and ENABLE_FEATURE_SWAPON_PRI was moved to functions. 4) silence some error messages with -a; 5) minor cleanups and code refactoring reduced the size as per bloat-check: 6) I also added support for /proc/swaps handling to swapoff: "When the -a flag is given, swapping is disabled on all known swap devices and files (as found in /proc/swaps or /etc/fstab)." So now swapoff first cycles through /proc/swaps and then through fstab to swapoff all devices. function old new delta set_discard_flag - 106 +106 swap_enable_disable 147 238 +91 set_priority_flag - 79 +79 retrieve_file_data 470 467 -3 swap_on_off_main 638 418 -220 ------------------------------------------------------------------------------ (add/remove: 2/0 grow/shrink: 1/2 up/down: 276/-223) Total: 53 bytes Signed-off-by: Tito Ragusa <farmatito@tiscali.it> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* add discard option -d to swaponGravatar Matt Whitlock2014-03-232-9/+85
| | | | | Signed-off-by: Matt Whitlock <busybox@mattwhitlock.name> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* fix interaction of -a and -p options in swaponGravatar Matt Whitlock2014-03-231-2/+5
| | | | | | | Swap entries in /etc/fstab inherit the priority specified on the command line unless they have 'pri' in their mount options. Signed-off-by: Matt Whitlock <busybox@mattwhitlock.name> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* avoid calling bb_strtou twice in MIN macro expansionGravatar Matt Whitlock2014-03-231-5/+8
| | | | | | | Also, the maximum allowable value of swap priority is technically SWAP_FLAG_PRIO_MASK >> SWAP_FLAG_PRIO_SHIFT. Signed-off-by: Matt Whitlock <busybox@mattwhitlock.name> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* script: make it work even if fd 0 is closedGravatar Denys Vlasenko2014-03-161-0/+7
| | | | | | | Testcase: script -q -c "echo hey" /dev/null 0>&- Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* use [s]rand(), not [s]random()Gravatar Denys Vlasenko2014-03-051-2/+2
| | | | | | | | rand() is the most standard C library function, and on uclibc they are the same. I guess they are the same in most todays' libc... Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* hwclock: fix setting of tz_minuteswest. Closes 5414Gravatar Denys Vlasenko2014-02-251-2/+10
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* Use unsigned printf/scanf conversion where more appropriateGravatar Denys Vlasenko2013-11-295-14/+14
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* fix assorted unused code and wrong format specs found by cppchekc (bug 6716)Gravatar Denys Vlasenko2013-11-291-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* fstrim: use new-style config/kbuild/applet snippets; trim help textGravatar Denys Vlasenko2013-11-123-20/+22
| | | | | | | function old new delta packed_usage 29546 29520 -26 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* fix "warning: ISO C90 forbids mixed declarations and code"Gravatar Denys Vlasenko2013-11-121-1/+2
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* fstrim: Needs to fire at the mp, not bdGravatar Bernhard Reutner-Fischer2013-11-101-5/+5
| | | | | | | It's a filesystem thing from this perspective. +1b Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* fstrim: Indicate failure on errorGravatar Bernhard Reutner-Fischer2013-11-101-1/+2
| | | | | | +14b Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* fstrim: -17bGravatar Bernhard Reutner-Fischer2013-11-091-8/+5
| | | | | | | | | Also, use the name of the block device we found, not necessarily the one we got from the user: fstrim -v / /dev/sdj: 4711 bytes were trimmed Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* fstrim: New appletGravatar Malek Degachi2013-11-093-0/+119
| | | | | | | | | | | | | | | | | | | | | | | | | | | fstrim applet is a port from util-linux. "Trimming" your NAND/eMMC storage will restore the write performance back to normal after having slow down issues on sequential write and random write due to usage over time. Good reading on subject: http://forum.xda-developers.com/showthread.php?t=1971852 (with long options and CLEAN_UP turned on) function old new delta .rodata 148494 148791 +297 fstrim_main - 283 +283 fstrim_sfx - 128 +128 packed_usage 28826 28903 +77 applet_main 2760 2768 +8 applet_names 2343 2350 +7 applet_nameofs 690 692 +2 ------------------------------------------------------------------------------ (add/remove: 3/0 grow/shrink: 5/0 up/down: 802/0) Total: 802 bytes Signed-off-by: Malek Degachi <malek-degachi@laposte.net> Cc: Eugene San (eugenesan) <eugenesan@gmail.com> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* swaponoff: shrinkGravatar Bernhard Reutner-Fischer2013-11-081-3/+2
| | | | | | | | | | | function old new delta .rodata 148469 148468 -1 swap_on_off_main 381 379 -2 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-3) Total: -3 bytes text data bss dec hex filename 803030 4090 9504 816624 c75f0 busybox_old 803027 4090 9504 816621 c75ed busybox_unstripped
* Make smart_ulltoa return pointer to end (allows for code shink in callers)Gravatar Denys Vlasenko2013-09-061-4/+2
| | | | | | | | | | | | | function old new delta smart_ulltoa5 405 408 +3 smart_ulltoa4 273 276 +3 list_table 1113 1114 +1 scale 36 34 -2 put_lu 55 53 -2 ulltoa6_and_space 19 14 -5 powertop_main 1470 1461 -9 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* fdisk: fix GPT size math errorsGravatar Jody Bruchon2013-08-201-2/+2
| | | | | Signed-off-by: Jody Bruchon <jody@jodybruchon.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* swapon: support "pri=NNN" in fstabGravatar Tito Ragusa2013-08-081-0/+14
| | | | | | | | function old new delta swap_on_off_main 244 365 +121 Signed-off-by: Tito Ragusa <farmatito@tiscali.it> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* volume_id: add f2fs detectionGravatar Sven-Göran Bergh2013-08-013-0/+100
| | | | | | | | | function old new delta volume_id_probe_f2fs - 98 +98 Signed-off-by: Sven-Göran Bergh <sgb@systemasis.org> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* volume_id: nilfs config description.Gravatar Sven-Göran Bergh2013-07-311-1/+10
| | | | | | | | | Config description for nilfs added. No code change. Signed-off-by: Sven-Göran Bergh <sgb@systemasis.org> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* volume_id: Adopt to new config style.Gravatar Sven-Göran Bergh2013-07-3135-245/+318
| | | | | | | | | | Config instructions for util-linux/volume_id are moved into the source files according to the new config feature. No code change. Signed-off-by: Sven-Göran Bergh <sgb@systemasis.org> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* volume_id: Adopt to new kbuild style.Gravatar Sven-Göran Bergh2013-07-3135-38/+71
| | | | | | | | | | Kbuild instructions for util-linux/volume_id are moved into the source files according to the new build feature. No code change. Signed-off-by: Sven-Göran Bergh <sgb@systemasis.org> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* Commonalize typical [b,]k,m suffix structGravatar Denys Vlasenko2013-07-131-8/+1
| | | | | | | | | | | | | function old new delta bkm_suffixes - 32 +32 static.km_suffixes 24 - -24 suffixes 32 - -32 static.bkm 32 - -32 head_tail_suffixes 32 - -32 ------------------------------------------------------------------------------ (add/remove: 2/6 grow/shrink: 0/0 up/down: 72/-160) Total: -88 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* losetup: assorted fixes. Closes 6314Gravatar Denys Vlasenko2013-06-271-16/+21
| | | | | | | | | | | | | "losetup -d" was not complaining that LOOPDEV is missing. "losetup -a" was listing only up to /dev/loop9. "losetup -f" looped forever if llop0 was taken, and never tried anything after /dev/loop9. "-o" with other options (say, -r) had no effect. function old new delta losetup_main 376 419 +43 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>