aboutsummaryrefslogtreecommitdiff
path: root/procps
Commit message (Collapse)AuthorAgeFilesLines
* join some common strings, -400 bytesGravatar Denys Vlasenko2015-10-081-2/+2
| | | | | | | | | | | | | | | 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-072-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* ps: fix SEGV on narrow screens. closes 8176Gravatar Denys Vlasenko2015-07-011-5/+7
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* *: Switch to POSIX utmpx APIGravatar Bernhard Reutner-Fischer2015-04-021-3/+3
| | | | | | | | | | UTMP is SVID legacy, UTMPX is mandated by POSIX. Glibc and uClibc have identical layout of UTMP and UTMPX, both of these libc treat _PATH_UTMPX as _PATH_UTMP so from a user-perspective nothing changes except the names of the API entrypoints. Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
* Use chomp to remove newlinesGravatar Ron Yorston2015-03-121-2/+2
| | | | | | | | | | | | | | 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-123-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* trim extra newlines in help textsGravatar Denys Vlasenko2015-01-242-2/+2
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* mpstat: code shrinkGravatar Denys Vlasenko2015-01-051-6/+2
| | | | | | | | function old new delta get_uptime 134 129 -5 get_irqs_from_stat 110 103 -7 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* free: handle "cached" value tooGravatar Guillermo Rodriguez2015-01-051-31/+46
| | | | | | | | function old new delta free_main 356 481 +125 Signed-off-by: Guillermo Rodriguez <guille.rodriguez@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* top: fix memset length (sizeof(ptr) vs sizeof(array) problem)Gravatar Denys Vlasenko2014-07-291-2/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* top: fix and merge code to parse /proc/meminfoGravatar Timo Teräs2014-07-271-110/+86
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | display_header() code to parse meminfo as is was buggy: - uninitialized variables were used if meminfo was not as expected - meminfo parsing failed on new kernels (3.14+) as new field 'MemAvailable' was introduced between MemFree and Buffers - shared memory was handled only for ancient kernels (2.4.x and earlier) as result Buffers and shared memory fields were shown with bogus values on current kernels. The new code does not try to parse the old style summary header, as the separated fields are always present (it saves code size). Additionally, both Shmem (2.6+) and MemShared (2.4 and earlier) fields are now parsed and summed for shared memory usage; as only one of them exists depending on kernel version. display_topmem_header() parses also meminfo so this makes it use the same code for code shrink. function old new delta display_header - 681 +681 display_topmem_process_list 465 684 +219 parse_meminfo - 189 +189 static.fields - 106 +106 static.match 132 - -132 .rodata 120254 120117 -137 display_topmem_header 513 - -513 display_process_list 1705 667 -1038 ------------------------------------------------------------------------------ (add/remove: 3/2 grow/shrink: 1/2 up/down: 1195/-1820) Total: -625 bytes Signed-off-by: Timo Teräs <timo.teras@iki.fi> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* libbb: use a wrapper around sysconf(_SC_CLK_TCK) to save a few bytesGravatar Bartosz Golaszewski2014-06-222-13/+2
| | | | | | | | | | | | | | function old new delta bb_sc_clk_tck - 10 +10 timescmd 118 113 -5 print_route 1763 1758 -5 mpstat_main 1288 1283 -5 iostat_main 1947 1942 -5 INET_setroute 879 871 -8 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 0/5 up/down: 10/-28) Total: -18 bytes Signed-off-by: Bartosz Golaszewski <bartekgola@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* sysctl: do not error out showing write-only data. Closes 6386Gravatar Denys Vlasenko2014-02-241-0/+3
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* top.c: fix compilation warningsGravatar Bartosz Golaszewski2014-01-201-5/+0
| | | | | | | pfd[1] is unused Signed-off-by: Bartosz Golaszewski <bartekgola@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* kill[all[5]]: code shrinkGravatar Denys Vlasenko2013-12-161-20/+18
| | | | | | | function old new delta kill_main 992 947 -45 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* killall5: return 2 if no processes got killedGravatar Uros Vampl2013-12-161-1/+4
| | | | | | | function old new delta kill_main 943 992 +49 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* Use unsigned printf/scanf conversion where more appropriateGravatar Denys Vlasenko2013-11-292-3/+3
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* top: fix breakage introduced by previous commitGravatar Denys Vlasenko2013-09-061-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* Make smart_ulltoa return pointer to end (allows for code shink in callers)Gravatar Denys Vlasenko2013-09-064-12/+6
| | | | | | | | | | | | | 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>
* pstree: fix theoretically unsafe codeGravatar Denys Vlasenko2013-06-281-1/+1
| | | | | | In practice, p->comm is never long enough to trigger the bug, but still. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* lsof: correct check for symbolic linkGravatar Thomas De Schampheleire2013-06-271-3/+6
| | | | | | | | | | | | | | | | | | | | Busybox lsof used the d_type field of a 'struct dirent' to verify whether the entry is a symbolic link. This field, however, is not portable. On at least one board [1] I have seen, that field is 0, and the check fails even though the entry is a link. The explicit check for a symbolic link is really only needed to skip the default directory entries '.' and '..'. The directory /proc/<pid>/fd/ should not contain anything else but these two and symbolic links. With these assumptions, this patch replaces the explicit link check with a basic check for '.' and '..' (and any hidden file). In the unlikely case that there are other file types, xmalloc_readlink() will return NULL, and we can skip the entry. [1] A MIPS-based board with glibc 2.9, Linux 2.6.32.27. Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* pstree: stop truncating thread namesGravatar Mike Frysinger2013-06-191-3/+10
| | | | | | | | | This also fixes a minor buffer overflow when displaying threads as add_proc() only expects COMM_LEN bytes, but we give it one more than that. Reported-by: Dag Wieers <dag@wieers.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* libbb: introduce and use strftime_[YYYYMMDD]HHMMSS()Gravatar Denys Vlasenko2013-03-291-5/+7
| | | | | | | | | | | | | | | | | | function old new delta strftime_fmt - 53 +53 strftime_YYYYMMDDHHMMSS - 12 +12 strftime_HHMMSS - 12 +12 human_time 44 43 -1 fmtstr_t 9 - -9 step_time 361 345 -16 watch_main 261 232 -29 ------------------------------------------------------------------------------ (add/remove: 3/1 grow/shrink: 0/3 up/down: 77/-55) Total: 22 bytes text data bss dec hex filename 919203 932 17692 937827 e4f63 busybox_old 919209 932 17692 937833 e4f69 busybox_unstripped Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* pgrep: fix a "missing closing paren" build errorGravatar Denys Vlasenko2013-02-281-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* pgrep: fix -x optionGravatar Bernhard Walle2013-02-281-1/+1
| | | | | | | | | | | | | | Because when -x is used (exact match), then we cannot compile the regular expression with REG_NOSUB. The manual page regcomp(3) states in section "Byte offsets": Unless REG_NOSUB was set for the compilation of the pattern buffer, it is possible to obtain substring match addressing information. The problem was detected on an ARM system with glibc 2.16. Signed-off-by: Bernhard Walle <bernhard@bwalle.de> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ps: seconds_since_boot: uint64_t -> ulongGravatar Denys Vlasenko2013-01-261-4/+1
| | | | | | Even if long is 32-bit, 4 billion second uptime isn't likely :) Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* *: reuse more stringsGravatar Denys Vlasenko2013-01-221-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ps: fix sscanf format specifier (%l); make uptime unsignedGravatar Denys Vlasenko2013-01-221-15/+21
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* whitespace cleanup. no code changesGravatar Denys Vlasenko2013-01-142-2/+2
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* whitespace fixes. no code changesGravatar Denys Vlasenko2013-01-142-2/+2
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* powertop: fix error messageGravatar Lauri Hintsala2013-01-041-1/+1
| | | | | | | | Application tries to use timer_stats module instead of cpufreq_stats. Error message is printed if opening of the file /proc/timer_stats fails. Signed-off-by: Lauri Hintsala <lauri.hintsala@bluegiga.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* libbb: correctness/size tweaks in signal-related helpersGravatar Denys Vlasenko2012-09-271-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* top: do not touch stdin if -bGravatar Denys Vlasenko2012-09-261-10/+16
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* top: fix build failure in !USE_TERMIOS caseGravatar Denys Vlasenko2012-09-251-17/+20
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ps: fix build failure in !DESKTOP caseGravatar Denys Vlasenko2012-09-251-3/+3
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* top: implement scrolling up/down (_very_ useful)Gravatar Denys Vlasenko2012-09-212-74/+110
| | | | | | | | | | | | | function old new delta handle_input 494 564 +70 top_main 928 947 +19 display_topmem_process_list 363 381 +18 display_process_list 1442 1453 +11 clearmems 38 28 -10 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 4/1 up/down: 118/-10) Total: 108 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* sysctl: implement -qGravatar Joshua Kahlenberg2012-09-051-13/+19
| | | | | | | | | | function old new delta packed_usage 29208 29223 +15 sysctl_act_recursive 605 598 -7 sysctl_main 233 222 -11 Signed-off-by: Joshua Kahlenberg <jbkberg@gmail.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* Move several applets to different install dir:Gravatar Denys Vlasenko2012-06-201-1/+1
| | | | | | | | | | | | Moved to [/usr]/sbin: addgroup, adduser, delgroup, deluser, arping, chat, ether-wake, fdformat, ifplugd, ip, ipaddr, iplink, iproute, iprule, iptunnel, killall5, readahead, rtcwake, tftpd, add-shell, remove-shell, powertop. Moved to /bin for /usr/bin: kbd_mode. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ps: use separate get_uptime() and make it work on non-linux tooGravatar Michael Tokarev2012-06-131-11/+29
| | | | | | | | Create get_uptime() function in procps/ps.c, and use it rather than relying on linux-specific sysinfo() inline. Signed-off-by: Michael Tokarev <mjt@tls.msk.ru> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* killall5: don't do STOP/CONT dance if the signal we send is SIGSTOP or SIGCONTGravatar Denys Vlasenko2012-04-031-2/+4
| | | | | | | function old new delta kill_main 913 942 +29 Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* lsof: new appletGravatar Sven Oliver Moll2012-04-011-0/+76
| | | | | | | | | | text data bss dec hex filename 221 0 0 221 dd lsof.o Signed-off-by: Sven Oliver Moll <busybox@svol.li> Signed-off-by: souf <souf_oued@yahoo.fr> Signed-off-by: Tito Ragusa <farmatito@tiscali.it> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* libbb: make xchroot do a chdir("/") after chrootGravatar Denys Vlasenko2012-03-081-2/+2
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* kill: fix segfault in arguments parsingGravatar Alexey Fomenko2011-12-221-4/+7
| | | | | Signed-off-by: Alexey Fomenko <ext-alexey.fomenko@nokia.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* nmeter: fix block i/o count on newer Linux kernelsGravatar Denys Vlasenko2011-11-011-12/+38
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ps: fix for !FEATURE_PS_LONG buildGravatar Cristian Ionescu-Idbohrn2011-09-291-0/+2
| | | | | Signed-off-by: Cristian Ionescu-Idbohrn <cii@axis.com> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ps: with -l, show STIME tooGravatar Flemming Madsen2011-09-271-16/+21
| | | | | Signed-off-by: Flemming Madsen <busybox@themadsens.dk> Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* ps: add support for -l for !DESKTOPGravatar Denys Vlasenko2011-09-262-19/+94
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* rename archive.h to bb_archive.h. no code changesGravatar Denys Vlasenko2011-09-221-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* add INIT_G()'s. No code changes.Gravatar Denys Vlasenko2011-09-211-1/+1
| | | | Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
* uptime: more compatible outputGravatar Denys Vlasenko2011-08-101-20/+20
| | | | | | | | | | | was: 12:59:35 up 1:57, 4 users, load average: 0.11, 0.20, 0.53 is: 12:59:37 up 1:57, 4 users, load average: 0.11, 0.20, 0.53 While at it, switched code to unsigned division. Based on patch by Pere Orga <gotrunks@gmail.com>. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>