On 03/05/2016 06:38, Jan Kiszka wrote: > Yes, this doesn't look good from the performance POV. Given that most > EOIs of the APICs will not trigger a message to an IOAPIC and userspace > exits are expensive, that should be measurable. > > But you should optimize route updating a bit: I noticed real delays > (almost a second) when reprogramming all IOAPIC pins during Jailhouse > handover. That's because of the heavyweight synchronize_srcu we have on > each route change. Even if that is an extreme case, you should try to > reduce route updates to only those that were actually affected by an > IRTE change.
It's okay to make it synchronize_srcu_expedited. Unlike RCU, expediting SRCU grace periods doesn't have an impact on the whole system (the reason why KVM uses SRCU here is exactly to avoid synchronize_rcu_expedited). Of course, optimizing userspace cannot hurt either. Paolo