[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [RFC v4 2/2] x86/xen: allow privcmd hypercalls to be preempted
On Thu, 22 Jan 2015 17:40:27 -0800 Andy Lutomirski <luto@xxxxxxxxxxxxxx> wrote: > > > > +/* > > + * CONFIG_PREEMPT=n kernels can end up triggering the softlock > > + * TASK_UNINTERRUPTIBLE hanger check (default 120 seconds) > > + * when certain multicalls are used [0] on large systems, in > > + * that case we need a way to voluntarily preempt. This is > > + * only an issue on CONFIG_PREEMPT=n kernels. > > + * > > + * [0] https://bugzilla.novell.com/show_bug.cgi?id=861093 > > + */ > > +void xen_end_upcall(struct pt_regs *regs) > > +{ > > + if (xen_is_preemptible_hypercall(regs)) { > > + int cpuid = smp_processor_id(); > > + if (_cond_resched()) > > + trace_xen_hypercall_preemption(cpuid); > > If you want to speed this up a bit, I think you could move the > smp_processor_id() into the TP_fast_assign. But don't tracepoints > report the cpu number even without any action? Yes, but if you scheduled here, the tracepoint could happen on a different CPU. Thus, cpuid will not equal smp_processor_id(). -- Steve _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |