Fixed TLS on i386
authorAndrew Waterman <waterman@ros-dev.(none)>
Tue, 30 Mar 2010 23:45:52 +0000 (16:45 -0700)
committerKevin Klues <klueska@cs.berkeley.edu>
Thu, 3 Nov 2011 00:35:39 +0000 (17:35 -0700)
commitf1144a7ea05a822f43d9b73b90a7dc3fe43b4470
tree4d1fa049b46b661432625ab70aaf976993826d24
parentbcb8f62331a684a03ab2767e1889bcb8c21d5a2e
Fixed TLS on i386

A static initialization variable was living in two places (ld.so
and crt0), causing double-initialization of the LDT when a hart
comes in, crashing the first core.

Had to reorganize files so they could be included by the vastly-
included tls.h file in glibc.
17 files changed:
kern/arch/i686/arch.h
kern/arch/i686/ros/arch.h [new file with mode: 0644]
kern/arch/i686/ros/bits/syscall.h [new file with mode: 0644]
kern/arch/i686/ros/syscall.h
kern/arch/sparc/arch.h
kern/arch/sparc/ros/arch.h [new file with mode: 0644]
kern/include/env.h
kern/include/ros/bits/syscall.h [new file with mode: 0644]
kern/include/ros/procdata.h
kern/include/ros/syscall.h
kern/src/syscall.c
tools/compilers/gcc-glibc/glibc-2.11.1-ros/sysdeps/ros/i386/dl-load.c [deleted file]
tools/compilers/gcc-glibc/glibc-2.11.1-ros/sysdeps/ros/i386/start.c [deleted file]
tools/compilers/gcc-glibc/glibc-2.11.1-ros/sysdeps/ros/i386/tls.c [deleted file]
tools/compilers/gcc-glibc/glibc-2.11.1-ros/sysdeps/ros/i386/tls.h
user/parlib/hart.c
user/parlib/pthread.c