Subversion Repositories HelenOS-historic

Rev

Go to most recent revision | Hide changed files | Directory listing | RSS feed

Filtering Options

Rev Age Author Path Log message Diff Changes
1113 6645 d 2 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
1111 6645 d 14 h jermar /uspace/trunk/ Basic futex support for userspace.  
/uspace/trunk/libc/generic/futex.c
/uspace/trunk/libc/include/futex.h
/uspace/trunk/init/init.c
/uspace/trunk/libc/Makefile
1110 6645 d 14 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 6645 d 14 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 6647 d 16 h palkovsky /uspace/trunk/libc/arch/ia32/src/ Small calling convention change for ia32.  
/uspace/trunk/libc/arch/ia32/src/syscall.c
1098 6647 d 23 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 6647 d 23 h palkovsky /uspace/trunk/libc/arch/mips32/src/ Change calling convention for MIPS.  
/uspace/trunk/libc/arch/mips32/src/syscall.c
1085 6650 d 4 h jermar /uspace/trunk/libc/arch/ia32/src/ Fix ia32 uspace threads.  
/uspace/trunk/libc/arch/ia32/src/thread_entry.s
1081 6650 d 17 h jermar /uspace/trunk/ Fix uspace threads for ia64.  
/uspace/trunk/init/init.c
/uspace/trunk/libc/generic/thread.c
1079 6650 d 18 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
1073 6651 d 1 h cejka /uspace/trunk/ Userspace printf was rewritten to support standard format. Not all needed features implemented yet.  
/uspace/trunk/init/Makefile
/uspace/trunk/init/init.c
/uspace/trunk/libc/Makefile
/uspace/trunk/libc/Makefile.toolchain
/uspace/trunk/libc/generic/io/print.c
/uspace/trunk/ns/Makefile
/uspace/trunk/ns/ns.c
1065 6651 d 11 h jermar /uspace/trunk/ Support for uspace threads.  
/uspace/trunk/libc/generic/thread.c
/uspace/trunk/libc/include/thread.h
/uspace/trunk/init/init.c
/uspace/trunk/libc/Makefile
/uspace/trunk/libc/generic/libc.c
1049 6651 d 21 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 6652 d 0 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
1033 6652 d 12 h jermar /uspace/trunk/libc/ mmap() syscall.  
/uspace/trunk/libc/generic/mmap.c
/uspace/trunk/libc/include/unistd.h
1031 6652 d 12 h cejka /uspace/trunk/ SoftFloat integrated into HelenOS uspace.  
/uspace/trunk/libc/include/endian.h
/uspace/trunk/libc/include/stdint.h
/uspace/trunk/softfloat/arch/amd64/include
/uspace/trunk/softfloat/arch/amd64/include/functions.h
/uspace/trunk/softfloat/arch/ia64/include
/uspace/trunk/softfloat/arch/ia64/include/functions.h
/uspace/trunk/softfloat/arch/mips32/include
/uspace/trunk/softfloat/arch/mips32/include/functions.h
/uspace/trunk/softfloat/arch/mips32eb/include
/uspace/trunk/softfloat/arch/mips32eb/include/functions.h
/uspace/trunk/softfloat/arch/ppc32/include
/uspace/trunk/softfloat/arch/ppc32/include/functions.h
/uspace/trunk/softfloat/arch/sparc64/include
/uspace/trunk/softfloat/arch/sparc64/include/functions.h
/uspace/trunk/softfloat/arch/ia32/include/arch.h
/uspace/trunk/softfloat/arch/ia32/include/types.h
/uspace/trunk/softint/Makefile.toolchain
/uspace/trunk/softfloat/Makefile
/uspace/trunk/softfloat/arch/ia32/include/functions.h
/uspace/trunk/softfloat/generic/add.c
/uspace/trunk/softfloat/generic/common.c
/uspace/trunk/softfloat/generic/conversion.c
/uspace/trunk/softfloat/generic/div.c
/uspace/trunk/softfloat/generic/mul.c
/uspace/trunk/softfloat/generic/softfloat.c
/uspace/trunk/softfloat/generic/sub.c
/uspace/trunk/softfloat/include/common.h
/uspace/trunk/softfloat/include/conversion.h
/uspace/trunk/softfloat/include/div.h
/uspace/trunk/softfloat/include/mul.h
/uspace/trunk/softfloat/include/sftypes.h
/uspace/trunk/softfloat/include/softfloat.h
/uspace/trunk/softint/Makefile
1015 6652 d 22 h decky /uspace/trunk/libc/ make it the proper way  
/uspace/trunk/libc/Makefile
1014 6652 d 23 h palkovsky /uspace/trunk/ Init now build on library change.
Fix weird symlink.
 
/uspace/trunk/init/Makefile
/uspace/trunk/libc/Makefile
1010 6653 d 0 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
999 6653 d 13 h palkovsky /uspace/trunk/ Completed asynchronous IPC.
Fixed sbrk.
Cleared some unnecessary defines in malloc.
Changed __u8 * to char * in list.
 
/uspace/trunk/libc/generic/string.c
/uspace/trunk/init/Makefile
/uspace/trunk/init/init.c
/uspace/trunk/libadt/include/list.h
/uspace/trunk/libc/Makefile
/uspace/trunk/libc/generic/mmap.c
/uspace/trunk/libc/include/string.h
/uspace/trunk/libc/malloc/malloc.c
/uspace/trunk/libipc/Makefile
/uspace/trunk/libipc/generic/ipc.c
/uspace/trunk/libipc/include/ipc.h
997 6653 d 14 h cejka /uspace/trunk/ Hash_table conversion done.
Simple assert function converted from kernel.
 
/uspace/trunk/libc/include/assert.h
/uspace/trunk/libadt/Makefile
/uspace/trunk/libadt/generic/hash_table.c
/uspace/trunk/libadt/include/hash_table.h
995 6653 d 15 h cejka /uspace/trunk/ Fixed bug in printf (__native from kernel must be unsigned long).
Putting prefixes in printf optimized.
Test function created in init.c.
 
/uspace/trunk/init/init.c
/uspace/trunk/libc/generic/io/print.c
994 6653 d 16 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 6653 d 16 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 6653 d 19 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 6653 d 20 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
978 6653 d 22 h jermar /uspace/trunk/libc/ Add mremap() syscall.  
/uspace/trunk/libc/generic/mmap.c
/uspace/trunk/libc/Makefile
/uspace/trunk/libc/include/unistd.h
976 6653 d 23 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
975 6654 d 0 h cejka /uspace/trunk/libc/generic/io/ Uspace printf bug repaired.  
/uspace/trunk/libc/generic/io/print.c
974 6654 d 0 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
968 6654 d 2 h palkovsky /uspace/trunk/libc/ Added public domain malloc
Allowed including arch/mm/page.h to have getpagesize().
 
/uspace/trunk/libc/include/malloc.h
/uspace/trunk/libc/malloc
/uspace/trunk/libc/malloc/malloc.c
/uspace/trunk/libc/Makefile
/uspace/trunk/libc/include/libc.h
961 6654 d 15 h jermar /uspace/trunk/libc/arch/ia64/src/ ia64 support for __SYSCALL4.  
/uspace/trunk/libc/arch/ia64/src/syscall.S
960 6654 d 16 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 6654 d 17 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 6655 d 0 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 6655 d 16 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 6655 d 18 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 6658 d 19 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 6659 d 0 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 6664 d 22 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