]> Zhao Yanbai Git Server - minix.git/commitdiff
2 extra error conditions on disappearing processes during/before sendrec()
authorBen Gras <ben@minix3.org>
Thu, 20 Oct 2005 20:46:04 +0000 (20:46 +0000)
committerBen Gras <ben@minix3.org>
Thu, 20 Oct 2005 20:46:04 +0000 (20:46 +0000)
servers/fs/device.c

index 2521b6eac5275ff20a637fd48b97a5b57b425973..8cbcaff3a4ef2233df0900558413b6b3f2237678 100644 (file)
@@ -87,6 +87,8 @@ PUBLIC void dev_status(message *m)
                if ((r=sendrec(m->m_source, &st)) != OK) {
                        printf("DEV_STATUS failed to %d: %d\n", m->m_source, r);
                        if (r == EDEADSRCDST) return;
+                       if (r == EDSTDIED) return;
+                       if (r == ESRCDIED) return;
                        panic(__FILE__,"couldn't sendrec for DEV_STATUS", r);
                }
 
@@ -360,6 +362,8 @@ message *mess_ptr;          /* pointer to message for task */
   for (;;) {
        if (r != OK) {
                if (r == EDEADSRCDST) return;   /* give up */
+               if (r == EDSTDIED) return;
+               if (r == ESRCDIED) return;
                else panic(__FILE__,"call_task: can't send/receive", r);
        }