Lines Matching refs:sm
304 struct smfree *sm; in segmap_create() local
367 sm = &smd->smd_free[i]; in segmap_create()
368 mutex_init(&sm->sm_freeq[0].smq_mtx, NULL, MUTEX_DEFAULT, NULL); in segmap_create()
369 mutex_init(&sm->sm_freeq[1].smq_mtx, NULL, MUTEX_DEFAULT, NULL); in segmap_create()
370 sm->sm_allocq = &sm->sm_freeq[0]; in segmap_create()
371 sm->sm_releq = &sm->sm_freeq[1]; in segmap_create()
421 sm = SMP2SMF(smp); in segmap_create()
422 releq = sm->sm_releq; in segmap_create()
929 struct smfree *sm; in segmap_smapadd() local
940 sm = &smd_free[smp->sm_free_ndx]; in segmap_smapadd()
948 releq = sm->sm_releq; in segmap_smapadd()
949 if (releq == &sm->sm_freeq[0]) in segmap_smapadd()
965 want = sm->sm_want; in segmap_smapadd()
973 mutex_enter(&sm->sm_freeq[0].smq_mtx); in segmap_smapadd()
974 if (sm->sm_want) in segmap_smapadd()
975 cv_signal(&sm->sm_free_cv); in segmap_smapadd()
976 mutex_exit(&sm->sm_freeq[0].smq_mtx); in segmap_smapadd()
1187 struct smfree *sm; in get_free_smp() local
1196 sm = &smd_free[free_ndx]; in get_free_smp()
1199 allocq = sm->sm_allocq; in get_free_smp()
1209 if (sm->sm_allocq != allocq) { in get_free_smp()
1214 releq = sm->sm_releq; in get_free_smp()
1243 sm = &smd_free[free_ndx]; in get_free_smp()
1251 sm->sm_want++; in get_free_smp()
1252 mutex_exit(&sm->sm_freeq[1].smq_mtx); in get_free_smp()
1253 cv_wait(&sm->sm_free_cv, in get_free_smp()
1254 &sm->sm_freeq[0].smq_mtx); in get_free_smp()
1255 sm->sm_want--; in get_free_smp()
1256 mutex_exit(&sm->sm_freeq[0].smq_mtx); in get_free_smp()
1257 sm = &smd_free[free_ndx]; in get_free_smp()
1264 sm->sm_allocq = releq; in get_free_smp()
1265 sm->sm_releq = allocq; in get_free_smp()
1615 struct smfree *sm; in segmap_getmapflt() local
1697 sm = &smd_free[smp->sm_free_ndx]; in segmap_getmapflt()
1700 freeq = &sm->sm_freeq[0]; in segmap_getmapflt()
1702 freeq = &sm->sm_freeq[1]; in segmap_getmapflt()