From: Ulrich Drepper Date: Mon, 28 Apr 2003 03:40:26 +0000 (+0000) Subject: Update. X-Git-Tag: upstream/2.30~19349 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a16e35856aaedbb02fd1b6c55afc12994dd639b6;p=external%2Fglibc.git Update. * nscd/connections.c (client_queued): New variable. (nscd_run): Revamp the loop. Don't call poll except for cleanup threads. Keep track of the number of delays caused because of busy worker threads. * nscd/nscd.h: Declare client_queued. * nscd/nscd_stat.c: Transmit and print client_queued information. --- diff --git a/ChangeLog b/ChangeLog index d8d0321..0562bdd 100644 --- a/ChangeLog +++ b/ChangeLog @@ -9,6 +9,13 @@ 2003-04-27 Ulrich Drepper + * nscd/connections.c (client_queued): New variable. + (nscd_run): Revamp the loop. Don't call poll except for cleanup + threads. Keep track of the number of delays caused because of busy + worker threads. + * nscd/nscd.h: Declare client_queued. + * nscd/nscd_stat.c: Transmit and print client_queued information. + * locale/programs/locale.c (show_info): Use '\177' instead of CHAR_MAX. * Makerules ($(common-objpfx)shlib.lds): Don't use PROVIDE to diff --git a/nscd/nscd.h b/nscd/nscd.h index 89ac777..73c94a5 100644 --- a/nscd/nscd.h +++ b/nscd/nscd.h @@ -109,6 +109,9 @@ extern const char *server_user; /* Time the server was started. */ extern time_t start_time; +/* Number of times clients had to wait. */ +extern unsigned long int client_queued; + /* Prototypes for global functions. */ /* nscd.c */ diff --git a/nscd/nscd_stat.c b/nscd/nscd_stat.c index d55ca74..7cfde98 100644 --- a/nscd/nscd_stat.c +++ b/nscd/nscd_stat.c @@ -61,6 +61,7 @@ struct statdata char version[sizeof (compilation)]; int debug_level; time_t runtime; + unsigned long int client_queued; int ndbs; struct dbstat dbs[lastdb]; }; @@ -75,6 +76,7 @@ send_stats (int fd, struct database dbs[lastdb]) memcpy (data.version, compilation, sizeof (compilation)); data.debug_level = debug_level; data.runtime = time (NULL) - start_time; + data.client_queued = client_queued; data.ndbs = lastdb; for (cnt = 0; cnt < lastdb; ++cnt) @@ -175,6 +177,9 @@ receive_print_stats (void) else printf (_(" %2lus server runtime\n"), diff); + printf (_("%15lu number of times clients had to wait\n"), + data.client_queued); + for (i = 0; i < lastdb; ++i) { unsigned long int hit = data.dbs[i].poshit + data.dbs[i].neghit;