Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 1 Aug 2003 17:49:36 -0700 (PDT)
From:      Marcel Moolenaar <marcel@FreeBSD.org>
To:        src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/lib/libc/ia64/sys Makefile.inc getcontext.S swapcontext.S
Message-ID:  <200308020049.h720nbW0041566@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
marcel      2003/08/01 17:49:36 PDT

  FreeBSD src repository

  Modified files:
    lib/libc/ia64/sys    Makefile.inc 
  Added files:
    lib/libc/ia64/sys    getcontext.S swapcontext.S 
  Log:
  Override the default stubs for getcontext(2) and swapcontext(2) so
  that we can flush the register stack prior to entering the kernel.
  This avoids having dirty registers and saves us from having to
  manually write them to the backing store from within the kernel.
  In that respect, flushing the RSE is both functionally required as
  well as performance optimal.
  
  On average we had 18 dirty registers when getcontext(2) was called
  from libthr. Since libthr does not switch back to a context created
  by getcontext(2), not having dealt with the dirty registers was
  harmless.
  
  Revision  Changes    Path
  1.7       +2 -2      src/lib/libc/ia64/sys/Makefile.inc
  1.1       +39 -0     src/lib/libc/ia64/sys/getcontext.S (new)
  1.1       +39 -0     src/lib/libc/ia64/sys/swapcontext.S (new)



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