svn commit: r241734 - head/sys/sparc64/sparc64
Marius Strobl
marius at FreeBSD.org
Fri Oct 19 13:32:38 UTC 2012
Author: marius
Date: Fri Oct 19 13:32:37 2012
New Revision: 241734
URL: http://svn.freebsd.org/changeset/base/241734
Log:
Let SCHED_ULE give affinity to the CPU the tick interrupt triggered on
when running tick_process(), similarly to what the x86 equivalents of
this function do, however employing the less racy sequence also used in
intr_event_handle().
MFC after: 3 days
Modified:
head/sys/sparc64/sparc64/tick.c
Modified: head/sys/sparc64/sparc64/tick.c
==============================================================================
--- head/sys/sparc64/sparc64/tick.c Fri Oct 19 13:26:40 2012 (r241733)
+++ head/sys/sparc64/sparc64/tick.c Fri Oct 19 13:32:37 2012 (r241734)
@@ -245,14 +245,16 @@ tick_process(struct trapframe *tf)
struct trapframe *oldframe;
struct thread *td;
+ td = curthread;
+ td->td_intr_nesting_level++;
critical_enter();
if (tick_et.et_active) {
- td = curthread;
oldframe = td->td_intr_frame;
td->td_intr_frame = tf;
tick_et.et_event_cb(&tick_et, tick_et.et_arg);
td->td_intr_frame = oldframe;
}
+ td->td_intr_nesting_level--;
critical_exit();
}
More information about the svn-src-all
mailing list