From owner-p4-projects@FreeBSD.ORG Thu Jun 28 11:35:52 2007 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B8C3B16A468; Thu, 28 Jun 2007 11:35:52 +0000 (UTC) X-Original-To: perforce@FreeBSD.org Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 88C1D16A400 for ; Thu, 28 Jun 2007 11:35:52 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [69.147.83.41]) by mx1.freebsd.org (Postfix) with ESMTP id 798D713C48C for ; Thu, 28 Jun 2007 11:35:52 +0000 (UTC) (envelope-from rdivacky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.8/8.13.8) with ESMTP id l5SBZqqO042262 for ; Thu, 28 Jun 2007 11:35:52 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.8/8.13.8/Submit) id l5SBZqgt042259 for perforce@freebsd.org; Thu, 28 Jun 2007 11:35:52 GMT (envelope-from rdivacky@FreeBSD.org) Date: Thu, 28 Jun 2007 11:35:52 GMT Message-Id: <200706281135.l5SBZqgt042259@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky To: Perforce Change Reviews Cc: Subject: PERFORCE change 122477 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 28 Jun 2007 11:35:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=122477 Change 122477 by rdivacky@rdivacky_witten on 2007/06/28 11:35:09 Various fixes suggested by rwatson. Affected files ... .. //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_syscalls.c#38 edit Differences ... ==== //depot/projects/soc2007/rdivacky/linux_at/sys/kern/vfs_syscalls.c#38 (text+ko) ==== @@ -1876,7 +1876,7 @@ int error; struct nameidata nd; int vfslocked; - + restart: if (dvp) vrele(dvp); @@ -2148,12 +2148,12 @@ kern_accessat(struct thread *td, int fd, const char *path, enum uio_seg pathseg, int flags) { - int error; struct nameidata nd; struct vnode *dvp; struct ucred *cred, *tmpcred; struct vnode *vp; int vfslocked; + int error; error = kern_get_at(td, fd, &dvp); if (error && !kern_absolute_path(path, pathseg)) @@ -2400,14 +2400,10 @@ NDFREE(&nd, NDF_ONLY_PNBUF); vput(nd.ni_vp); VFS_UNLOCK_GIANT(vfslocked); - /* dont bother with the path as this is hopefully going away soon */ if (mtx_owned(&Giant)) - printf("stat(%d):\n", vfslocked); - if (error) - goto out; - *sbp = sb; - - error = 0; + printf("stat(%d): %s\n", vfslocked, path); + if (error == 0) + *sbp = sb; out: if (dvp) vrele(dvp); @@ -2461,8 +2457,7 @@ return (error); NDINIT_AT(&nd, LOOKUP, ((error) ? ATBADF : 0) | NOFOLLOW | LOCKLEAF | - LOCKSHARED | AUDITVNODE1 | MPSAFE, pathseg, path, td, dvp); - + LOCKSHARED | MPSAFE | AUDITVNODE1, pathseg, path, td, dvp); if ((error = namei(&nd)) != 0) goto out; vfslocked = NDHASGIANT(&nd); @@ -2471,10 +2466,8 @@ NDFREE(&nd, NDF_ONLY_PNBUF); vput(vp); VFS_UNLOCK_GIANT(vfslocked); - if (error) - goto out; - *sbp = sb; - error = 0; + if (error == 0) + *sbp = sb; out: if (dvp) vrele(dvp); @@ -3371,8 +3364,8 @@ if (error && !kern_absolute_path(path, pathseg)) return (error); - NDINIT_AT(&nd, LOOKUP, ((error) ? ATBADF : 0) | FOLLOW | AUDITVNODE1 | - MPSAFE, pathseg, path, td, dvp); + NDINIT_AT(&nd, LOOKUP, ((error) ? ATBADF : 0) | FOLLOW | MPSAFE | + AUDITVNODE1, pathseg, path, td, dvp); if ((error = getutimes(tptr, tptrseg, ts)) != 0) goto out;