Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 29 Jun 2002 02:39:44 -0700 (PDT)
From:      Benno Rice <benno@FreeBSD.org>
To:        cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/sys/powerpc/include pcb.h src/sys/powerpc/powerpc swtch.s
Message-ID:  <200206290939.g5T9djul045968@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
benno       2002/06/29 02:39:44 PDT

  Modified files:
    sys/powerpc/include  pcb.h 
    sys/powerpc/powerpc  swtch.s 
  Log:
  To quote Peter:
  
  The case in cpu_switch() where there isn't a higher priority thread
  (choosethread() == curthread) uses r4 as the PCB context pointer. However, the
  use of r4 after the label L2 is incorrect, since it was probably trashed by
  the call to choosethread, and in any case was set up to curthread at the start
  of the routine.
  
  This condition will occur when an interrupt thread schedules a netisr, which
  is a lower priority thread.
  
  Another (probably unnecessary) difference is that I was paranoid about
  register trashing, so I decided to save r2 and r13 as well.
  
  Submitted by:   Peter Grehan <peterg@ptree32.com.au>
  
  Revision  Changes    Path
  1.5       +1 -1      src/sys/powerpc/include/pcb.h
  1.14      +15 -10    src/sys/powerpc/powerpc/swtch.s

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




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