Subversion Repositories HelenOS

Rev

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

Filtering Options

Rev Age Author Path Log message Diff Changes
3186 5864 d 12 h jermar /trunk/kernel/ Support for active mutexes. Active mutexes implement busy waiting, pretty much
in the same way as spinlocks, but can be passed to condition variables, which is
the motivation for this enhancement.
 
/trunk/kernel/genarch/src/mm/as_ht.c
/trunk/kernel/generic/include/synch/mutex.h
/trunk/kernel/generic/src/ipc/ipc.c
/trunk/kernel/generic/src/mm/as.c
/trunk/kernel/generic/src/proc/task.c
/trunk/kernel/generic/src/synch/condvar.c
/trunk/kernel/generic/src/synch/mutex.c
/trunk/kernel/generic/src/synch/rwlock.c
/trunk/kernel/test/mm/slab2.c
3185 5865 d 11 h jermar /trunk/kernel/generic/src/mm/ cstyle for frame.c  
/trunk/kernel/generic/src/mm/frame.c
3184 5865 d 14 h jermar /trunk/kernel/generic/src/ipc/ Fix a scary two-year old bug: do not attempt to initialize a call structure if
its allocation failed.
 
/trunk/kernel/generic/src/ipc/ipc.c
3183 5865 d 16 h jermar /trunk/kernel/generic/src/mm/ Avoid easy deadlock while printing slab cache statistics.  
/trunk/kernel/generic/src/mm/slab.c
3182 5865 d 16 h jermar /trunk/kernel/generic/include/mm/ cstyle for slab.h  
/trunk/kernel/generic/include/mm/slab.h
3181 5866 d 19 h jermar /trunk/kernel/generic/src/ cstyle for kinit.c and scheduler.c  
/trunk/kernel/generic/src/main/kinit.c
/trunk/kernel/generic/src/proc/scheduler.c
3180 5866 d 21 h jermar /trunk/kernel/generic/src/mm/ cstyle for slab.c  
/trunk/kernel/generic/src/mm/slab.c
3179 5867 d 13 h jermar /trunk/kernel/ Introduce the notion of FPU_NO_CFLAGS and separate building of test/fpu
objects and building the rest of kernel objects. Now, amd64 and ia32 can
enable things such as SSE selectively for the test/fpu/*.
 
/trunk/kernel/Makefile
/trunk/kernel/arch/amd64/Makefile.inc
/trunk/kernel/arch/ia32/Makefile.inc
3178 5868 d 11 h jermar /trunk/boot/arch/ia64/loader/gefi/ Remove the ia64 loader's dependency on libgcc. The dependecny would break
builds with the new toolchain.
 
/trunk/boot/arch/ia64/loader/gefi/HelenOS/Makefile
/trunk/boot/arch/ia64/loader/gefi/apps/Makefile
3177 5868 d 12 h jermar /trunk/contrib/toolchain/ Upgrade the toolchain to gcc 4.3.1.
This revealed several bugs fixed in a couple of previous commits.
The ia64 toolchain no longer requires the extra includes.
The ppc32 architecture feels a little bit broken because the console
service doesn't start for some reason.
 
/trunk/contrib/toolchain/toolchain.amd64.sh
/trunk/contrib/toolchain/toolchain.arm32.sh
/trunk/contrib/toolchain/toolchain.ia32.sh
/trunk/contrib/toolchain/toolchain.ia64.sh
/trunk/contrib/toolchain/toolchain.mipseb32.sh
/trunk/contrib/toolchain/toolchain.mipsel32.sh
/trunk/contrib/toolchain/toolchain.ppc32.sh
/trunk/contrib/toolchain/toolchain.ppc64.sh
/trunk/contrib/toolchain/toolchain.sparc64.sh
3176 5868 d 12 h jermar /trunk/contrib/conf/ Remove outdated sample configuration files or configuration files that
are strongly inspired by Simics configuration files.
 
/trunk/contrib/conf/HelenOS.amd64.simics
/trunk/contrib/conf/HelenOS.ppc32.simics
/trunk/contrib/conf/HelenOS.sparc64.simics
/trunk/contrib/conf/SPMIPS.simics
/trunk/contrib/conf/dot.bochsrc
/trunk/contrib/conf/simics.conf
/trunk/contrib/conf/spmips.conf
/trunk/contrib/conf/vmware.conf
3175 5868 d 18 h jermar /trunk/kernel/generic/src/main/ Don't print anything before the kernel initializes the first THE
structure. This fixes a regression introduced in r3061. If anything
worked from r3061 until now, it was only due to luck. arm32 was not
that lucky when built with gcc 4.3.1.
 
/trunk/kernel/generic/src/main/main.c
3174 5868 d 20 h svoboda /branches/dynload/uspace/ Pass args to loader from task_spawn_ex(), completing argument support. Can pass args from CLI to tester.  
/branches/dynload/uspace/app/cli/cli.c
/branches/dynload/uspace/app/init/init.c
/branches/dynload/uspace/app/tester/tester.c
/branches/dynload/uspace/lib/libc/generic/task.c
/branches/dynload/uspace/lib/libc/include/ipc/loader.h
/branches/dynload/uspace/srv/loader/include/arch.h
/branches/dynload/uspace/srv/loader/main.c
3173 5869 d 9 h jermar /trunk/kernel/arch/ia32/ Don't build the ia32 kernel with MMX/SSE/3DNOW enabled. This was causing
problems with gcc 4.3.1 which generated MMX aided code in a context that
didn't allow this.
 
/trunk/kernel/arch/ia32/Makefile.inc
3172 5869 d 9 h jermar /trunk/kernel/ Frame pointers will make debugging much easier.  
/trunk/kernel/Makefile
3171 5869 d 11 h svoboda /branches/dynload/uspace/ Add argc, argv to pcb_t. Update libc to save PCB pointer and pass argc, argv to main. (None provided by loader, yet)  
/branches/dynload/uspace/lib/libc/Makefile
/branches/dynload/uspace/lib/libc/arch/amd64/src/entry.s
/branches/dynload/uspace/lib/libc/arch/arm32/src/entry.s
/branches/dynload/uspace/lib/libc/arch/ia32/src/entry.s
/branches/dynload/uspace/lib/libc/arch/ia64/src/entry.s
/branches/dynload/uspace/lib/libc/arch/mips32/src/entry.s
/branches/dynload/uspace/lib/libc/arch/ppc32/src/entry.s
/branches/dynload/uspace/lib/libc/arch/ppc64/src/entry.s
/branches/dynload/uspace/lib/libc/arch/sparc64/src/entry.s
/branches/dynload/uspace/lib/libc/generic/libc.c
/branches/dynload/uspace/lib/libc/include/loader/pcb.h
/branches/dynload/uspace/srv/loader/main.c
3170 5869 d 14 h svoboda /branches/dynload/uspace/srv/loader/ Get rid of fixed PCB addresses in loader. Get rid of arch/pcb.h files  
/branches/dynload/uspace/srv/loader/arch/amd64/include/pcb.h
/branches/dynload/uspace/srv/loader/arch/arm32/include/pcb.h
/branches/dynload/uspace/srv/loader/arch/ia32/include/pcb.h
/branches/dynload/uspace/srv/loader/arch/ia64/include/pcb.h
/branches/dynload/uspace/srv/loader/arch/mips32/include/pcb.h
/branches/dynload/uspace/srv/loader/arch/ppc32/include/pcb.h
/branches/dynload/uspace/srv/loader/elf_load.c
/branches/dynload/uspace/srv/loader/include/elf_load.h
/branches/dynload/uspace/srv/loader/main.c
3169 5869 d 14 h svoboda /branches/dynload/uspace/srv/loader/ Update loader's program_run() to pass PCB pointer. (some arches appear broken)  
/branches/dynload/uspace/srv/loader/arch/amd64/amd64.s
/branches/dynload/uspace/srv/loader/arch/arm32/arm32.s
/branches/dynload/uspace/srv/loader/arch/ia32/ia32.s
/branches/dynload/uspace/srv/loader/arch/ia64/ia64.s
/branches/dynload/uspace/srv/loader/arch/mips32/mips32.s
/branches/dynload/uspace/srv/loader/arch/ppc32/ppc32.s
/branches/dynload/uspace/srv/loader/elf_load.c
/branches/dynload/uspace/srv/loader/include/arch.h
/branches/dynload/uspace/srv/loader/include/elf_load.h
/branches/dynload/uspace/srv/loader/main.c
3168 5869 d 17 h svoboda /branches/dynload/ For each arch define one register for passing a pointer to PCB. Implemented in kernel lowlevel swich-to-userspace funcs and libc entry points. Missing in loader's program_run implementations.  
/branches/dynload/kernel/arch/amd64/src/userspace.c
/branches/dynload/kernel/arch/arm32/src/userspace.c
/branches/dynload/kernel/arch/ia32/src/userspace.c
/branches/dynload/kernel/arch/ia32xen/src/userspace.c
/branches/dynload/kernel/arch/ia64/src/asm.S
/branches/dynload/kernel/arch/mips32/include/atomic.h
/branches/dynload/kernel/arch/mips32/src/start.S
/branches/dynload/kernel/arch/ppc32/src/asm.S
/branches/dynload/kernel/arch/ppc64/src/asm.S
/branches/dynload/kernel/arch/sparc64/src/asm.S
/branches/dynload/uspace/lib/libc/arch/amd64/src/entry.s
/branches/dynload/uspace/lib/libc/arch/arm32/src/entry.s
/branches/dynload/uspace/lib/libc/arch/ia32/src/entry.s
/branches/dynload/uspace/lib/libc/arch/ia64/src/entry.s
/branches/dynload/uspace/lib/libc/arch/mips32/src/entry.s
/branches/dynload/uspace/lib/libc/arch/ppc32/src/entry.s
/branches/dynload/uspace/lib/libc/arch/sparc64/src/entry.s
/branches/dynload/uspace/lib/libc/generic/libc.c
/branches/dynload/uspace/lib/libc/include/libc.h
3167 5869 d 21 h svoboda /trunk/kernel/arch/mips32/include/ Fix mips32 atomic_add() which would break build unless a constant was propagated into the second argument. (Specifically at -O0)  
/trunk/kernel/arch/mips32/include/atomic.h

Show All