* Oren Twaig <o...@scalemp.com> wrote: > Hi Ingo, > > On 04/26/2014 09:09 AM, Ingo Molnar wrote: > > I still don't see a clear explanation of what the _user_ saw and sees > > before and after the change. What is the effect of the patch: correct > > IRQ routing (i.e. before the change IRQs would end up on the wrong > > CPU), lower overhead IRQ routing (i.e. before the change IRQ routing > > overhead was more expensive), or something else? > > > > You don't spell this out clearly and it's a crucial piece of > > information that comes before every other explanation. > > > I see.. I tried to explain the entire flow and that was confusing - I'll > explain > only the patch. > > As you stated, in general, the patch corrects IRQ routing in case a vSMP > Foundation box is detected but the Interrupt Routing Comply (IRC) is set to > "comply". > > Before the patch: > When a vSMP Foundation box was detected and IRC was set to "comply", users > (and > kernel) couldn't effectively set the destination of the IRQs. This is because > the hook inside vsmp_64.c always setup all CPUs as the IRQ destination using > cpumask_setall() as the return value for IRQ allocation mask. Later, this > "overrided" mask caused the kernel to set the IRQ destination to the lowest > online CPU in the mask (CPU0 usually). > > After the patch: > When the IRC is set to "comply", Users (and kernel) can control the > destination > of the IRQs as we will not be changing the default > "apic->vector_allocation_domain".
Much better, thanks! Ingo -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/