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
3206 5840 d 20 h jermar /trunk/kernel/generic/ Avoid deadlock during the 'zone n' kconsole command. Buddy allocator detail is
no longer printed because the effort to avoid the deadlock was simply not worth
it.
 
/trunk/kernel/generic/include/mm/buddy.h
/trunk/kernel/generic/src/mm/buddy.c
/trunk/kernel/generic/src/mm/frame.c
3205 5840 d 23 h jermar /trunk/kernel/generic/src/mm/ Fix deadlock in the 'zones' kconsole command.  
/trunk/kernel/generic/src/mm/frame.c
3204 5841 d 2 h svoboda /branches/dynload/kernel/generic/src/proc/ Update stale docblocks in proc/program.c  
/branches/dynload/kernel/generic/src/proc/program.c
3203 5841 d 3 h svoboda /branches/dynload/ Move stuff related to running programs to a separate source file proc/program.c  
/branches/dynload/kernel/generic/include/proc/program.h
/branches/dynload/kernel/generic/src/proc/program.c
/branches/dynload/kernel/Makefile
/branches/dynload/kernel/generic/include/proc/task.h
/branches/dynload/kernel/generic/include/syscall/syscall.h
/branches/dynload/kernel/generic/src/main/kinit.c
/branches/dynload/kernel/generic/src/proc/task.c
/branches/dynload/kernel/generic/src/syscall/syscall.c
/branches/dynload/uspace/lib/libc/generic/task.c
3202 5841 d 5 h svoboda /branches/dynload/uspace/ Fix ia64: retval in async_wait_for is ipcarg_t, not int; fix entry point  
/branches/dynload/uspace/lib/libc/generic/task.c
/branches/dynload/uspace/srv/loader/arch/ia64/Makefile.inc
/branches/dynload/uspace/srv/loader/arch/ia64/ia64.s
3201 5844 d 1 h svoboda /trunk/uspace/ Do not disassemble needlessly.  
/trunk/uspace/app/init/Makefile
/trunk/uspace/app/klog/Makefile
/trunk/uspace/app/tester/Makefile
/trunk/uspace/app/tetris/Makefile
/trunk/uspace/srv/console/Makefile
/trunk/uspace/srv/devmap/Makefile
/trunk/uspace/srv/fb/Makefile
/trunk/uspace/srv/fs/fat/Makefile
/trunk/uspace/srv/fs/tmpfs/Makefile
/trunk/uspace/srv/kbd/Makefile
/trunk/uspace/srv/ns/Makefile
/trunk/uspace/srv/rd/Makefile
/trunk/uspace/srv/vfs/Makefile
3200 5844 d 2 h svoboda /trunk/kernel/arch/ppc32/src/ Remove buggy assembler memsetb function, call generic C _memsetb instead. Fixes kconsole panic when uspace klog is enabled and memsetb() called from klog_update()  
/trunk/kernel/arch/ppc32/src/asm.S
3199 5845 d 19 h svoboda /branches/dynload/ Merge latest trunk changes into dynload  
/branches/dynload/boot/arch/mips32/loader/Makefile
/branches/dynload/kernel/generic/include/config.h
3198 5845 d 19 h svoboda /trunk/ Use initrd with mips32 port. Increase memory size.  
/trunk/boot/arch/mips32/loader/Makefile
/trunk/kernel/generic/include/config.h
3197 5846 d 0 h svoboda /branches/dynload/ Merge latest changes from trunk to dynload  
/branches/dynload/boot/arch/arm32/loader/Makefile
/branches/dynload/kernel/arch/ppc32/src/mm/page.c
/branches/dynload/kernel/arch/ppc32/src/mm/tlb.c
/branches/dynload/kernel/generic/src/console/kconsole.c
/branches/dynload/kernel/generic/src/main/main.c
/branches/dynload/uspace/lib/libc/arch/arm32/include/byteorder.h
3196 5846 d 0 h svoboda /trunk/boot/arch/arm32/loader/ Use initrd with arm32 port.  
/trunk/boot/arch/arm32/loader/Makefile
3195 5846 d 0 h svoboda /trunk/uspace/lib/libc/arch/arm32/include/ Fix: arm32 is little-endian.  
/trunk/uspace/lib/libc/arch/arm32/include/byteorder.h
3194 5846 d 3 h jermar /trunk/kernel/generic/src/console/ Remove left-over debugging stuff.  
/trunk/kernel/generic/src/console/kconsole.c
3193 5846 d 18 h jermar /trunk/kernel/ cstyle fixes  
/trunk/kernel/arch/ppc32/src/mm/page.c
/trunk/kernel/arch/ppc32/src/mm/tlb.c
/trunk/kernel/generic/src/console/kconsole.c
/trunk/kernel/generic/src/main/main.c
3192 5847 d 1 h svoboda /branches/dynload/uspace/lib/libc/generic/ Commit long-missing pcb.c (oops)  
/branches/dynload/uspace/lib/libc/generic/pcb.c
3191 5847 d 1 h svoboda /branches/dynload/ Merge latest trunk changes into dynload  
/branches/dynload/contrib/conf/HelenOS.amd64.simics
/branches/dynload/contrib/conf/HelenOS.ppc32.simics
/branches/dynload/contrib/conf/HelenOS.sparc64.simics
/branches/dynload/contrib/conf/SPMIPS.simics
/branches/dynload/contrib/conf/dot.bochsrc
/branches/dynload/contrib/conf/simics.conf
/branches/dynload/contrib/conf/spmips.conf
/branches/dynload/contrib/conf/vmware.conf
/branches/dynload/boot/arch/ia64/loader/gefi/HelenOS/Makefile
/branches/dynload/boot/arch/ia64/loader/gefi/apps/Makefile
/branches/dynload/contrib/toolchain/toolchain.amd64.sh
/branches/dynload/contrib/toolchain/toolchain.arm32.sh
/branches/dynload/contrib/toolchain/toolchain.ia32.sh
/branches/dynload/contrib/toolchain/toolchain.ia64.sh
/branches/dynload/contrib/toolchain/toolchain.mipseb32.sh
/branches/dynload/contrib/toolchain/toolchain.mipsel32.sh
/branches/dynload/contrib/toolchain/toolchain.ppc32.sh
/branches/dynload/contrib/toolchain/toolchain.ppc64.sh
/branches/dynload/contrib/toolchain/toolchain.sparc64.sh
/branches/dynload/kernel/Makefile
/branches/dynload/kernel/arch/amd64/Makefile.inc
/branches/dynload/kernel/arch/amd64/include/atomic.h
/branches/dynload/kernel/arch/ia32/Makefile.inc
/branches/dynload/kernel/arch/ia32/include/atomic.h
/branches/dynload/kernel/arch/mips32/include/atomic.h
/branches/dynload/kernel/arch/ppc32/src/asm.S
/branches/dynload/kernel/genarch/src/mm/as_ht.c
/branches/dynload/kernel/generic/include/mm/slab.h
/branches/dynload/kernel/generic/include/synch/mutex.h
/branches/dynload/kernel/generic/src/ipc/ipc.c
/branches/dynload/kernel/generic/src/main/kinit.c
/branches/dynload/kernel/generic/src/main/main.c
/branches/dynload/kernel/generic/src/mm/as.c
/branches/dynload/kernel/generic/src/mm/frame.c
/branches/dynload/kernel/generic/src/mm/slab.c
/branches/dynload/kernel/generic/src/proc/scheduler.c
/branches/dynload/kernel/generic/src/proc/task.c
/branches/dynload/kernel/generic/src/synch/condvar.c
/branches/dynload/kernel/generic/src/synch/mutex.c
/branches/dynload/kernel/generic/src/synch/rwlock.c
/branches/dynload/kernel/test/avltree/avltree1.c
/branches/dynload/kernel/test/mm/slab2.c
/branches/dynload/uspace/lib/libc/arch/amd64/include/atomic.h
/branches/dynload/uspace/lib/libc/arch/ia32/include/atomic.h
/branches/dynload/uspace/lib/libc/arch/mips32/include/atomic.h
3190 5847 d 2 h svoboda /branches/dynload/ Remove vestiges of loading code coming from trunk  
/branches/dynload/kernel/generic/include/proc/task.h
/branches/dynload/kernel/generic/include/proc/thread.h
/branches/dynload/kernel/generic/include/syscall/syscall.h
/branches/dynload/kernel/generic/src/proc/task.c
/branches/dynload/kernel/generic/src/proc/thread.c
/branches/dynload/kernel/generic/src/syscall/syscall.c
/branches/dynload/uspace/app/cli/cli.c
/branches/dynload/uspace/app/init/init.c
/branches/dynload/uspace/lib/libc/generic/task.c
/branches/dynload/uspace/lib/libc/include/task.h
3189 5851 d 17 h jermar /trunk/kernel/arch/ppc32/src/ Implement memcpy_to_uspace_failover_address for ppc32.
This fixes kernel side of ticket #59.
 
