On Fri, Nov 10, 2000 at 05:46:29PM -0800, H. Peter Anvin wrote:
> Ralf Baechle wrote:
> >
> > Jeff,
> >
> > On Fri, Nov 10, 2000 at 03:29:20PM -0700, Jeff V. Merkey wrote:
> >
> > > Well, here's what the sendmail folks **REAL** opinion of Linux is and
> > > the way load average is calculated (senders name removed)
> > >
> > > [... sendmail person ...]
> > >
> > > Ok, here's my blunt answer: Linux sucks. Why does it have a load
> > > > average of 10 if there are two processes running? Let's check the
> > > > man page:
> > > >
> > > > and the three load averages for the system. The load
> > > > averages are the average number of process ready to
> > > > run during the last 1, 5 and 15 minutes. This line
> > > > is just like the output of uptime(1).
> > > >
> > > > So: Linux load average on these systems is broken.
> >
> > Or the documentation is b0rken? This is how the load figure is actually
> > calculated:
> >
> > /*
> > * Nr of active tasks - counted in fixed-point numbers
> > */
> > static unsigned long count_active_tasks(void)
> > {
> > struct task_struct *p;
> > unsigned long nr = 0;
> >
> > read_lock(&tasklist_lock);
> > for_each_task(p) {
> > if ((p->state == TASK_RUNNING ||
> > (p->state & TASK_UNINTERRUPTIBLE)))
> > nr += FIXED_1;
> > }
> > read_unlock(&tasklist_lock);
> > return nr;
> > }
> >
>
> Yes, the documentation is broken. Linus did in fact implement this
> change because it made most daemons behave significantly better. This
> ought to include sendmail; it's just that on modern systems the numbers
> get a little too high for it.
So everyone should up their defaults for most commercial Linux versions.
Jeff
>
> -hpa
>
> --
> <[email protected]> at work, <[email protected]> in private!
> "Unix gives you enough rope to shoot yourself in the foot."
> http://www.zytor.com/~hpa/puzzle.txt