Subversion Repositories HelenOS-historic

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
1129 6767 d 5 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 6767 d 5 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
1127 6767 d 7 h palkovsky /uspace/trunk/ Correct dependencies creation.  
/uspace/trunk/libadt/Makefile
/uspace/trunk/libc/Makefile
/uspace/trunk/libipc/Makefile
/uspace/trunk/softfloat/Makefile
/uspace/trunk/softint/Makefile
1125 6767 d 8 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
1123 6767 d 18 h palkovsky /uspace/trunk/libc/arch/mips32/ Changed MIPS to compile as PIC code.  
/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/src/entry.s
/uspace/trunk/libc/arch/mips32/src/psthread.S
/uspace/trunk/libc/arch/mips32/src/thread_entry.s
1120 6767 d 22 h palkovsky /uspace/trunk/libc/arch/ Added missing ia32 files.
Renamed __entry to __start in mips, which is standard in gcc standard
linking scripts.
 
/uspace/trunk/libc/arch/ia32/include/psthread.h
/uspace/trunk/libc/arch/ia32/include/thread.h
/uspace/trunk/libc/arch/ia32/src/psthread.S
/uspace/trunk/libc/arch/mips32/Makefile.inc
/uspace/trunk/libc/arch/mips32/_link.ld.in
/uspace/trunk/libc/arch/mips32/include/thread.h
/uspace/trunk/libc/arch/mips32/src/entry.s
1116 6767 d 22 h jermar /uspace/trunk/libc/ Improved futexes for uspace.
Please review.
 
/uspace/trunk/libc/generic/futex.c
/uspace/trunk/libc/include/futex.h
1114 6768 d 8 h jermar /uspace/trunk/libc/generic/ Fix futexes to correctly wake sleeping threads.  
/uspace/trunk/libc/generic/futex.c
1113 6768 d 9 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 6768 d 21 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 6768 d 21 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 6768 d 21 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 6770 d 23 h palkovsky /uspace/trunk/libc/arch/ia32/src/ Small calling convention change for ia32.  
/uspace/trunk/libc/arch/ia32/src/syscall.c
1098 6771 d 5 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 6771 d 6 h palkovsky /uspace/trunk/libc/arch/mips32/src/ Change calling convention for MIPS.  
/uspace/trunk/libc/arch/mips32/src/syscall.c
1092 6771 d 23 h palkovsky /uspace/trunk/libipc/generic/ Fixed bad typing on 64-bit platform.  
/uspace/trunk/libipc/generic/ipc.c
1091 6771 d 23 h palkovsky /uspace/trunk/ Adapt userspace API to conform to kernel api.  
/uspace/trunk/init/init.c
/uspace/trunk/libipc/generic/ipc.c
/uspace/trunk/libipc/include/ipc.h
/uspace/trunk/ns/ns.c
1089 6772 d 6 h palkovsky /uspace/trunk/ More IPC added syscall for hangup and some tests.  
/uspace/trunk/init/init.c
/uspace/trunk/libipc/generic/ipc.c
/uspace/trunk/libipc/include/ipc.h
/uspace/trunk/libipc/include/ns.h
/uspace/trunk/ns/ns.c
1085 6773 d 10 h jermar /uspace/trunk/libc/arch/ia32/src/ Fix ia32 uspace threads.  
/uspace/trunk/libc/arch/ia32/src/thread_entry.s
1081 6773 d 23 h jermar /uspace/trunk/ Fix uspace threads for ia64.  
/uspace/trunk/init/init.c
/uspace/trunk/libc/generic/thread.c
1079 6774 d 1 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 6774 d 7 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 6774 d 18 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
1061 6774 d 22 h palkovsky /uspace/trunk/ Added support for ipc_connect_me_to.  
/uspace/trunk/init/init.c
/uspace/trunk/libipc/generic/ipc.c
/uspace/trunk/libipc/include/ipc.h
/uspace/trunk/ns/ns.c
1049 6775 d 4 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 6775 d 7 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
1035 6775 d 8 h cejka /uspace/trunk/softfloat/generic/ Softfloat warnings fixed.  
/uspace/trunk/softfloat/generic/comparison.c
/uspace/trunk/softfloat/generic/conversion.c
/uspace/trunk/softfloat/generic/softfloat.c
1033 6775 d 19 h jermar /uspace/trunk/libc/ mmap() syscall.  
/uspace/trunk/libc/generic/mmap.c
/uspace/trunk/libc/include/unistd.h
1031 6775 d 19 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
1030 6775 d 19 h palkovsky /uspace/trunk/ns/ Added missing file.  
/uspace/trunk/ns/ns.c
1028 6775 d 19 h palkovsky /uspace/trunk/ Added simple testing skeleton for nameservice.
Added support for ipc_connect_to_me, some fixes.
 
/uspace/trunk/ns
/uspace/trunk/ns/Makefile
/uspace/trunk/Makefile
/uspace/trunk/init/init.c
/uspace/trunk/libipc/generic/ipc.c
/uspace/trunk/libipc/include/ipc.h
/uspace/trunk/libipc/include/ns.h
1015 6776 d 4 h decky /uspace/trunk/libc/ make it the proper way  
/uspace/trunk/libc/Makefile
1014 6776 d 5 h palkovsky /uspace/trunk/ Init now build on library change.
Fix weird symlink.
 
/uspace/trunk/init/Makefile
/uspace/trunk/libc/Makefile
1013 6776 d 6 h palkovsky /uspace/trunk/ Allow correct rebuilding based on boot architecture.  
/uspace/trunk/Makefile
1010 6776 d 7 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
1006 6776 d 7 h palkovsky /uspace/trunk/libipc/ Added support for taskid source identification.  
/uspace/trunk/libipc/generic/ipc.c
/uspace/trunk/libipc/include/ipc.h
999 6776 d 19 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 6776 d 20 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
996 6776 d 21 h cejka /uspace/trunk/ List from LibAdt converted to userspace.
Hash_table not converted yet.
 
/uspace/trunk/libadt
/uspace/trunk/libadt/Makefile
/uspace/trunk/libadt/generic
/uspace/trunk/libadt/generic/hash_table.c
/uspace/trunk/libadt/generic/list.c
/uspace/trunk/libadt/include
/uspace/trunk/libadt/include/fifo.h
/uspace/trunk/libadt/include/hash_table.h
/uspace/trunk/libadt/include/list.h
/uspace/trunk/Makefile
995 6776 d 22 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