From 9c118ce1ba5afd7cc9920e0e79cd2b377618541a Mon Sep 17 00:00:00 2001 From: David du Colombier <0intro@gmail.com> Date: Sun, 28 Aug 1994 00:00:00 +0000 Subject: [PATCH] Plan 9 from Bell Labs 1994-08-28 --- carrera/fns.h | 1 + port/devmnt.c | 6 ++++-- port/error.h | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/carrera/fns.h b/carrera/fns.h index fbdf3fd26c96de04d4f8742b847849eb2f1781fd..4123fbaeb3adc7b330b40664333f5af890e51948 100644 --- a/carrera/fns.h +++ b/carrera/fns.h @@ -128,6 +128,7 @@ void ifjab(void); ulong ifaddr(void*); void filiput(Block*); void fiberint(int); +void freset(void*); void audiosbintr(void); void audiodmaintr(void); ulong fwblock(void*, void*, ulong); diff --git a/port/devmnt.c b/port/devmnt.c index 07cc5454c8330363025095470498e84c3f353ff1..5e5c584d5aea0f82788072e02e90412f1ada1bda 100644 --- a/port/devmnt.c +++ b/port/devmnt.c @@ -758,7 +758,7 @@ mountmux(Mnt *m, Mntrpc *r) int mntflush(Mnt *m, Mntrpc *r) { - int n; + int n, l; Fcall flush; lock(m); @@ -779,7 +779,9 @@ mntflush(Mnt *m, Mntrpc *r) mntqrm(m, r); return 0; } - (*devtab[m->c->type].write)(m->c, r->flush, n, 0); + l = (*devtab[m->c->type].write)(m->c, r->flush, n, 0); + if(l != n) + error(Ehungup); poperror(); return 1; } diff --git a/port/error.h b/port/error.h index 789686bc1da6546f4961c11f357865126455cb42..fc1219f98cca0e00b57dd76eec8cd489acd7c205 100644 --- a/port/error.h +++ b/port/error.h @@ -25,7 +25,7 @@ extern char Enoproto[]; /* network protocol not supported */ extern char Enoport[]; /* network port not available */ extern char Enoifc[]; /* bad interface or no free interface slots */ extern char Enolisten[]; /* not announced */ -extern char Ehungup[]; /* write to hungup stream */ +extern char Ehungup[]; /* write to hungup channel */ extern char Ebadctl[]; /* bad process or stream control request */ extern char Enodev[]; /* no free devices */ extern char Enoenv[]; /* no free environment resources */