/trunk/kernel/arch/ppc32/src/asm.S
3188 5853 d 16 h jermar /trunk/kernel/generic/src/mm/ Finer grained waiting for memory with consideration of the number
of available memory frames.
 
/trunk/kernel/generic/src/mm/frame.c
3187 5853 d 20 h jermar /trunk/kernel/generic/src/mm/ Get rid of the infamous "Sleep not implemented" panic during low memory
condition. Use a condition variable to implement the sleep. As of now, the
condition is rather coarse and can cause that threads may sleep unnecessarily.
Needs to be fine tuned and based on the amount of memory available.
 
/trunk/kernel/generic/src/mm/frame.c
3186 5853 d 20 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 5854 d 19 h jermar /trunk/kernel/generic/src/mm/ cstyle for frame.c  
/trunk/kernel/generic/src/mm/frame.c
3184 5854 d 23 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 5855 d 0 h jermar /trunk/kernel/generic/src/mm/ Avoid easy deadlock while printing slab cache statistics.  
/trunk/kernel/generic/src/mm/slab.c
3182 5855 d 0 h jermar /trunk/kernel/generic/include/mm/ cstyle for slab.h  
/trunk/kernel/generic/include/mm/slab.h
3181 5856 d 4 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 5856 d 6 h jermar /trunk/kernel/generic/src/mm/ cstyle for slab.c  
/trunk/kernel/generic/src/mm/slab.c
3179 5856 d 21 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 5857 d 19 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 5857 d 21 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 5857 d 21 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 5858 d 3 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 5858 d 4 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 5858 d 17 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 5858 d 17 h jermar /trunk/kernel/ Frame pointers will make debugging much easier.  
/trunk/kernel/Makefile
3171 5858 d 20 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 5858 d 22 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 5858 d 22 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 5859 d 2 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 5859 d 5 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