cvs commit: src/sys/kern vfs_bio.c

Matthew Dillon dillon at crater.dragonflybsd.org
Mon Nov 14 11:18:09 PST 2005


dillon      2005/11/14 11:14:05 PST

DragonFly src repository

  Modified files:
    sys/kern             vfs_bio.c 
  Log:
  Temporarily check for and correct a race in getnewbuf() that exists due
  to the fact that lockmgr locks use tokens for their interlock.  The use
  of a token can cause the atomicy of the big giant lock to be temporarily
  lost and wind up breaking the assumed atomicy of higher level operations that
  believed themselves to be safe making lockmgr calls with the LK_NOWAIT flag.
  
  The general problem will soon be fixed by changing the lockmgr interlock
  from a token to one of Jeffrey Hsu's spin locks.  Fortunately there are
  only a few places left in DragonFly where LK_INTERLOCK is used.
  
  Revision  Changes    Path
  1.52      +10 -2     src/sys/kern/vfs_bio.c


http://www.dragonflybsd.org/cvsweb/src/sys/kern/vfs_bio.c.diff?r1=1.51&r2=1.52&f=u





More information about the Commits mailing list