Denis Vlasenko
04e11c9209
getpot: add support for "a+" specifier for nonnegative int parameters.
...
By Vladimir Dronnikov <dronnikov at gmail.com>.
fdisk and top are converted as an example.
function old new delta
getopt32 1340 1370 +30
top_main 1137 1120 -17
fdisk_main 3033 2949 -84
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/2 up/down: 30/-101) Total: -71 bytes
2008-02-10 19:44:20 +00:00
Bernhard Reutner-Fischer
8c69afd992
- be C99 friendly. Anonymous unions are a GNU extension. This change is
...
size-neutral WRT -std=gnu99 and fixes several compilation errors for strict
C99 mode.
2008-01-29 10:33:34 +00:00
Denis Vlasenko
56ea65ca5f
ps: fix overflow in USER and VSZ columns
...
function old new delta
smart_ulltoa4 - 280 +280
smart_ulltoa5 283 408 +125
ulltoa6_and_space - 25 +25
scale 28 38 +10
bbunpack 358 366 +8
ps_main 259 261 +2
glob3 35 37 +2
fill_bounds 172 174 +2
process_stdin 456 446 -10
smart_ulltoa6 406 - -406
------------------------------------------------------------------------------
(add/remove: 2/1 grow/shrink: 6/1 up/down: 454/-416) Total: 38 bytes
2008-01-06 03:26:53 +00:00
Denis Vlasenko
fcfb5c04bb
defconfig: update
...
appletli.c: add vda's (C)
top: fixlet for incorrect display of "0"
Makefile: reduce stack size from 20k to 16k
2007-12-24 12:16:24 +00:00
Denis Vlasenko
5576136563
fixes revealed by randomconfig run
2007-10-16 22:53:05 +00:00
Denis Vlasenko
9b49a5ed85
add -fvisibility=hidden to CC flags, mark XXX_main functions
...
EXTERNALLY_VISIBLE. 5% size reduction of libbusybox.so
2007-10-11 10:05:36 +00:00
Denis Vlasenko
4daad9004d
introduce bb_putchar(). saves ~1800 on uclibc (less on glibc).
2007-09-27 10:20:47 +00:00
Denis Vlasenko
5d61e71c3a
introduce safe_poll (fixes a problem in top)
...
function old new delta
safe_poll - 77 +77
svlogd_main 1470 1466 -4
zcip_main 1530 1524 -6
forkexec 1345 1338 -7
decode_format_string 795 788 -7
collect_blk 474 467 -7
buffer_pread 540 532 -8
tftp 1182 1172 -10
microcom_main 763 749 -14
arpping 441 424 -17
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/9 up/down: 77/-80) Total: -3 bytes
text data bss dec hex filename
770162 1034 10404 781600 bed20 busybox_old
770158 1034 10404 781596 bed1c busybox_unstripped
2007-09-27 10:09:59 +00:00
Denis Vlasenko
4d7605af86
top: small fix for command line wrapping
2007-09-08 17:42:00 +00:00
Denis Vlasenko
4c1d88daff
top: get rid of on-stack variable buffers, use permanent one.
...
code shrank with and without TOPMEM:
top_main 828 844 +16
display_process_list 1525 1473 -52
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/1 up/down: 16/-52) Total: -36 bytes
top_main 1150 1171 +21
display_topmem_process_list 1150 1167 +17
display_process_list 1525 1473 -52
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/1 up/down: 38/-52) Total: -14 bytes
2007-09-08 17:34:05 +00:00
Denis Vlasenko
e7c1ad1540
top: add sizeof(G) check; fix style
2007-09-08 17:21:01 +00:00
Denis Vlasenko
ff6e8e2974
top: TOPMEM feature - 's(how sizes)' command. +2.5k when enabled,
...
+80 bytes when disabled (mainly because of text wrapping fixes
in display_process_list).
2007-09-08 16:51:19 +00:00
Denis Vlasenko
05241802a7
top: another readability fix
2007-08-29 18:34:26 +00:00
Denis Vlasenko
8bdba4d011
top: don't wait before final bailout (try top -b -n1).
...
top: make code a bit more readable.
2007-08-29 18:18:08 +00:00
Denis Vlasenko
b308d81e92
top: use poll instead of select for waiting on one descriptor
...
smart_ulltoa5: make it more cryptic. -50 bytes.
function old new delta
passwd_main 1095 1103 +8
getNum 557 565 +8
buffer_fill_and_print 73 76 +3
udhcpc_main 2393 2395 +2
mkfs_minix_main 3071 3070 -1
dname_enc 377 373 -4
expmeta 480 472 -8
smart_ulltoa5 334 283 -51
top_main 911 815 -96
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 4/5 up/down: 21/-160) Total: -139 bytes
text data bss dec hex filename
770872 1063 10788 782723 bf183 busybox_old
770732 1063 10788 782583 bf0f7 busybox_unstripped
2007-08-28 19:35:34 +00:00
Denis Vlasenko
6ee023cf62
*: compile fixes for 64-bit build
2007-08-23 10:52:52 +00:00
Denis Vlasenko
fe7cd642b0
don't pass argc in getopt32, it's superfluous
...
(add/remove: 0/0 grow/shrink: 12/131 up/down: 91/-727) Total: -636 bytes
text data bss dec hex filename
773469 1058 11092 785619 bfcd3 busybox_old
772644 1058 11092 784794 bf99a busybox_unstripped
2007-08-18 15:32:12 +00:00
Denis Vlasenko
856be770a6
assorted fixes for breakage found by randomconfig
2007-08-17 08:29:48 +00:00
Denis Vlasenko
110967a6f7
top: nested function allows us to reuse some code
...
(not everyone likes them - but code does get smaller).
display_generic - 761 +761
static.fmt_100percent_8 - 111 +111
fmt_100percent_8 101 - -101
display_status 1489 581 -908
------------------------------------------------------------------------------
(add/remove: 2/1 grow/shrink: 0/1 up/down: 872/-1009) Total: -137 bytes
text data bss dec hex filename
677020 3344 13936 694300 a981c busybox_old
676876 3344 13936 694156 a978c busybox_unstripped
2007-07-15 19:27:48 +00:00
Denis Vlasenko
24c5fbaf42
top: make "100%" case less ugly, and shrink code while at it
...
fmt_100percent_8 - 101 +101
.rodata 129185 129153 -32
display_status 1726 1489 -237
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/2 up/down: 101/-269) Total: -168 bytes
text data bss dec hex filename
677180 3344 13936 694460 a98bc busybox_old
677020 3344 13936 694300 a981c busybox_unstripped
2007-07-15 19:25:01 +00:00
Denis Vlasenko
c1166c3a8c
top: simpler loadavg processing
...
display_status 1787 1726 -61
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-61) Total: -61 bytes
text data bss dec hex filename
677244 3344 13936 694524 a98fc busybox_old
677180 3344 13936 694460 a98bc busybox_unstripped
2007-07-15 19:23:38 +00:00
Denis Vlasenko
9109fbeaa1
top: truncate usernames to 8 chars
2007-07-15 17:07:58 +00:00
Denis Vlasenko
98ebab8b76
top,ps: improve /proc/PID/cmdinfo reading code
...
function old new delta
display_status - 1231 +1231
read_cmdline - 101 +101
parse_conf 1284 1303 +19
arith 2033 2042 +9
collect_blk 467 474 +7
fsck_main 1909 1911 +2
dhcprelay_main 1125 1122 -3
singlemount 4555 4547 -8
read_close 50 36 -14
get_lcm 123 105 -18
ed_main 3111 3084 -27
func_args 73 28 -45
procps_scan 732 658 -74
top_main 2187 899 -1288
------------------------------------------------------------------------------
(add/remove: 2/0 grow/shrink: 4/8 up/down: 1369/-1477) Total: -108 bytes
text data bss dec hex filename
676048 2744 13968 692760 a9218 busybox_old
675940 2744 13968 692652 a91ac busybox_unstripped
2007-06-30 14:47:41 +00:00
Denis Vlasenko
f7d07b1723
killall, pidof: use argv0 for process matching too
...
top: show cmdline, not comm field
(fixes problems with re-execed applets showing as processes with name "exe",
and not being found by pidof/killall by applet name)
function old new delta
find_pid_by_name 98 156 +58
procps_scan 692 732 +40
top_main 2724 2762 +38
find_pair 164 180 +16
collect_int 114 123 +9
cmp_main 547 555 +8
collect_fork 112 119 +7
collect_ctx 112 119 +7
read_package_field 253 257 +4
passwd_main 1983 1985 +2
process_stdin 435 433 -2
xstrtoul_range_sfx 229 226 -3
get_next_block 1852 1849 -3
arith 2042 2033 -9
sv_main 1236 1226 -10
singlemount 4690 4672 -18
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 10/6 up/down: 189/-45) Total: 144 bytes
text data bss dec hex filename
734789 3028 14400 752217 b7a59 busybox_old
734933 3028 14400 752361 b7ae9 busybox_unstripped
2007-06-30 08:03:26 +00:00
Denis Vlasenko
745119605e
top: on user suggestion make percentile calculations configurable. -56 bytes when off. +600 bytes when on
...
top: reorder columns, so that [P]PIDs are together and VSZ/%MEM are together. Makes more sense
2007-06-11 16:31:55 +00:00
Denis Vlasenko
b1e5addfed
top: improve global CPU percentage (smaller & faster code)
2007-06-10 18:04:54 +00:00
Denis Vlasenko
5a65447e30
top: add config option and code for global CPU % display
2007-06-10 17:11:59 +00:00
Denis Vlasenko
b6adbf1be2
usage.c: remove reference to busybox.h
...
*: s/include "busybox.h"/include "libbb.h"
2007-05-26 19:00:18 +00:00
Denis Vlasenko
8581863a1b
procps: remove all global variables
...
text data bss dec hex filename
1462 14 24 1500 5dc busybox.t2/procps/ps.o
1484 0 0 1484 5cc busybox.t3/procps/ps.o
3122 0 252 3374 d2e busybox.t1/procps/top.o
3117 0 0 3117 c2d busybox.t3/procps/top.o
2007-04-19 14:47:11 +00:00
Denis Vlasenko
ac678ec2f1
style fixes, no code changes
2007-04-16 22:32:04 +00:00
Mike Frysinger
0aa6ba5d44
make sure ps/top output what they claim: vsz, not rss ... down the line we should make the output controllable either at runtime or buildtime as both statistics are quite useful
2007-02-08 08:21:58 +00:00
Denis Vlasenko
06af216528
suppress warnings about easch <applet>_main() having
...
no preceding prototype
2007-02-03 17:28:39 +00:00
Denis Vlasenko
f7996f3b70
Trailing whitespace removal over entire tree
2007-01-11 17:20:00 +00:00
Denis Vlasenko
3bba545a54
done a dozen of randconfig test. guess what? ALL failed...
...
these are resulting fixes
2006-12-30 17:57:03 +00:00
Denis Vlasenko
459e4d6cf7
replace /proc scanning code by more versatile one.
...
Use it where appropriate.
Stop scanning /etc/passwd *for every process*!!! (uid->username)
top: reduce memory usage - we won't save unneeded fields
from /proc info anymore. Downside: ~+250 bytes of code
2006-11-05 00:43:51 +00:00
Denis Vlasenko
fa07680091
top: improve CPU% calculation
...
style fixes
2006-11-05 00:38:51 +00:00
Denis Vlasenko
35fb512728
PID should be stored in pid_t, not int or long.
...
find_pid_by_name() was returning 0 or -1 in last array element,
but -1 was never checked. We can use just 0 intead.
2006-11-01 09:16:49 +00:00
Denis Vlasenko
25d8062128
top: batch mode should output all processes
2006-10-27 09:34:22 +00:00
Denis Vlasenko
ea62077b85
add open_read_close() and similar stuff
2006-10-14 02:23:43 +00:00
Denis Vlasenko
1385899416
attempt to regularize atoi mess.
2006-10-08 12:49:22 +00:00
Denis Vlasenko
c12f53090b
dnsd fix; option_mask32 added. dnsd needs more love.
2006-10-06 09:49:47 +00:00
Denis Vlasenko
67b23e6043
getopt_ulflags -> getopt32.
...
It is impossible to formulate sane ABI based on
size of ulong because it can be 32-bit or 64-bit.
Basically it means that you cannot portably use
more that 32 option chars in one call anyway...
Make it explicit.
2006-10-03 21:00:06 +00:00
Denis Vlasenko
266bc17690
top: add support for -b, -n <iterations>
2006-09-29 17:16:39 +00:00
Denis Vlasenko
42dfcd2612
top: fixed wrong comment, made error message more clear
2006-09-09 12:55:02 +00:00
Rob Landley
d921b2ecc0
Remove bb_ prefixes from xfuncs.c (and a few other places), consolidate
...
things like xasprintf() into xfuncs.c, remove xprint_file_by_name() (it only
had one user), clean up lots of #includes... General cleanup pass. What I've
been doing for the last couple days.
And it conflicts! I've removed httpd.c from this checkin due to somebody else
touching that file. It builds for me. I have to catch a bus. (Now you know
why I'm looking forward to Mercurial.)
2006-08-03 15:41:12 +00:00
Rob Landley
a526c30cc5
Make another warning go away.
2006-06-30 20:30:10 +00:00
Rob Landley
db1ab1aeb3
Top was catching sigterm (and fumbling sigint) so it could reset the terminal
...
type on the way out, but the signal handler didn't exit. Plus it did
unnecessary things with sigaction. This code is overgrown and needs a serious
weed-whacking...
2006-06-28 14:11:25 +00:00
Bernhard Reutner-Fischer
e15d7573a1
- move #include busybox.h to the very top so we pull in the config
...
and eventual platform specific includes in early.
2006-06-02 20:56:16 +00:00
Rob Landley
299a6b4d7b
Consolidate #include <sys/time.h> so libbb.h does it.
2006-05-27 21:42:58 +00:00
Bernhard Reutner-Fischer
e2922e42a0
- make it C89 compatible; Declarations in the middle of a function is of course
...
fine in C99, but it really serves no purpose other than breaking compilation
on C89 compilers.
Thanks to Rich Felker for pointing this out.
2006-05-19 12:48:56 +00:00
Rob Landley
0c43046fde
Fix allbareconfig.
2006-05-04 19:51:22 +00:00
Rob Landley
997650b972
From Denis Vlasenko:
...
* CPU% = process[i].ticks/sum(process[i].ticks) * busy_cpu_ticks/total_cpu_ticks
* got rid of empty line under "Load average" line
and used last line - +2 visible processes
* do not do float conversion of loadavg, just read it as string from /proc
* fix display on small screens
* dropped unused .stime, .utime fields
* a few variables were renamed
* style fixes
2006-04-24 23:13:46 +00:00
Bernhard Reutner-Fischer
d9cf7ac781
- patch from Denis Vlasenko to add and use bb_xchdir()
2006-04-12 18:39:58 +00:00
"Vladimir N. Oleynik"
c218a29325
add last terminal line
2006-02-15 17:15:56 +00:00
"Vladimir N. Oleynik"
3afdfecf7e
restore change by Denis Vlasenko: file_to_buf must vary fast, best if inline
2006-02-14 10:36:38 +00:00
Rob Landley
b2804551a0
Cleanups from Denis Vlasenko.
2006-02-13 22:04:27 +00:00
"Vladimir N. Oleynik"
51bfa54e46
removed warning "comparison between signed and unsigned". Added ATTRIBUTE_UNUSED. My whitespace
2006-01-30 13:58:34 +00:00
Tim Riker
c1ef7bdd8d
just whitespace
2006-01-25 00:08:53 +00:00
"Vladimir N. Oleynik"
70678bc5b6
getopt -> getopt_ulflags. noticed by Rob Sullivan
2005-11-29 12:32:33 +00:00
"Vladimir N. Oleynik"
f246dc7f57
ENABLE_FEATURE_TOP_CPU_USAGE_PERCENTAGE->CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE
2005-09-16 12:55:29 +00:00
"Vladimir N. Oleynik"
1e07f852e0
FEATURE->ENABLE_FEATURE loses one for 'top' applet
2005-09-14 16:08:06 +00:00
Mike Frysinger
038b076e55
some portability fixes by rmh in Bug 395
2005-08-27 18:18:06 +00:00
Mike Frysinger
223b887960
touchup syntax
2005-07-30 09:42:05 +00:00
Rob Landley
60158cb93e
A patch from Takeharu KATO to update/fix SE-Linux support.
2005-05-03 06:25:50 +00:00
Eric Andersen
14f5c8d764
Patch from Bernhard Fischer to make a bunch of symbols static
...
which were otherwise cluttering the global namespace.
2005-04-16 19:39:00 +00:00
Glenn L McGrath
b6570d07c4
remove a cut/paste mistake, i better get some sleep.
2004-09-14 19:14:00 +00:00
Glenn L McGrath
225be8c1f0
Apply patch from Felipe Kellermann to simlify logic of sort functions.
...
I reversed the result of the sort functions to make the big numbers go to the top.
2004-09-14 18:56:52 +00:00
Eric Andersen
aff114c33d
Larry Doolittle writes:
...
This is a bulk spelling fix patch against busybox-1.00-pre10.
If anyone gets a corrupted copy (and cares), let me know and
I will make alternate arrangements.
Erik - please apply.
Authors - please check that I didn't corrupt any meaning.
Package importers - see if any of these changes should be
passed to the upstream authors.
I glossed over lots of sloppy capitalizations, missing apostrophes,
mixed American/British spellings, and German-style compound words.
What is "pretect redefined for test" in cmdedit.c?
Good luck on the 1.00 release!
- Larry
2004-04-14 17:51:38 +00:00
Eric Andersen
c7bda1ce65
Remove trailing whitespace. Update copyright to include 2004.
2004-03-15 08:29:22 +00:00
Glenn L McGrath
f6bba3d689
Splitting statements with #define's can cause trouble for cross
...
compilers (and it looks a bit messy)
2003-12-08 20:31:25 +00:00
Eric Andersen
7857c03808
Paul Mundt (lethal) writes:
...
Erik,
The format for /proc/meminfo has changed between 2.4 and 2.6, quite considerably.
In addition to the removal of the two-line summary that was present in 2.4,
MemShared was also removed. Presently (at least in busybox CVS HEAD), top fails
to parse this correctly and spews forth a:
top: failed to read 'meminfo'
message. This patch switches around some of the semantics a little to do sane
parsing for both 2.4 and 2.6. Also, in the event that the summary gets yanked
from 2.4, this patch will deal with that as well. With this patch, I'm able
to run top correctly on 2.6.0-test7 (tested on sh).
Please apply.
procps/top.c | 60 +++++++++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 48 insertions(+), 12 deletions(-)
2003-10-11 18:47:20 +00:00
Eric Andersen
8efe967018
Be entirely consistant when using ioctl(0, TIOCGWINSZ, &winsize)
...
to ensure proper fallback behavior on, i.e. serial consoles.
-Erik
2003-09-15 08:33:45 +00:00
Eric Andersen
9e48045e45
Patch from Russell Coker:
...
I've attached my latest SE Linux patch for busybox against the latest CVS
version of busybox.
2003-07-03 10:07:04 +00:00
Manuel Novoa III
cad5364599
Major coreutils update.
2003-03-19 09:13:01 +00:00
Eric Andersen
44608e9693
Patch last_pach62 from vodz. This patch moves all the /proc parsing
...
code into libbb so it can be shared by ps, top, etc, saving over 1.5k.
2002-10-22 12:21:15 +00:00
Eric Andersen
08a72209c9
last_patch58 from vodz:
...
Ok. I generate patch for include to busybox-devel my work with
top (original author give me maintaining) and telnetd (my
support and unofficial maintaining) applets. Docs changes
also: added awk, netstat, time applets to list ;)
2002-09-30 20:52:10 +00:00
Eric Andersen
3a1d8377ab
don't leak FILEs
2002-09-20 07:33:18 +00:00
Manuel Novoa III
d499330e9e
Commit vodz's patch, plus a tweak to change TracePid to TracerPid. Now
...
works on i386 (2.4.19) and arm (2.4.6).
2002-09-18 19:27:10 +00:00
Eric Andersen
420b208a45
Add a new top applet
...
-Erik
2002-09-17 22:14:58 +00:00