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

Francis Galiegue (fg@mandrakesoft.com)
Sun, 4 Mar 2001 01:02:31 +0100 (CET)


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/