Date: Wed, 1 Feb 2006 00:30:05 +0000 (UTC) From: Jeff Roberson <jeff@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/kern vfs_subr.c Message-ID: <200602010030.k110U5Wm092889@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
jeff 2006-02-01 00:30:05 UTC
FreeBSD src repository
Modified files:
sys/kern vfs_subr.c
Log:
- Solve a race where we could lose a call to VOP_INACTIVE. If vget() waiting
on a lock held the last usecount ref on a vnode and the lock failed we
would not call INACTIVE. Solve this by only holding a holdcnt to prevent
the vnode from disappearing while we wait on vn_lock. Other callers
may now VOP_INACTIVE while we are waiting on the lock, however this race
is acceptable, while losing INACTIVE is not.
Discussed with: kan, pjd
Tested by: kkenn
Sponsored by: Isilon Systems, Inc.
MFC After: 1 week
Revision Changes Path
1.657 +30 -12 src/sys/kern/vfs_subr.c
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200602010030.k110U5Wm092889>
