Roman Divacky wrote:
On Sat, May 24, 2008 at 02:51:30PM +0000, Ulf Lilleengen wrote:
lulf        2008-05-24 14:51:30 UTC

  FreeBSD src repository

  Modified files:
sys/fs/fdescfs fdesc.h fdesc_vfsops.c fdesc_vnops.c Log:
  - Add locking to all filesystem operations in fdescfs and flag it as MPSAFE.
  - Use proper synhronization primitives to protect the internal fdesc node 
cache
    used in fdescfs.
  - Properly initialize and uninitalize hash.
  - Remove unused functions.
Since fdescfs might recurse on itself, adding proper locking to it needed some
  tricky workarounds in some parts to make it work. For instance, a descriptor 
in
  fdescfs could refer to an open descriptor to itself, thus forcing the thread 
to
  recurse on vnode locks. Because of this, other race conditions also had to be
  fixed.
Tested by: pho
  Reviewed by:    kib (mentor)
  Approved by:    kib (mentor)

+ LIST_FOREACH(fd2, fc, fd_hash) { + if (fd == fd2) { + LIST_REMOVE(fd, fd_hash); + break; + } + }
shouldn't you use LIST_FOREACH_SAFE here?

Only of you continue going through the list.

harti

_______________________________________________
cvs-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/cvs-all
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to