Subversion Repositories HelenOS

Rev

Go to most recent revision | Hide changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff Changes
1113 6705 d 7 h palkovsky /uspace/trunk/ Added symbolic links 'libarch','libadt','libipc' into libc/include,
so that it can be easily used from anywhere.
Renamed thread_main to __thread_main.
Allowed MIPS to compile with -O0.
Added non-preemptible threads support (not yet secured by futexes).
Added simple way to hold Thread Local Storage. Support for compiler
will be added later.
This update breaks IA64 uspace.

There is some forgotten spinlock_lock() in futexes, amd64 gets locked
in the secod uspace thread probably with preemption disabled.
 
/uspace/trunk/libc/arch/amd64/include/atomic.h
/uspace/trunk/libc/arch/amd64/include/context_offset.h
/uspace/trunk/libc/arch/amd64/include/psthread.h
/uspace/trunk/libc/arch/amd64/include/thread.h
/uspace/trunk/libc/arch/amd64/src/psthread.S
/uspace/trunk/libc/arch/ia32/include/atomic.h
/uspace/trunk/libc/arch/ia64/include/atomic.h
/uspace/trunk/libc/arch/mips32/include/atomic.h
/uspace/trunk/libc/arch/mips32/include/context_offset.h
/uspace/trunk/libc/arch/mips32/include/psthread.h
/uspace/trunk/libc/arch/mips32/include/thread.h
/uspace/trunk/libc/arch/mips32/src/psthread.S
/uspace/trunk/libc/generic/psthread.c
/uspace/trunk/libc/include/psthread.h
/uspace/trunk/libc/include/types.h
/uspace/trunk/libc/arch/amd64/include/atomic_arch.h
/uspace/trunk/libc/arch/ia32/include/atomic_arch.h
/uspace/trunk/libc/arch/ia64/include/atomic_arch.h
/uspace/trunk/libc/arch/mips32/include/atomic_arch.h
/uspace/trunk/Makefile
/uspace/trunk/init/init.c
/uspace/trunk/libc/Makefile
/uspace/trunk/libc/Makefile.toolchain
/uspace/trunk/libc/arch/amd64/Makefile.inc
/uspace/trunk/libc/arch/amd64/src/entry.s
/uspace/trunk/libc/arch/amd64/src/thread_entry.s
/uspace/trunk/libc/arch/ia32/Makefile.inc
/uspace/trunk/libc/arch/ia32/src/entry.s
/uspace/trunk/libc/arch/ia32/src/thread_entry.s
/uspace/trunk/libc/arch/ia64/src/entry.s
/uspace/trunk/libc/arch/ia64/src/thread_entry.s
/uspace/trunk/libc/arch/mips32/Makefile.inc
/uspace/trunk/libc/arch/mips32/src/entry.s
/uspace/trunk/libc/arch/mips32/src/thread_entry.s
/uspace/trunk/libc/generic/libc.c
/uspace/trunk/libc/generic/thread.c
/uspace/trunk/libc/include/atomic.h
/uspace/trunk/libc/include/io/io.h
/uspace/trunk/libc/include/libc.h
/uspace/trunk/libc/include/stdarg.h
/uspace/trunk/libc/include/stdint.h
/uspace/trunk/libc/include/thread.h
/uspace/trunk/libc/include/unistd.h
/uspace/trunk/libc/malloc/malloc.c
1110 6705 d 20 h jermar /uspace/trunk/libc/ Port atomic operations to uspace.  
/uspace/trunk/libc/arch/amd64/include/atomic_arch.h
/uspace/trunk/libc/arch/ia32/include/atomic_arch.h
/uspace/trunk/libc/arch/ia64/include/atomic_arch.h
/uspace/trunk/libc/arch/mips32/include/atomic_arch.h
/uspace/trunk/libc/include/atomic.h
1105 6705 d 20 h jermar /uspace/trunk/libc/arch/mips32/ Fix mips32 linker script.
Add .scommon input section.
Add .got section and define _gp symbol.
Use this symbol to initialize gp register (r28).
 
