On Sun, Oct 22, 2006 at 10:35:34PM -0600, Eric W. Biederman wrote:
>
> When I generalized __assign_irq_vector I failed to pay attention
> to what happens when you access a per cpu data structure for
> a cpu that is not online. It is an undefined case making any
> code that does it have undefined behavior as well.
>
> The code still needs to be able to allocate a vector across cpus
> that are not online to properly handle combinations like lowest
> priority interrupt delivery and cpu_hotplug. Not that we can do
> that today but the infrastructure shouldn't prevent it.
>
> So this patch updates the places where we touch per cpu data
> to only touch online cpus, it makes cpu vector allocation
> an atomic operation with respect to cpu hotplug, and it updates
> the cpu start code to properly initialize vector_irq so we
> don't have inconsistencies.
>
> Signed-off-by: Eric W. Biederman <[email protected]>
I tried 1/2 and 2/2 at the same time and it booted, so good work :-)
I'm stressing the machine a little now, will let you know if anything
out of the ordinary comes up.
Acked-by: Muli Ben-Yehuda <[email protected]>
Cheers,
Muli
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]