Re: [kernel] Re: [PATCH] 2.4.2: cure the kapm-idled taking (100-epsilon)% CPU time

From: Francis Galiegue (fg@mandrakesoft.com)
Date: Sat Mar 03 2001 - 19:02:31 EST


On Sat, 3 Mar 2001, Philipp Rumpf wrote:

> > Well, from reading the source, I don't see how this can break APM... What am I
> > missing?
>
> apm_bios_call must not be called with two identical pointers for
> two different registers.
>

OK, my bad... By replacing the call I made with this:

        u32 dummy, a, b, c, d;

        if (apm_bios_call(APM_FUNC_IDLE, 0, 0, &dummy, &a, &b, &c, &d))
                return 0;

then the situation is back to "normal"...

Just one more thing though: in apm_bios_call_simple():

[...]
    APM_DO_SAVE_SEGS;
    {
        int cx, dx, si;
[...]

Aren't cx, dx and si really meant to be u32?

-- 
Francis Galiegue, fg@mandrakesoft.com - Normand et fier de l'être
"Programming is a race between programmers, who try and make more and more
idiot-proof software, and universe, which produces more and more remarkable
idiots. Until now, universe leads the race"  -- R. Cook

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Wed Mar 07 2001 - 21:00:15 EST