cvs commit: src/sys/kern kern_linker.c

Peter Wemm peter at FreeBSD.org
Mon May 17 14:24:40 PDT 2004


peter       2004/05/17 14:24:40 PDT

  FreeBSD src repository

  Modified files:
    sys/kern             kern_linker.c 
  Log:
  Since we go to the trouble of compiling the kobj ops table for each class,
  and cannot handle it going away, add an explicit reference to the kobj
  class inside each linker class.  Without this, a class with no modules
  loaded will sit with an idle refcount of 0.  Loading and unloading
  a module with it causes a 0->1->0 transition which frees the ops table
  and causes subsequent loads using that class to explode.  Normally, the
  "kernel" module will remain forever loaded and prevent this happening, but
  if you have more than one linker class active, only one owns the "kernel".
  
  This finishes making modules work for kldload(8) on amd64.
  
  Revision  Changes    Path
  1.111     +1 -0      src/sys/kern/kern_linker.c


More information about the cvs-all mailing list