From: Thomas Veerman Date: Mon, 23 Apr 2012 13:33:43 +0000 (+0000) Subject: VFS: release what can be released X-Git-Tag: v3.2.1~565 X-Git-Url: http://zhaoyanbai.com/repos/html/index.html?a=commitdiff_plain;h=b6ff38065f6e27d5979d70ef5dd43ebd92931afe;p=minix.git VFS: release what can be released Only attempt to release blocked processes that are blocked. There is no use in trying to find more blocked processes than we know that are blocked (on a pipe). --- diff --git a/servers/vfs/filedes.c b/servers/vfs/filedes.c index 59a66e2fc..6e1ce8c30 100644 --- a/servers/vfs/filedes.c +++ b/servers/vfs/filedes.c @@ -568,7 +568,7 @@ struct filp *f; /* If the inode being closed is a pipe, release everyone hanging on it. */ if (S_ISFIFO(vp->v_mode)) { rw = (f->filp_mode & R_BIT ? WRITE : READ); - release(vp, rw, NR_PROCS); + release(vp, rw, susp_count); } /* If a write has been done, the inode is already marked as DIRTY. */