From: Ben Gras Date: Tue, 17 Feb 2009 09:50:02 +0000 (+0000) Subject: Checking wrong inode pointer for refcount in mount (!) X-Git-Tag: v3.1.4~106 X-Git-Url: http://zhaoyanbai.com/repos/%22https:/www.google.com/jsapi/static//%22%22?a=commitdiff_plain;h=570b9cd753faa8c487d16f7dfb4374b89418da07;p=minix.git Checking wrong inode pointer for refcount in mount (!) --- diff --git a/servers/vfs/mount.c b/servers/vfs/mount.c index 518253a35..bf0777694 100644 --- a/servers/vfs/mount.c +++ b/servers/vfs/mount.c @@ -102,7 +102,7 @@ PRIVATE int mount_fs(endpoint_t fs_e) struct dmap *dp; dev_t dev; message m; - struct vnode *vp, *root_node, *mounted_on, *bspec; + struct vnode *root_node, *mounted_on, *bspec; struct vmnt *vmp; char *label; struct node_details res; @@ -194,9 +194,9 @@ PRIVATE int mount_fs(endpoint_t fs_e) r = lookup_vp(0 /*flags*/, 0 /*!use_realuid*/, &mounted_on); if (r != OK) return r; - if (vp->v_ref_count != 1) + if (mounted_on->v_ref_count != 1) { - put_vnode(vp); + put_vnode(mounted_on); printf("vfs:mount_fs: mount point is busy\n"); return EBUSY; }