null_vnops.c (c5c3ba6b43cac20dc9432eac15758d41cb2b8b1f) null_vnops.c (abd80ddb9474948fb291becc395d72b40927a32b)
1/*-
2 * SPDX-License-Identifier: BSD-3-Clause
3 *
4 * Copyright (c) 1992, 1993
5 * The Regents of the University of California. All rights reserved.
6 *
7 * This code is derived from software contributed to Berkeley by
8 * John Heidemann of the UCLA Ficus project.

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

391 error = VOP_LOOKUP(ldvp, &lvp, cnp);
392
393 /*
394 * VOP_LOOKUP() on lower vnode may unlock ldvp, which allows
395 * dvp to be reclaimed due to shared v_vnlock. Check for the
396 * doomed state and return error.
397 */
398 if ((error == 0 || error == EJUSTRETURN) &&
1/*-
2 * SPDX-License-Identifier: BSD-3-Clause
3 *
4 * Copyright (c) 1992, 1993
5 * The Regents of the University of California. All rights reserved.
6 *
7 * This code is derived from software contributed to Berkeley by
8 * John Heidemann of the UCLA Ficus project.

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

391 error = VOP_LOOKUP(ldvp, &lvp, cnp);
392
393 /*
394 * VOP_LOOKUP() on lower vnode may unlock ldvp, which allows
395 * dvp to be reclaimed due to shared v_vnlock. Check for the
396 * doomed state and return error.
397 */
398 if ((error == 0 || error == EJUSTRETURN) &&
399 (dvp->v_iflag & VI_DOOMED) != 0) {
399 VN_IS_DOOMED(dvp)) {
400 error = ENOENT;
401 if (lvp != NULL)
402 vput(lvp);
403
404 /*
405 * If vgone() did reclaimed dvp before curthread
406 * relocked ldvp, the locks of dvp and ldpv are no
407 * longer shared. In this case, relock of ldvp in

--- 538 unchanged lines hidden ---
400 error = ENOENT;
401 if (lvp != NULL)
402 vput(lvp);
403
404 /*
405 * If vgone() did reclaimed dvp before curthread
406 * relocked ldvp, the locks of dvp and ldpv are no
407 * longer shared. In this case, relock of ldvp in

--- 538 unchanged lines hidden ---