/uspace/trunk/libc/arch/mips32/_link.ld.in
/uspace/trunk/libc/arch/mips32/src/entry.s
/uspace/trunk/libc/arch/mips32/src/thread_entry.s
1099 6707 d 22 h palkovsky /uspace/trunk/libc/arch/ia32/src/ Small calling convention change for ia32.  
/uspace/trunk/libc/arch/ia32/src/syscall.c
1098 6708 d 4 h palkovsky /uspace/trunk/libc/arch/mips32/src/ RA is now saved by caller instead of kernel on syscall.  
/uspace/trunk/libc/arch/mips32/src/syscall.c
1095 6708 d 4 h palkovsky /uspace/trunk/libc/arch/mips32/src/ Change calling convention for MIPS.  
/uspace/trunk/libc/arch/mips32/src/syscall.c
1085 6710 d 9 h jermar /uspace/trunk/libc/arch/ia32/src/ Fix ia32 uspace threads.  
/uspace/trunk/libc/arch/ia32/src/thread_entry.s
1079 6711 d 0 h jermar /uspace/trunk/ Improved uspace threads (uspace).  
/uspace/trunk/libc/arch/amd64/src/thread_entry.s
/uspace/trunk/libc/arch/ia32/src/thread_entry.s
/uspace/trunk/libc/arch/ia64/src/thread_entry.s
/uspace/trunk/libc/arch/mips32/src/thread_entry.s
/uspace/trunk/init/init.c
/uspace/trunk/libc/Makefile
/uspace/trunk/libc/arch/ia64/src/entry.s
/uspace/trunk/libc/generic/thread.c
/uspace/trunk/libc/include/thread.h
1049 6712 d 3 h cejka /uspace/trunk/ New improved version of stackargs va_start and va_arg macros for mips32.  
/uspace/trunk/init/init.c
/uspace/trunk/libc/arch/mips32/include/stackarg.h
1043 6712 d 5 h jermar /uspace/trunk/libc/arch/ia64/ Fix _gp to point to the beginning of .got section in ia64 linker script.  
/uspace/trunk/libc/arch/ia64/_link.ld.in
1010 6713 d 5 h cejka /uspace/trunk/libc/ Fixed problem with stackarg/stdarg for 64-bit platforms.  
/uspace/trunk/libc/arch/amd64/include/stackarg.h
/uspace/trunk/libc/arch/ia32/include/stackarg.h
/uspace/trunk/libc/arch/ia64/include/stackarg.h
/uspace/trunk/libc/arch/mips32/include/stackarg.h
/uspace/trunk/libc/generic/io/io.c
/uspace/trunk/libc/generic/io/print.c
/uspace/trunk/libc/include/stdarg.h
994 6713 d 21 h jermar /uspace/trunk/ Integrate softint.a into ia64 building process.  
/uspace/trunk/Makefile
/uspace/trunk/init/Makefile
/uspace/trunk/init/init.c
/uspace/trunk/libc/arch/ia64/Makefile.inc
/uspace/trunk/softint/Makefile
992 6713 d 22 h jermar /uspace/trunk/libc/ Add -N to ia64 libc/Makefile.  
/uspace/trunk/libc/arch/ia64/Makefile.inc
/uspace/trunk/libc/generic/io/print.c
989 6714 d 1 h palkovsky /uspace/trunk/libc/arch/ Correct size_t for 64-bit platforms.  
/uspace/trunk/libc/arch/amd64/include/types.h
/uspace/trunk/libc/arch/ia64/include/types.h
985 6714 d 1 h palkovsky /uspace/trunk/libc/ Added malloc implementation.  
/uspace/trunk/libc/include/errno.h
/uspace/trunk/libc/include/stdlib.h
/uspace/trunk/libc/include/string.h
/uspace/trunk/libc/include/sys
/uspace/trunk/libc/include/sys/types.h
/uspace/trunk/libc/Makefile
/uspace/trunk/libc/arch/amd64/_link.ld.in
/uspace/trunk/libc/arch/ia32/_link.ld.in
/uspace/trunk/libc/arch/ia64/_link.ld.in
/uspace/trunk/libc/arch/mips32/_link.ld.in
/uspace/trunk/libc/generic/mmap.c
/uspace/trunk/libc/include/malloc.h
/uspace/trunk/libc/include/stdio.h
/uspace/trunk/libc/include/unistd.h
/uspace/trunk/libc/malloc/malloc.c
976 6714 d 5 h cejka /uspace/trunk/libc/arch/ Added missing uspace types definitions to non-ia32 arch.  
/uspace/trunk/libc/arch/amd64/include/types.h
/uspace/trunk/libc/arch/ia64/include/types.h
/uspace/trunk/libc/arch/mips32/include/types.h
974 6714 d 6 h cejka /uspace/trunk/libc/ Userspace printf, stdarg, and some other printf support.  
/uspace/trunk/libc/generic/io
/uspace/trunk/libc/generic/io/io.c
/uspace/trunk/libc/generic/io/print.c
/uspace/trunk/libc/include/io
/uspace/trunk/libc/include/io/io.h
/uspace/trunk/libc/include/stdarg.h
/uspace/trunk/libc/include/stddef.h
/uspace/trunk/libc/generic/io.c
/uspace/trunk/libc/Makefile
/uspace/trunk/libc/arch/ia32/include/types.h
/uspace/trunk/libc/include/stdio.h
961 6714 d 21 h jermar /uspace/trunk/libc/arch/ia64/src/ ia64 support for __SYSCALL4.  
/uspace/trunk/libc/arch/ia64/src/syscall.S
960 6714 d 21 h palkovsky /uspace/trunk/ New IPC synchronous call.
Widened syscall to support up to 5 parameters.
 
/uspace/trunk/init/init.c
/uspace/trunk/libc/arch/ia32/src/syscall.c
/uspace/trunk/libc/arch/mips32/src/syscall.c
/uspace/trunk/libc/include/libc.h
/uspace/trunk/libipc/generic/ipc.c
/uspace/trunk/libipc/include/ipc.h
954 6714 d 22 h palkovsky /uspace/trunk/ Added very basic IPC userspace stuff.  
/uspace/trunk/libipc
/uspace/trunk/libipc/Makefile
/uspace/trunk/libipc/generic
/uspace/trunk/libipc/generic/ipc.c
/uspace/trunk/libipc/include
/uspace/trunk/libipc/include/ipc.h
/uspace/trunk/Makefile
/uspace/trunk/init/Makefile
/uspace/trunk/init/init.c
/uspace/trunk/libc/Makefile
/uspace/trunk/libc/arch/mips32/src/syscall.c
/uspace/trunk/libc/generic/io.c
/uspace/trunk/libc/include/libc.h
/uspace/trunk/uspace.config
948 6715 d 6 h jermar /uspace/trunk/libc/arch/ Unify init linker scripts to contain two properly aligned and properly flagged segments.  
/uspace/trunk/libc/arch/amd64/Makefile.inc
/uspace/trunk/libc/arch/amd64/_link.ld.in
/uspace/trunk/libc/arch/amd64/src/entry.s
/uspace/trunk/libc/arch/ia32/Makefile.inc
/uspace/trunk/libc/arch/ia32/_link.ld.in
/uspace/trunk/libc/arch/ia32/src/entry.s
/uspace/trunk/libc/arch/ia64/_link.ld.in
/uspace/trunk/libc/arch/ia64/src/entry.s
/uspace/trunk/libc/arch/mips32/_link.ld.in
943 6715 d 22 h palkovsky /uspace/trunk/libc/arch/mips32/ Fixed mips alignment support.  
/uspace/trunk/libc/arch/mips32/_link.ld.in
/uspace/trunk/libc/arch/mips32/src/entry.s
937 6716 d 0 h jermar /uspace/trunk/libc/arch/ Switch uspace to ELF init.  
/uspace/trunk/libc/arch/amd64/_link.ld.in
/uspace/trunk/libc/arch/ia32/_link.ld.in
/uspace/trunk/libc/arch/mips32/Makefile.inc
/uspace/trunk/libc/arch/mips32/_link.ld.in
/uspace/trunk/libc/arch/mips32eb/Makefile.inc
920 6719 d 1 h jermar /uspace/trunk/libc/arch/ia64/ Rewrite syscall wrapper in assembly.  
/uspace/trunk/libc/arch/ia64/src/syscall.S
/uspace/trunk/libc/arch/ia64/src/syscall.c
/uspace/trunk/libc/arch/ia64/Makefile.inc
917 6719 d 5 h jermar /uspace/trunk/libc/arch/ia64/ ia64 work.
Changes to make userspace work (uspace part).
 
/uspace/trunk/libc/arch/ia64/_link.ld.in
/uspace/trunk/libc/arch/ia64/src/entry.s
/uspace/trunk/libc/arch/ia64/src/syscall.c
908 6725 d 4 h jermar /uspace/trunk/ Start ia64 uspace.  
/uspace/trunk/libc/arch/ia64
/uspace/trunk/libc/arch/ia64/Makefile.inc
/uspace/trunk/libc/arch/ia64/_link.ld.in
/uspace/trunk/libc/arch/ia64/include
/uspace/trunk/libc/arch/ia64/include/types.h
/uspace/trunk/libc/arch/ia64/src
/uspace/trunk/libc/arch/ia64/src/entry.s
/uspace/trunk/libc/arch/ia64/src/syscall.c
/uspace/trunk/uspace.config
848 6738 d 21 h palkovsky /uspace/trunk/ Added userspace for MIPS32-Big endian.  
/uspace/trunk/libc/arch/mips32eb/Makefile.inc
/uspace/trunk/uspace.config
805 6749 d 16 h palkovsky /uspace/trunk/ Added AMD64 userspace.  
/uspace/trunk/libc/arch/amd64
/uspace/trunk/libc/arch/amd64/Makefile.inc
/uspace/trunk/libc/arch/amd64/_link.ld.in
/uspace/trunk/libc/arch/amd64/include
/uspace/trunk/libc/arch/amd64/include/types.h
/uspace/trunk/libc/arch/amd64/src
/uspace/trunk/libc/arch/amd64/src/entry.s
/uspace/trunk/libc/arch/amd64/src/syscall.S
/uspace/trunk/libc/arch/mips32eb/_link.ld.in
/uspace/trunk/libc/Makefile
/uspace/trunk/libc/arch/ia32/Makefile.inc
/uspace/trunk/libc/arch/mips32/Makefile.inc
/uspace/trunk/uspace.config
795 6750 d 2 h palkovsky /uspace/trunk/ Modifiaction to make mips userspace work.  
/uspace/trunk/libc/arch/ia32/_link.ld.in
/uspace/trunk/libc/arch/mips32/_link.ld.in
/uspace/trunk/libc/_link.ld.in
/uspace/trunk/init/Makefile
/uspace/trunk/libc/Makefile
/uspace/trunk/libc/Makefile.toolchain
/uspace/trunk/libc/arch/mips32/Makefile.inc
739 6764 d 8 h jermar /uspace/trunk/libc/arch/ Rename mips32el to mips32.  
/uspace/trunk/libc/arch/mips32
/uspace/trunk/libc/arch/mips32el
/uspace/trunk/libc/arch/mips32eb/include
/uspace/trunk/libc/arch/mips32eb/src
738 6764 d 8 h jermar /uspace/trunk/libc/arch/ Rename mips32 to mips32eb.  
/uspace/trunk/libc/arch/mips32eb
/uspace/trunk/libc/arch/mips32
656 6797 d 19 h decky /uspace/trunk/ user space init working  
/uspace/trunk/init/init.c
/uspace/trunk/libc/_link.ld.in
/uspace/trunk/libc/arch/ia32/src/entry.s
/uspace/trunk/libc/arch/ia32/src/syscall.c
505 6826 d 1 h decky /uspace/trunk/libc/ forgotten stuff  
/uspace/trunk/libc/include/unistd.h
/uspace/trunk/libc/arch/ia32/src/syscall.c
/uspace/trunk/libc/arch/mips32el/src/syscall.c
/uspace/trunk/libc/generic/io.c
/uspace/trunk/libc/include/libc.h
504 6826 d 1 h decky /uspace/trunk/ uspace work  
/uspace/trunk/libc/arch/ia32/include
/uspace/trunk/libc/arch/ia32/include/types.h
/uspace/trunk/libc/arch/ia32/src
/uspace/trunk/libc/arch/ia32/src/entry.s
/uspace/trunk/libc/arch/ia32/src/syscall.c
/uspace/trunk/libc/arch/mips32/include
/uspace/trunk/libc/arch/mips32/src
/uspace/trunk/libc/arch/mips32el/include
/uspace/trunk/libc/arch/mips32el/include/types.h
/uspace/trunk/libc/arch/mips32el/src
/uspace/trunk/libc/arch/mips32el/src/entry.s
/uspace/trunk/libc/arch/mips32el/src/syscall.c
/uspace/trunk/libc/generic/io.c
/uspace/trunk/libc/include/stdio.h
/uspace/trunk/libc/arch/ia32/entry.s
/uspace/trunk/libc/arch/ia32/syscall.c
/uspace/trunk/libc/arch/mips32/entry.s
/uspace/trunk/libc/arch/mips32/syscall.c
/uspace/trunk/libc/arch/mips32el/entry.s
/uspace/trunk/libc/arch/mips32el/syscall.c
/uspace/trunk/libc/include/unistd.h
/uspace/trunk/init/init.c
/uspace/trunk/libc/Makefile
/uspace/trunk/libc/Makefile.toolchain
/uspace/trunk/libc/_link.ld.in
/uspace/trunk/libc/include/libc.h
499 6826 d 5 h decky /uspace/trunk/libc/ uspace basic syscall framework  
/uspace/trunk/libc/arch/ia32/syscall.c
/uspace/trunk/libc/arch/mips32/syscall.c
/uspace/trunk/libc/arch/mips32el/syscall.c
/uspace/trunk/libc/Makefile
/uspace/trunk/libc/include/libc.h
498 6826 d 5 h decky /uspace/trunk/libc/arch/ uspace MIPS entry points  
/uspace/trunk/libc/arch/mips32/Makefile.inc
/uspace/trunk/libc/arch/mips32/entry.s
/uspace/trunk/libc/arch/mips32el
/uspace/trunk/libc/arch/mips32el/Makefile.inc
/uspace/trunk/libc/arch/mips32el/entry.s
497 6826 d 5 h decky /uspace/trunk/libc/arch/mips32/ libc MIPS arch sources  
/uspace/trunk/libc/arch/mips32
491 6832 d 4 h decky /uspace/trunk/ initial uspace build system  
/uspace/trunk/libc/arch
/uspace/trunk/libc/arch/ia32
/uspace/trunk/libc/arch/ia32/Makefile.inc
/uspace/trunk/libc/arch/ia32/entry.s
/uspace/trunk/libc/generic
/uspace/trunk/libc/generic/libc.c
/uspace/trunk/libc/generic/libc.h
/uspace/trunk/libc/include
/uspace/trunk/libc/include/unistd.h
/uspace/trunk/Makefile
/uspace/trunk/libc/entry.s
/uspace/trunk/libc/libc.c
/uspace/trunk/libc/libc.h
/uspace/trunk/libc/unistd.h
/uspace/trunk/libc/Makefile