2000-11-11 01:47:11

by H. Peter Anvin

[permalink] [raw]
Subject: Re: sendmail fails to deliver mail with attachments in /var/spool/mqueue

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.

-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