Skip to content

Commit

Permalink
docs/cpu-load: format the example code.
Browse files Browse the repository at this point in the history
format the example code.

Signed-off-by: Hui Su <sh_def@163.com>
Link: https://lore.kernel.org/r/20201018170557.GA7670@rlk
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
  • Loading branch information
liulangrenaaa authored and Jonathan Corbet committed Oct 21, 2020
1 parent 4fb220d commit bb7a2c6
Showing 1 changed file with 33 additions and 30 deletions.
63 changes: 33 additions & 30 deletions Documentation/admin-guide/cpu-load.rst
Original file line number Diff line number Diff line change
Expand Up @@ -61,43 +61,46 @@ will lead to quite erratic information inside ``/proc/stat``::

static volatile sig_atomic_t stop;

static void sighandler (int signr)
static void sighandler(int signr)
{
(void) signr;
stop = 1;
(void) signr;
stop = 1;
}

static unsigned long hog (unsigned long niters)
{
stop = 0;
while (!stop && --niters);
return niters;
stop = 0;
while (!stop && --niters);
return niters;
}

int main (void)
{
int i;
struct itimerval it = { .it_interval = { .tv_sec = 0, .tv_usec = 1 },
.it_value = { .tv_sec = 0, .tv_usec = 1 } };
sigset_t set;
unsigned long v[HIST];
double tmp = 0.0;
unsigned long n;
signal (SIGALRM, &sighandler);
setitimer (ITIMER_REAL, &it, NULL);

hog (ULONG_MAX);
for (i = 0; i < HIST; ++i) v[i] = ULONG_MAX - hog (ULONG_MAX);
for (i = 0; i < HIST; ++i) tmp += v[i];
tmp /= HIST;
n = tmp - (tmp / 3.0);

sigemptyset (&set);
sigaddset (&set, SIGALRM);

for (;;) {
hog (n);
sigwait (&set, &i);
}
return 0;
int i;
struct itimerval it = {
.it_interval = { .tv_sec = 0, .tv_usec = 1 },
.it_value = { .tv_sec = 0, .tv_usec = 1 } };
sigset_t set;
unsigned long v[HIST];
double tmp = 0.0;
unsigned long n;
signal(SIGALRM, &sighandler);
setitimer(ITIMER_REAL, &it, NULL);

hog (ULONG_MAX);
for (i = 0; i < HIST; ++i) v[i] = ULONG_MAX - hog(ULONG_MAX);
for (i = 0; i < HIST; ++i) tmp += v[i];
tmp /= HIST;
n = tmp - (tmp / 3.0);

sigemptyset(&set);
sigaddset(&set, SIGALRM);

for (;;) {
hog(n);
sigwait(&set, &i);
}
return 0;
}


Expand Down

0 comments on commit bb7a2c6

Please sign in to comment.