x86: cpumask: update 32-bit APM not to mug current->cpus_allowed
authorRusty Russell <rusty@rustcorp.com.au>
Wed, 11 Mar 2009 06:01:29 +0000 (16:31 +1030)
committerIngo Molnar <mingo@elte.hu>
Wed, 18 Mar 2009 12:51:45 +0000 (13:51 +0100)
commit89bd55d1855f8e9a4e9add8e93f3144d049c469e
treed9ef2d2b6150f03a1da240e5ce23dc25beac4e8e
parent4bae1967357bfc78a2fad1be5e81a4b868980ae6
x86: cpumask: update 32-bit APM not to mug current->cpus_allowed

Impact: cleanup, avoid cpumask games

The APM code wants to run on CPU 0: we create an "on_cpu0" wrapper
which uses work_on_cpu() if we're not already on cpu 0.

This introduces a new failure mode: -ENOMEM, so we add an explicit
err arg and handle Linux-style errnos in apm_err().

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Stephen Rothwell <sfr@canb.auug.org.au>
LKML-Reference: <200903111631.29787.rusty@rustcorp.com.au>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
arch/x86/kernel/apm_32.c