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 6631 d 7 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 6639 d 8 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 6639 d 9 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 6639 d 11 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 6640 d 1 h jermar /uspace/trunk/libc/ Improved futexes for uspace.
Please review.
 
/uspace/trunk/libc/generic/futex.c
/uspace/trunk/libc/include/futex.h
1113 6640 d 12 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 6641 d 0 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 6641 d 0 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 6646 d 4 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 6646 d 21 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 6647 d 22 h jermar /uspace/trunk/libc/ mmap() syscall.  
/uspace/trunk/libc/generic/mmap.c
/uspace/trunk/libc/include/unistd.h
1031 6647 d 22 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 6648 d 10 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 6648 d 23 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 6649 d 0 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 6649 d 6 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 6649 d 8 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 6649 d 10 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 6649 d 12 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 6650 d 2 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 6650 d 3 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 6707 d 5 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 6761 d 5 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 6761 d 5 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 6761 d 9 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 6761 d 11 h decky /uspace/trunk/libc/ uspace work  
/uspace/trunk/libc/include/libc.h
/uspace/trunk/libc/generic/libc.h
/uspace/trunk/libc/Makefile
491 6767 d 8 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