From 114f48f3c9c6317c44f0573a2e5dcf49e9ce60b9 Mon Sep 17 00:00:00 2001 From: David du Colombier <0intro@gmail.com> Date: Sun, 14 Nov 1993 00:00:00 +0000 Subject: [PATCH] Plan 9 from Bell Labs 1993-11-14 --- pc/trap.c | 34 +++++++++++++++++----------------- port/chan.c | 4 ++-- 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/pc/trap.c b/pc/trap.c index d8b385b4358c6fb25811172d1864135d1618e807..b614ea310ebf9148d66fa9c155c23ef42143ac27 100644 --- a/pc/trap.c +++ b/pc/trap.c @@ -118,26 +118,26 @@ trapinit(void) * set all interrupts to panics */ for(i = 0; i < 256; i++) - sethvec(i, intrbad, SEGTG, 0); + sethvec(i, intrbad, SEGIG, 0); /* * 80386 processor (and coprocessor) traps */ - sethvec(0, intr0, SEGTG, 0); - sethvec(1, intr1, SEGTG, 0); - sethvec(2, intr2, SEGTG, 0); - sethvec(4, intr4, SEGTG, 0); - sethvec(5, intr5, SEGTG, 0); - sethvec(6, intr6, SEGTG, 0); - sethvec(7, intr7, SEGTG, 0); - sethvec(8, intr8, SEGTG, 0); - sethvec(9, intr9, SEGTG, 0); - sethvec(10, intr10, SEGTG, 0); - sethvec(11, intr11, SEGTG, 0); - sethvec(12, intr12, SEGTG, 0); - sethvec(13, intr13, SEGTG, 0); + sethvec(0, intr0, SEGIG, 0); + sethvec(1, intr1, SEGIG, 0); + sethvec(2, intr2, SEGIG, 0); + sethvec(4, intr4, SEGIG, 0); + sethvec(5, intr5, SEGIG, 0); + sethvec(6, intr6, SEGIG, 0); + sethvec(7, intr7, SEGIG, 0); + sethvec(8, intr8, SEGIG, 0); + sethvec(9, intr9, SEGIG, 0); + sethvec(10, intr10, SEGIG, 0); + sethvec(11, intr11, SEGIG, 0); + sethvec(12, intr12, SEGIG, 0); + sethvec(13, intr13, SEGIG, 0); sethvec(14, intr14, SEGIG, 0); /* page fault, interrupts off */ - sethvec(15, intr15, SEGTG, 0); + sethvec(15, intr15, SEGIG, 0); sethvec(16, intr16, SEGIG, 0); /* math coprocessor, interrupts off */ /* @@ -163,9 +163,9 @@ trapinit(void) /* * system calls and break points */ - sethvec(Syscallvec, intr64, SEGTG, 3); + sethvec(Syscallvec, intr64, SEGIG, 3); setvec(Syscallvec, (void (*)(Ureg*))syscall); - sethvec(Bptvec, intr3, SEGTG, 3); + sethvec(Bptvec, intr3, SEGIG, 3); setvec(Bptvec, debugbpt); /* diff --git a/port/chan.c b/port/chan.c index 75043797b040e3f188d061f2cd2a7fbda9d8511e..b90bddd682a721d1cfefacb0dcfd383580d96d60 100644 --- a/port/chan.c +++ b/port/chan.c @@ -536,9 +536,9 @@ namec(char *name, int amode, int omode, ulong perm) elem[n] = '\0'; n = chartorune(&r, elem+1)+1; if(r == 'M') { - name = skipslash(name); - if(*name) + if(amode != Aopen || omode != ORDWR) error(Eperm); + name = skipslash(name); return mchan(elem+n); } t = devno(r, 1);