cvs commit: src/sys/arm/include machdep.h pmap.h sysarch.h src/sys/arm/arm cpufunc_asm.S genassym.c machdep.c pmap.c swtch.S src/sys/arm/xscale std.xscale src/sys/arm/xscale/i80321 std.i80321

Olivier Houchard cognet at FreeBSD.org
Sat Feb 26 18:59:02 GMT 2005


cognet      2005-02-26 18:59:01 UTC

  FreeBSD src repository

  Modified files:
    sys/arm/include      sysarch.h pmap.h machdep.h 
    sys/arm/arm          cpufunc_asm.S genassym.c machdep.c pmap.c 
                         swtch.S 
    sys/arm/xscale/i80321 std.i80321 
  Added files:
    sys/arm/xscale       std.xscale 
  Log:
  Instead of using sysarch() to store-retrieve the tp, add a magic address,
  ARM_TP_ADDRESS, where the tp will be stored. On CPUs that support it, a cache
  line will be allocated and locked for this address, so that it will never go
  to RAM. On CPUs that does not, a page is allocated for it (it will be a bit
  slower, and is wrong for SMP, but should be fine for UP).
  The tp is still stored in the mdthread struct, and at each context switch,
  ARM_TP_ADDRESS gets updated.
  
  Suggested by:   davidxu
  
  Revision  Changes    Path
  1.6       +23 -0     src/sys/arm/arm/cpufunc_asm.S
  1.5       +5 -0      src/sys/arm/arm/genassym.c
  1.14      +11 -2     src/sys/arm/arm/machdep.c
  1.24      +8 -1      src/sys/arm/arm/pmap.c
  1.12      +15 -1     src/sys/arm/arm/swtch.S
  1.2       +2 -0      src/sys/arm/include/machdep.h
  1.8       +1 -0      src/sys/arm/include/pmap.h
  1.4       +2 -0      src/sys/arm/include/sysarch.h
  1.3       +1 -0      src/sys/arm/xscale/i80321/std.i80321
  1.1       +2 -0      src/sys/arm/xscale/std.xscale (new)


More information about the cvs-all mailing list