+
+
+
+void desc_intr(struct desc *desc, int type, uint16_t sel, uint32_t offs, int dpl)
+{
+ uint32_t gate_type[] = { GATE_TYPE_INTR, GATE_TYPE_TRAP };
+
+ desc->d[0] = (offs & 0xffff) | ((uint32_t)sel << 16);
+ desc->d[1] = (offs & 0xffff0000) | GATE_PRESENT | (dpl << 13) | gate_type[type];
+}