![]() | |||||||||||||
Messages in this thread |
On 10/22/06, Eric W. Biederman <ebiederm@xmission.com> 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 <ebiederm@xmission.com> Acked-by: Yinghai Lu <yinghai.lu@amd.com> - 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/ | ||||||||||||
| Last update: 2006-10-23 08:19 [from the cache] ©2003-2008 | |||||||||||||