Print this page
patch delete-t_stime
patch remove-swapinout-class-ops

*** 179,190 **** static void fx_forkret(kthread_t *, kthread_t *); static void fx_parmsget(kthread_t *, void *); static int fx_parmsset(kthread_t *, void *, id_t, cred_t *); static void fx_stop(kthread_t *, int, int); static void fx_exit(kthread_t *); - static pri_t fx_swapin(kthread_t *, int); - static pri_t fx_swapout(kthread_t *, int); static void fx_trapret(kthread_t *); static void fx_preempt(kthread_t *); static void fx_setrun(kthread_t *); static void fx_sleep(kthread_t *); static void fx_tick(kthread_t *); --- 179,188 ----
*** 224,235 **** fx_parmsset, fx_stop, fx_exit, fx_nullsys, /* active */ fx_nullsys, /* inactive */ - fx_swapin, - fx_swapout, fx_trapret, fx_preempt, fx_setrun, fx_sleep, fx_tick, --- 222,231 ----
*** 1222,1274 **** (void) CPUCAPS_CHARGE(t, &fxpp->fx_caps, CPUCAPS_CHARGE_ENFORCE); if (FX_HAS_CB(fxpp)) { FX_CB_SLEEP(FX_CALLB(fxpp), fxpp->fx_cookie); } - t->t_stime = ddi_get_lbolt(); /* time stamp for the swapper */ - } - - - /* - * Return Values: - * - * -1 if the thread is loaded or is not eligible to be swapped in. - * - * FX and RT threads are designed so that they don't swapout; however, - * it is possible that while the thread is swapped out and in another class, it - * can be changed to FX or RT. Since these threads should be swapped in - * as soon as they're runnable, rt_swapin returns SHRT_MAX, and fx_swapin - * returns SHRT_MAX - 1, so that it gives deference to any swapped out - * RT threads. - */ - /* ARGSUSED */ - static pri_t - fx_swapin(kthread_t *t, int flags) - { - pri_t tpri = -1; - - ASSERT(THREAD_LOCK_HELD(t)); - - if (t->t_state == TS_RUN && (t->t_schedflag & TS_LOAD) == 0) { - tpri = (pri_t)SHRT_MAX - 1; - } - - return (tpri); - } - - /* - * Return Values - * -1 if the thread isn't loaded or is not eligible to be swapped out. - */ - /* ARGSUSED */ - static pri_t - fx_swapout(kthread_t *t, int flags) - { - ASSERT(THREAD_LOCK_HELD(t)); - - return (-1); - } /* ARGSUSED */ static void fx_stop(kthread_t *t, int why, int what) --- 1218,1227 ----
*** 1394,1404 **** { fxproc_t *fxpp = (fxproc_t *)(t->t_cldata); ASSERT(THREAD_LOCK_HELD(t)); - t->t_stime = ddi_get_lbolt(); /* time stamp for the swapper */ if (FX_HAS_CB(fxpp)) { clock_t new_quantum = (clock_t)fxpp->fx_pquantum; pri_t newpri = fxpp->fx_pri; FX_CB_WAKEUP(FX_CALLB(fxpp), fxpp->fx_cookie, &new_quantum, &newpri); --- 1347,1356 ----