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
This commit is contained in:
Denis Vlasenko
2007-09-27 10:09:59 +00:00
parent c9dc2ac578
commit 5d61e71c3a
13 changed files with 65 additions and 30 deletions

View File

@@ -81,12 +81,9 @@ int arpping(uint32_t test_ip, uint32_t from_ip, uint8_t *from_mac, const char *i
unsigned prevTime = monotonic_us();
pfd[0].events = POLLIN;
r = poll(pfd, 1, timeout_ms);
r = safe_poll(pfd, 1, timeout_ms);
if (r < 0) {
if (errno != EINTR) {
bb_perror_msg("poll");
break;
}
break;
} else if (r) {
if (read(s, &arp, sizeof(arp)) < 0)
break;