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
1143 6643 d 17 h palkovsky /uspace/trunk/libc/ Added support for multithreading (using futexes) into malloc.  
/uspace/trunk/libc/include/futex.h
/uspace/trunk/libc/malloc/malloc.c
1129 6651 d 18 h palkovsky /uspace/trunk/ Completed support for TLS in GCC (modifier __thread) for ia32,amd64,ia64 and mips.  
/uspace/trunk/libc/arch/amd64/src/thread.c
/uspace/trunk/libc/arch/ia32/src/thread.c
/uspace/trunk/libc/arch/ia64/src/thread.c
/uspace/trunk/libc/arch/mips32/src/thread.c
/uspace/trunk/init/init.c
/uspace/trunk/libc/arch/amd64/Makefile.inc
/uspace/trunk/libc/arch/amd64/_link.ld.in
/uspace/trunk/libc/arch/amd64/include/thread.h
/uspace/trunk/libc/arch/ia32/Makefile.inc
/uspace/trunk/libc/arch/ia32/_link.ld.in
/uspace/trunk/libc/arch/ia32/include/thread.h
/uspace/trunk/libc/arch/ia64/Makefile.inc
/uspace/trunk/libc/arch/ia64/_link.ld.in
/uspace/trunk/libc/arch/ia64/include/thread.h
/uspace/trunk/libc/arch/mips32/Makefile.inc
/uspace/trunk/libc/arch/mips32/_link.ld.in
/uspace/trunk/libc/arch/mips32/include/psthread.h
/uspace/trunk/libc/arch/mips32/include/thread.h
/uspace/trunk/libc/generic/libc.c
/uspace/trunk/libc/generic/psthread.c
/uspace/trunk/libc/generic/thread.c
/uspace/trunk/libc/include/psthread.h
/uspace/trunk/libc/include/thread.h
1128 6651 d 18 h jermar /uspace/trunk/ Improve comments in psthread.c
Rename pt->list to pt->link.
Rename ps_preempt() to psthread_schedule_next().
Rename ps_join() to psthread_join().
 
/uspace/trunk/init/init.c
/uspace/trunk/libc/generic/psthread.c
/uspace/trunk/libc/include/psthread.h
1125 6651 d 21 h jermar /uspace/trunk/ TLS and pseudo thread support for ia64.  
/uspace/trunk/libc/arch/ia64/include/psthread.h
/uspace/trunk/libc/arch/ia64/include/stack.h
/uspace/trunk/libc/arch/ia64/include/thread.h
/uspace/trunk/libc/arch/ia64/src/psthread.S
/uspace/trunk/libc/include/align.h
/uspace/trunk/init/init.c
/uspace/trunk/libc/arch/amd64/Makefile.inc
/uspace/trunk/libc/arch/ia32/Makefile.inc
/uspace/trunk/libc/arch/ia64/Makefile.inc
/uspace/trunk/libc/generic/psthread.c
/uspace/trunk/libc/include/psthread.h
/uspace/trunk/libc/include/stdarg.h
/uspace/trunk/libc/include/stdlib.h
1116 6652 d 11 h jermar /uspace/trunk/libc/ Improved futexes for uspace.
Please review.
 
/uspace/trunk/libc/generic/futex.c
/uspace/trunk/libc/include/futex.h
1113 6652 d 22 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 6653 d 10 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 6653 d 10 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
1079 6658 d 14 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
1065 6659 d 7 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
1033 6660 d 8 h jermar /uspace/trunk/libc/ mmap() syscall.  
/uspace/trunk/libc/generic/mmap.c
/uspace/trunk/libc/include/unistd.h
1031 6660 d 8 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
1010 6660 d 20 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 6661 d 9 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 6661 d 9 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
985 6661 d 16 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 6661 d 18 h jermar /uspace/trunk/libc/ Add mremap() syscall.  
/uspace/trunk/libc/generic/mmap.c
/uspace/trunk/libc/Makefile
/uspace/trunk/libc/include/unistd.h
974 6661 d 20 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 6661 d 22 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
960 6662 d 11 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 6662 d 13 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
713 6719 d 15 h decky /uspace/trunk/ some fancy stuff  
/uspace/trunk/init/init.h
/uspace/trunk/init/version.c
/uspace/trunk/init/version.h
/uspace/trunk/init/Makefile
/uspace/trunk/init/init.c
/uspace/trunk/libc/generic/io.c
/uspace/trunk/libc/generic/libc.c
/uspace/trunk/libc/include/libc.h
/uspace/trunk/libc/include/unistd.h
505 6773 d 15 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 6773 d 15 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 6773 d 19 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
495 6773 d 21 h decky /uspace/trunk/libc/ uspace work  
/uspace/trunk/libc/include/libc.h
/uspace/trunk/libc/generic/libc.h
/uspace/trunk/libc/Makefile
491 6779 d 18 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