Deleted Added
full compact
msdosfs_lookup.c (144298) msdosfs_lookup.c (145006)
1/* $FreeBSD: head/sys/fs/msdosfs/msdosfs_lookup.c 144298 2005-03-29 13:04:00Z jeff $ */
1/* $FreeBSD: head/sys/fs/msdosfs/msdosfs_lookup.c 145006 2005-04-13 10:59:09Z jeff $ */
2/* $NetBSD: msdosfs_lookup.c,v 1.37 1997/11/17 15:36:54 ws Exp $ */
3
4/*-
5 * Copyright (C) 1994, 1995, 1997 Wolfgang Solfrank.
6 * Copyright (C) 1994, 1995, 1997 TooLs GmbH.
7 * All rights reserved.
8 * Original code by Paul Popelka (paulp@uts.amdahl.com) (see below).
9 *

--- 501 unchanged lines hidden (view full) ---

511 * Note also that this simple deadlock detection scheme will not
512 * work if the filesystem has any hard links other than ".."
513 * that point backwards in the directory structure.
514 */
515 pdp = vdp;
516 if (flags & ISDOTDOT) {
517 VOP_UNLOCK(pdp, 0, td);
518 error = deget(pmp, cluster, blkoff, &tdp);
2/* $NetBSD: msdosfs_lookup.c,v 1.37 1997/11/17 15:36:54 ws Exp $ */
3
4/*-
5 * Copyright (C) 1994, 1995, 1997 Wolfgang Solfrank.
6 * Copyright (C) 1994, 1995, 1997 TooLs GmbH.
7 * All rights reserved.
8 * Original code by Paul Popelka (paulp@uts.amdahl.com) (see below).
9 *

--- 501 unchanged lines hidden (view full) ---

511 * Note also that this simple deadlock detection scheme will not
512 * work if the filesystem has any hard links other than ".."
513 * that point backwards in the directory structure.
514 */
515 pdp = vdp;
516 if (flags & ISDOTDOT) {
517 VOP_UNLOCK(pdp, 0, td);
518 error = deget(pmp, cluster, blkoff, &tdp);
519 if (error) {
520 vn_lock(pdp, LK_EXCLUSIVE | LK_RETRY, td);
519 vn_lock(pdp, LK_EXCLUSIVE | LK_RETRY, td);
520 if (error)
521 return (error);
521 return (error);
522 }
523 *vpp = DETOV(tdp);
524 } else if (dp->de_StartCluster == scn && isadir) {
525 VREF(vdp); /* we want ourself, ie "." */
526 *vpp = vdp;
527 } else {
528 if ((error = deget(pmp, cluster, blkoff, &tdp)) != 0)
529 return (error);
530 *vpp = DETOV(tdp);

--- 547 unchanged lines hidden ---
522 *vpp = DETOV(tdp);
523 } else if (dp->de_StartCluster == scn && isadir) {
524 VREF(vdp); /* we want ourself, ie "." */
525 *vpp = vdp;
526 } else {
527 if ((error = deget(pmp, cluster, blkoff, &tdp)) != 0)
528 return (error);
529 *vpp = DETOV(tdp);

--- 547 unchanged lines hidden ---