Lines Matching refs:ssd

81 	struct ssd ssd;
138 if (copyin((caddr_t)arg1, &ssd, sizeof (ssd)) < 0) {
143 error = setdscr(&ssd);
247 usd_to_ssd(user_desc_t *usd, struct ssd *ssd, selector_t sel)
249 ssd->bo = USEGD_GETBASE(usd);
250 ssd->ls = USEGD_GETLIMIT(usd);
251 ssd->sel = sel;
256 ssd->acc1 = usd->usd_type;
257 ssd->acc1 |= usd->usd_dpl << 5;
258 ssd->acc1 |= usd->usd_p << (5 + 2);
263 ssd->acc2 = usd->usd_avl;
266 ssd->acc2 |= usd->usd_long << 1;
268 ssd->acc2 |= usd->usd_reserved << 1;
271 ssd->acc2 |= usd->usd_def32 << (1 + 1);
272 ssd->acc2 |= usd->usd_gran << (1 + 1 + 1);
276 ssd_to_usd(struct ssd *ssd, user_desc_t *usd)
281 USEGD_SETBASE(usd, ssd->bo);
282 USEGD_SETLIMIT(usd, ssd->ls);
287 usd->usd_type = ssd->acc1;
288 usd->usd_dpl = ssd->acc1 >> 5;
289 usd->usd_p = ssd->acc1 >> (5 + 2);
307 usd->usd_avl = ssd->acc2;
308 usd->usd_def32 = ssd->acc2 >> (1 + 1);
309 usd->usd_gran = ssd->acc2 >> (1 + 1 + 1);
316 ssd_to_sgd(struct ssd *ssd, gate_desc_t *sgd)
321 sgd->sgd_looffset = ssd->bo;
322 sgd->sgd_hioffset = ssd->bo >> 16;
324 sgd->sgd_selector = ssd->ls;
329 sgd->sgd_type = ssd->acc1;
330 sgd->sgd_dpl = ssd->acc1 >> 5;
331 sgd->sgd_p = ssd->acc1 >> 7;
481 setdscr(struct ssd *ssd)
492 if (!SELISLDT(ssd->sel) || !SELISUPL(ssd->sel))
498 seli = SELTOIDX(ssd->sel);
575 if (SI86SSD_PRES(ssd) == 0) {
597 if (ssd->sel == rp->r_cs || ssd->sel == rp->r_ss) {
604 if (ssd->sel == pcb->pcb_ds ||
605 ssd->sel == pcb->pcb_es ||
606 ssd->sel == pcb->pcb_fs ||
607 ssd->sel == pcb->pcb_gs) {
614 if (ssd->sel == rp->r_ds ||
615 ssd->sel == rp->r_es ||
616 ssd->sel == rp->r_fs ||
617 ssd->sel == rp->r_gs) {
635 if (ssd->acc1 == 0) {
645 if (SI86SSD_DPL(ssd) != SEL_UPL) {
655 if (SI86SSD_ISUSEG(ssd) && ((SI86SSD_TYPE(ssd) >> 3) & 1) == 1 &&
656 SI86SSD_ISLONG(ssd)) {
665 if (SI86SSD_ISUSEG(ssd)) {
666 ssd_to_usd(ssd, &ndesc);
684 if (SI86SSD_TYPE(ssd) == SDT_SYSCGT && SELISLDT(ssd->ls)) {
687 ssd_to_sgd(ssd, (gate_desc_t *)&ndesc);