cvs commit: src/sys/kern kern_exit.c

Bruce Evans bde at FreeBSD.org
Mon Jun 21 07:49:51 PDT 2004


bde         2004-06-21 14:49:50 UTC

  FreeBSD src repository

  Modified files:
    sys/kern             kern_exit.c 
  Log:
  (1) Removed the bogus condition "p->p_pid != 1" on calling sched_exit()
      from exit1().  sched_exit() must be called unconditionally from exit1().
      It was called almost unconditionally because the only exits on system
      shutdown if at all.
  
  (2) Removed the comment that presumed to know what sched_exit() does.
      sched_exit() does different things for the ULE case.  The call became
      essential when it started doing load average stuff, but its caller
      should not know that.
  
  (3) Didn't fix bugs caused by bitrot in the condition.  The condition was
      last correct in rev.1.208 when it was in wait1().  There p was spelled
      curthread->td_proc and was for the waiting parent; now p is for the
      exiting child.  The condition was to avoid lowering init's priority.
      It should be in sched_exit() itself.  Lowering of priorities is broken
      in other ways in at least the 4BSD scheduler, and doing it for init
      causes less noticeable problems than doing it for for shells.
  
  Noticed by:     julian (1)
  
  Revision  Changes    Path
  1.238     +1 -7      src/sys/kern/kern_exit.c


More information about the cvs-src mailing list