cvs commit: src/sys/ia64/ia64 machdep.c

From: Marcel Moolenaar <marcel_at_FreeBSD.org>
Date: Sat, 20 Sep 2003 20:34:59 -0000
marcel      2003/09/20 13:34:58 PDT

  FreeBSD src repository

  Modified files:
    sys/ia64/ia64        machdep.c 
  Log:
  Fix the last remaining problem encountered by KSE: apparently it is
  not guaranteed that the RSE writes the NaT collection immediately,
  sort of atomically, to the backing store when it writes the register
  immediately prior to the NaT collection point. This means that we
  cannot assume that the low 9 bits of the backingstore pointer do not
  point to the NaT collection. This is rather a surprise and I don't
  know at this time if it's a bug in the Merced or that it's actually
  a valid condition of the architecture. A quick scan over the sources
  does not indicate that we depend on the false assumption elsewhere,
  but it's something to keep in mind.
  
  The fix is to write the saved contents of the ar.rnat register to
  the backingstore prior to entering the loop that copies the dirty
  registers from the kernel stack to the user stack.
  
  Revision  Changes    Path
  1.156     +5 -1      src/sys/ia64/ia64/machdep.c
Received on Sat Sep 20 2003 - 13:34:59 UTC