cvs commit: src/sys/nfsclient nfs_bio.c nfs_subs.c nfsnode.h

Attilio Rao attilio at
Sat Feb 9 12:13:20 PST 2008

attilio     2008-02-09 20:13:19 UTC

  FreeBSD src repository

  Modified files:
    sys/nfsclient        nfs_bio.c nfs_subs.c nfsnode.h 
  namei() can call underlying nfs_readlink() passing a struct uio pointer
  owned by a NULL owner. This will lead consequent VOP_ISLOCKED() present
  into nfs_upgrade_vnlock() to panic as it only acquire curthread now.
  Fix nfs_upgrade_vnlock() and nfs_downgrade_vnlock() in order to not use
  more the struct thread pointer passed as argument (as it is really nomore
  required there as vn_lock() and VOP_UNLOCK doesn't get the lock more).
  Using curthread, in place, doesn't get ambiguity as LK_EXCLOTHER should
  be handled as a "not locked" request by both functions.
  Reported by: kris
  Tested by: kris
  Reviewed by: ups
  Revision  Changes    Path
  1.166     +4 -4      src/sys/nfsclient/nfs_bio.c
  1.151     +3 -3      src/sys/nfsclient/nfs_subs.c
  1.61      +2 -2      src/sys/nfsclient/nfsnode.h

More information about the cvs-src mailing list