[IA64] Add hotplug cpu to salinfo.c, replace semaphore with mutex
authorKeith Owens <kaos@sgi.com>
Thu, 5 Jan 2006 23:36:06 +0000 (10:36 +1100)
committerTony Luck <tony.luck@intel.com>
Fri, 13 Jan 2006 22:22:35 +0000 (14:22 -0800)
commite026cca0f2c09c4c28c902db6384fd8a412671d6
tree56c7803066b2ec1833ae669f909513f3b3483d60
parent15029285dc977a392e74eacb7625984b71d4f605
[IA64] Add hotplug cpu to salinfo.c, replace semaphore with mutex

Add hotplug cpu support to salinfo.c.

The cpu_event field is a cpumask so use the cpu_* macros consistently,
replacing the existing mixture of cpu_* and *_bit macros.

Instead of counting the number of outstanding events in a semaphore and
trying to track that count over user space context, interrupt context,
non-maskable interrupt context and cpu hotplug, replace the semaphore
with a test for "any bits set" combined with a mutex.

Modify the locking to make the test for "work to do" an atomic
operation.

Signed-off-by: Keith Owens <kaos@sgi.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
arch/ia64/kernel/salinfo.c