Date: Wed, 18 Jul 2007 11:19:29 +0900 From: "YAMAMOTO, Taku" <taku@tackymt.homeip.net> To: freebsd-current@freebsd.org Subject: critical_exit(), td_owepreempt and SW_PREEMPT Message-ID: <20070718111929.22bf3eb3.taku@tackymt.homeip.net>
next in thread | raw e-mail | index | archive | help
[-- Attachment #1 --] Greetings, I had found that critical_exit() calls mi_switch() without SW_PREEMPT when td_owepreempt is set. Should the first argument at that line be SW_INVOL|SW_PREEMPT? -- YAMAMOTO, Taku <taku@tackymt.homeip.net> [-- Attachment #2 --] --- sys/kern/kern_switch.c.orig 2007-06-13 04:50:31.000000000 +0900 +++ sys/kern/kern_switch.c 2007-07-18 10:21:09.000000000 +0900 @@ -192,7 +192,7 @@ critical_exit(void) thread_lock(td); td->td_critnest--; SCHED_STAT_INC(switch_owepreempt); - mi_switch(SW_INVOL, NULL); + mi_switch(SW_INVOL|SW_PREEMPT, NULL); thread_unlock(td); } } else
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070718111929.22bf3eb3.taku>
