Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 21 Feb 2004 13:57:26 -0800 (PST)
From:      Poul-Henning Kamp <phk@FreeBSD.org>
To:        src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/sys/fs/specfs spec_vnops.c src/sys/kern kern_conf.c vfs_bio.c vfs_subr.c src/sys/sys conf.h
Message-ID:  <200402212157.i1LLvQWp020145@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
phk         2004/02/21 13:57:26 PST

  FreeBSD src repository

  Modified files:
    sys/fs/specfs        spec_vnops.c 
    sys/kern             kern_conf.c vfs_bio.c vfs_subr.c 
    sys/sys              conf.h 
  Log:
  Device megapatch 6/6:
  
  This is what we came here for:  Hang dev_t's from their cdevsw,
  refcount cdevsw and dev_t and generally keep track of things a lot
  better than we used to:
  
  Hold a cdevsw reference around all entrances into the device driver,
  this will be necessary to safely determine when we can unload driver
  code.
  
  Hold a dev_t reference while the device is open.
  
  KASSERT that we do not enter the driver on a non-referenced dev_t.
  
  Remove old D_NAG code, anonymous dev_t's are not a problem now.
  
  When destroy_dev() is called on a referenced dev_t, move it to
  dead_cdevsw's list.  When the refcount drops, free it.
  
  Check that cdevsw->d_version is correct.  If not, set all methods
  to the dead_*() methods to prevent entrance into driver.  Print
  warning on console to this effect.  The device driver may still
  explode if it is also incompatible with newbus, but in that case
  we probably didn't get this far in the first place.
  
  Revision  Changes    Path
  1.216     +30 -9     src/sys/fs/specfs/spec_vnops.c
  1.146     +152 -31   src/sys/kern/kern_conf.c
  1.428     +7 -0      src/sys/kern/vfs_bio.c
  1.481     +4 -2      src/sys/kern/vfs_subr.c
  1.182     +33 -18    src/sys/sys/conf.h



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200402212157.i1LLvQWp020145>