Subversion Repositories HelenOS

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
2510 6188 d 23 h jermar /trunk/kernel/ Experimental support for the cgsix framebuffer, which is found on old Ultra 1
worksations, and the SBUS bus and devices. Not tested.
 
/trunk/kernel/genarch/src/ofw/sbus.c
/trunk/kernel/arch/sparc64/include/drivers/scr.h
/trunk/kernel/arch/sparc64/src/drivers/scr.c
/trunk/kernel/genarch/Makefile.inc
/trunk/kernel/genarch/include/ofw/ofw_tree.h
2509 6194 d 4 h jermar /trunk/ The wedding is over. Time to clean things up.  
/trunk/README.svatba
2508 6212 d 9 h vana /trunk/ Wedding commit  
/trunk/README.svatba
2507 6217 d 4 h jermar /trunk/boot/arch/sparc64/loader/ Fix sparc64 loader's pack script for use with gcc 4.2.1 by
avoiding pointer to int type casts so that the newer gcc doesn't emit a warning.
Due to the -Werror flags, such a warning would prevent a successful build.
 
/trunk/boot/arch/sparc64/loader/pack
2506 6217 d 4 h jermar /trunk/contrib/toolchain/ Update sparc64 toolchain script for gcc 4.2.1.  
/trunk/contrib/toolchain/toolchain.sparc64.sh
2505 6222 d 9 h jermar /trunk/kernel/genarch/src/softint/ Minor cleanup of softint.  
/trunk/kernel/genarch/src/softint/division.c
2504 6227 d 0 h jermar /trunk/kernel/generic/ Give the AVL tree walkers the possibility to take an argument.
Each walker is now supposed to return a bool value to support walk termination.

Switch over from the tasks_btree B+tree to tasks_tree AVL tree.
This makes the fix for ticket #48 complete.
 
/trunk/kernel/generic/include/adt/avl.h
/trunk/kernel/generic/include/proc/task.h
/trunk/kernel/generic/src/adt/avl.c
/trunk/kernel/generic/src/proc/task.c
/trunk/kernel/generic/src/proc/thread.c
2503 6227 d 1 h jermar /trunk/kernel/generic/src/adt/ Get rid of code duplicities in the insert path into an AVL tree.  
/trunk/kernel/generic/src/adt/avl.c
2502 6227 d 5 h jermar /trunk/kernel/generic/ Replace the threads_btree B+tree with an AVL tree. The new variable is called
threads_tree. For printing list of threads, use the new AVL tree walker
mechanism.

This solves half of ticket #48.
 
/trunk/kernel/generic/include/proc/thread.h
/trunk/kernel/generic/src/proc/thread.c
2501 6227 d 5 h jermar /trunk/kernel/generic/ Add explicit type for an AVL tree key.
Add function to walk an AVL tree using a supplied walker.
 
/trunk/kernel/generic/include/adt/avl.h
/trunk/kernel/generic/src/adt/avl.c
2500 6227 d 7 h jermar /trunk/kernel/ Make the kernel compile again after integrating the AVL tree.
Integrate with tests, add the AVL tree implementation author into AUTHORS.
 
/trunk/kernel/Makefile
/trunk/kernel/doc/AUTHORS
/trunk/kernel/test/test.c
/trunk/kernel/test/test.h
2499 6227 d 7 h jermar /trunk/kernel/ Import the AVL tree implementation from the RCU branch.  
/trunk/kernel/generic/include/adt/avl.h
/trunk/kernel/generic/src/adt/avl.c
/trunk/kernel/test/avltree
2495 6244 d 3 h jermar /trunk/uspace/lib/libc/generic/io/ Formatting changes.  
/trunk/uspace/lib/libc/generic/io/stream.c
2494 6244 d 22 h jermar /trunk/kernel/generic/ Implement a new mechanism for copying data between two address spaces based on
IPC. New system method IPC_M_DATA_SEND is introduced. The implementation is
generic and does not make use of any possible architecture optimizations such as
direct copy from one address space to another.
 
/trunk/kernel/generic/include/ipc/ipc.h
/trunk/kernel/generic/src/ipc/ipc.c
/trunk/kernel/generic/src/ipc/sysipc.c
2493 6245 d 2 h jermar /trunk/kernel/generic/include/ipc/ Collapse IPC method numbers.  
/trunk/kernel/generic/include/ipc/ipc.h
2492 6250 d 1 h jermar /trunk/uspace/lib/libc/generic/ Add comment clarifying how a fibril waiting for a message gets rescheduled.  
/trunk/uspace/lib/libc/generic/async.c
/trunk/uspace/lib/libc/generic/fibril.c
2491 6250 d 3 h jermar /trunk/uspace/ Fix two minor bugs in uspace's make clean.  
/trunk/uspace/Makefile
2490 6252 d 2 h jermar /trunk/uspace/lib/libc/generic/ Improve comments in async.c  
/trunk/uspace/lib/libc/generic/async.c
/trunk/uspace/lib/libc/generic/ipc.c
2489 6252 d 5 h jermar /trunk/ Allow HelenOS to be built by a native gcc on Solaris.  
/trunk/kernel/Makefile
/trunk/uspace/lib/libc/Makefile.toolchain
2488 6253 d 21 h jermar /trunk/uspace/lib/libc/generic/ Improve comments in async.c  
/trunk/uspace/lib/libc/generic/async.c
2487 6254 d 0 h jermar /trunk/kernel/generic/src/proc/ Kernel stack address was printed twice.  
/trunk/kernel/generic/src/proc/thread.c
2486 6254 d 0 h jermar /trunk/uspace/lib/libc/ Remove duplicit and empty time.h from libc.
Move timeval functions from async.c to time.c.
 
/trunk/uspace/lib/libc/include/time.h
/trunk/uspace/lib/libc/generic/async.c
/trunk/uspace/lib/libc/generic/time.c
/trunk/uspace/lib/libc/include/sys/time.h
2485 6257 d 22 h jermar /trunk/uspace/lib/libc/generic/ More fibril/psthread cleanup.  
/trunk/uspace/lib/libc/generic/async.c
2484 6257 d 23 h jermar /trunk/uspace/lib/libc/generic/ More psthread/fibril cleanup.  
/trunk/uspace/lib/libc/generic/async.c
2483 6258 d 3 h jermar /trunk/uspace/lib/libc/ Remove fibril_join().
We cannot guarantee our assumptions that easily.
This broken feature is removed instead of fixing because there are now users of it.
 
/trunk/uspace/lib/libc/generic/async.c
/trunk/uspace/lib/libc/generic/fibril.c
/trunk/uspace/lib/libc/include/fibril.h
2482 6258 d 18 h jermar /trunk/ Goodbye pseudo threads, welcome fibrils.
The renaming might still be incomplete.
 
/trunk/uspace/lib/libc/arch/amd64/include/fibril.h
/trunk/uspace/lib/libc/arch/amd64/src/fibril.S
/trunk/uspace/lib/libc/arch/arm32/include/fibril.h
/trunk/uspace/lib/libc/arch/arm32/src/fibril.S
/trunk/uspace/lib/libc/arch/ia32/include/fibril.h
/trunk/uspace/lib/libc/arch/ia32/src/fibril.S
/trunk/uspace/lib/libc/arch/ia64/include/fibril.h
/trunk/uspace/lib/libc/arch/ia64/src/fibril.S
/trunk/uspace/lib/libc/arch/mips32/include/fibril.h
/trunk/uspace/lib/libc/arch/mips32/src/fibril.S
/trunk/uspace/lib/libc/arch/mips32eb/include/fibril.h
/trunk/uspace/lib/libc/arch/ppc32/include/fibril.h
/trunk/uspace/lib/libc/arch/ppc32/src/fibril.S
/trunk/uspace/lib/libc/arch/ppc64/include/fibril.h
/trunk/uspace/lib/libc/arch/ppc64/src/fibril.S
/trunk/uspace/lib/libc/arch/sparc64/include/fibril.h
/trunk/uspace/lib/libc/arch/sparc64/src/fibril.S
/trunk/uspace/lib/libc/generic/fibril.c
/trunk/uspace/lib/libc/include/fibril.h
/trunk/uspace/lib/libc/arch/amd64/include/psthread.h
/trunk/uspace/lib/libc/arch/amd64/src/psthread.S
/trunk/uspace/lib/libc/arch/arm32/include/psthread.h
/trunk/uspace/lib/libc/arch/arm32/src/psthread.S
/trunk/uspace/lib/libc/arch/ia32/include/psthread.h
/trunk/uspace/lib/libc/arch/ia32/src/psthread.S
/trunk/uspace/lib/libc/arch/ia64/include/psthread.h
/trunk/uspace/lib/libc/arch/ia64/src/psthread.S
/trunk/uspace/lib/libc/arch/mips32/include/psthread.h
/trunk/uspace/lib/libc/arch/mips32/src/psthread.S
/trunk/uspace/lib/libc/arch/mips32eb/include/psthread.h
/trunk/uspace/lib/libc/arch/ppc32/include/psthread.h
/trunk/uspace/lib/libc/arch/ppc32/src/psthread.S
/trunk/uspace/lib/libc/arch/ppc64/include/psthread.h
/trunk/uspace/lib/libc/arch/ppc64/src/psthread.S
/trunk/uspace/lib/libc/arch/sparc64/include/psthread.h
/trunk/uspace/lib/libc/arch/sparc64/src/psthread.S
/trunk/uspace/lib/libc/generic/psthread.c
/trunk/uspace/lib/libc/include/psthread.h
/trunk/kernel/arch/ia32/src/context.s
/trunk/uspace/lib/libc/Makefile
/trunk/uspace/lib/libc/arch/amd64/Makefile.inc
/trunk/uspace/lib/libc/arch/amd64/include/thread.h
/trunk/uspace/lib/libc/arch/arm32/Makefile.inc
/trunk/uspace/lib/libc/arch/arm32/include/thread.h
/trunk/uspace/lib/libc/arch/ia32/Makefile.inc
/trunk/uspace/lib/libc/arch/ia32/include/thread.h
/trunk/uspace/lib/libc/arch/ia64/Makefile.inc
/trunk/uspace/lib/libc/arch/ia64/include/thread.h
/trunk/uspace/lib/libc/arch/mips32/Makefile.inc
/trunk/uspace/lib/libc/arch/mips32/include/thread.h
/trunk/uspace/lib/libc/arch/mips32eb/Makefile.inc
/trunk/uspace/lib/libc/arch/ppc32/Makefile.inc
/trunk/uspace/lib/libc/arch/ppc32/include/thread.h
/trunk/uspace/lib/libc/arch/ppc64/Makefile.inc
/trunk/uspace/lib/libc/arch/ppc64/include/thread.h
/trunk/uspace/lib/libc/arch/sparc64/Makefile.inc
/trunk/uspace/lib/libc/arch/sparc64/include/thread.h
/trunk/uspace/lib/libc/generic/async.c
/trunk/uspace/lib/libc/generic/ipc.c
/trunk/uspace/lib/libc/generic/libc.c
/trunk/uspace/lib/libc/generic/thread.c
/trunk/uspace/lib/libc/include/async.h
2481 6258 d 20 h jermar /trunk/uspace/lib/libc/ 1. Implement simple joining of pseudo threads. Only one pseudo thread is allowed to join another pseudo
thread. The restriction is that both pseudo threads must be from the same thread (this is to simplify
synchronization). The joiner doesn't free anything from the joinee. It only gets its return value. Not
tested thoroughly yet.

2. Cleanup of a dead pseudo thread is done by the next scheduled pseudo thread. Not tested thoroughly yet.
 
/trunk/uspace/lib/libc/generic/psthread.c
/trunk/uspace/lib/libc/include/psthread.h
2480 6263 d 5 h jermar /trunk/uspace/ Remove dummy presenter.  
/trunk/uspace/presenter
2479 6263 d 5 h jermar /trunk/ New, better-structured, directory layout for uspace.  
/trunk/uspace/app
/trunk/uspace/app/init
/trunk/uspace/app/klog
/trunk/uspace/app/tester
/trunk/uspace/app/tetris
/trunk/uspace/lib
/trunk/uspace/lib/libc
/trunk/uspace/lib/softfloat
/trunk/uspace/lib/softint
/trunk/uspace/srv
/trunk/uspace/srv/console
/trunk/uspace/srv/fb
/trunk/uspace/srv/fs
/trunk/uspace/srv/kbd
/trunk/uspace/srv/ns
/trunk/uspace/srv/pci
/trunk/uspace/srv/rd
/trunk/uspace/console
/trunk/uspace/fb
/trunk/uspace/fs
/trunk/uspace/init
/trunk/uspace/kbd
/trunk/uspace/klog
/trunk/uspace/libc
/trunk/uspace/ns
/trunk/uspace/pci
/trunk/uspace/rd
/trunk/uspace/softfloat
/trunk/uspace/softint
/trunk/uspace/tester
/trunk/uspace/tetris
/trunk/boot/arch/amd64/Makefile.inc
/trunk/boot/arch/arm32/loader/Makefile
/trunk/boot/arch/ia32/Makefile.inc
/trunk/boot/arch/ia32xen/Makefile.inc
/trunk/boot/arch/mips32/loader/Makefile
/trunk/boot/arch/ppc32/loader/Makefile
/trunk/boot/arch/ppc64/loader/Makefile
/trunk/boot/arch/sparc64/loader/Makefile
/trunk/contrib/conf/ski.conf
/trunk/uspace/Makefile
/trunk/uspace/app/init/Makefile
/trunk/uspace/app/klog/Makefile
/trunk/uspace/app/tester/Makefile
/trunk/uspace/app/tetris/Makefile
/trunk/uspace/app/tetris/input.c
/trunk/uspace/app/tetris/screen.c
/trunk/uspace/lib/libc/Makefile
/trunk/uspace/lib/libc/arch/amd64/_link.ld.in
/trunk/uspace/lib/libc/arch/arm32/Makefile.inc
/trunk/uspace/lib/libc/arch/arm32/_link.ld.in
/trunk/uspace/lib/libc/arch/ia32/_link.ld.in
/trunk/uspace/lib/libc/arch/ia64/Makefile.inc
/trunk/uspace/lib/libc/arch/ia64/_link.ld.in
/trunk/uspace/lib/libc/arch/mips32/Makefile.inc
/trunk/uspace/lib/libc/arch/mips32/_link.ld.in
/trunk/uspace/lib/libc/arch/ppc32/_link.ld.in
/trunk/uspace/lib/libc/arch/ppc64/_link.ld.in
/trunk/uspace/lib/libc/arch/sparc64/_link.ld.in
/trunk/uspace/srv/console/Makefile
/trunk/uspace/srv/fb/Makefile
/trunk/uspace/srv/fs/Makefile
/trunk/uspace/srv/kbd/Makefile
/trunk/uspace/srv/ns/Makefile
/trunk/uspace/srv/pci/Makefile
/trunk/uspace/srv/pci/libpci/Makefile
/trunk/uspace/srv/rd/Makefile
2478 6265 d 2 h jermar /trunk/uspace/rd/ Add sanity checks for reads and writes that occur past the end of the
ramdisk image.
 
/trunk/uspace/rd/rd.c
2477 6265 d 20 h kebrt /trunk/kernel/arch/arm32/src/ fixes bug causing crash in tester 'thread1' test  
/trunk/kernel/arch/arm32/src/userspace.c
2476 6265 d 22 h jermar /trunk/ Cleanup.  
/trunk/kernel/generic/include/errno.h
/trunk/uspace/fb/ega.h
/trunk/uspace/fb/fb.h
/trunk/uspace/fb/font-8x16.h
/trunk/uspace/fb/main.h
/trunk/uspace/fb/ppm.h
/trunk/uspace/fb/sysio.h
/trunk/uspace/ns/ns.c
2475 6265 d 22 h jermar /trunk/uspace/rd/ Improve the rd task (not tested):
- allow more connections
- support write operation
- support concurrent requests
- sanity checks
- add comments

Please review.
 
/trunk/uspace/rd/rd.c
/trunk/uspace/rd/rd.h
2473 6267 d 22 h jermar /trunk/ Bump version to 0.2.0.5 (Twilight).  
/trunk/version
2472 6268 d 23 h jermar /trunk/kernel/generic/src/ipc/ Some left-over stuff from the last commit (IPC cleanup and improved
comments.)
 
/trunk/kernel/generic/src/ipc/ipc.c
2471 6268 d 23 h jermar /trunk/ Greatly improve comments in the IPC layer.
Now I think I finally start to understand our IPC internals :-)
 
/trunk/kernel/generic/include/ipc/ipc.h
/trunk/kernel/generic/include/ipc/ipcrsc.h
/trunk/kernel/generic/include/ipc/irq.h
/trunk/kernel/generic/src/ipc/ipc.c
/trunk/kernel/generic/src/ipc/ipcrsc.c
/trunk/kernel/generic/src/ipc/irq.c
/trunk/kernel/generic/src/ipc/sysipc.c
/trunk/uspace/libc/generic/ipc.c
/trunk/uspace/libc/include/ipc/ipc.h
/trunk/uspace/ns/ns.c
/trunk/uspace/pci/pci.c
/trunk/uspace/rd/rd.c
2470 6272 d 21 h jermar /trunk/ Fix a double-free recently introduced in revision r2436.
Add a comment clarifying the life-cycle of the kernel_uarg structure.

Comment out the freeing of userspace thread stack while still running on it.
This should be fixed by implementing userspace version of thread_join().
 
/trunk/kernel/generic/src/proc/thread.c
/trunk/uspace/libc/generic/thread.c
2469 6272 d 23 h jermar /trunk/uspace/libc/generic/ Fix a bug in userspace thread_create() that confused success of the
syscall with failure.
 
/trunk/uspace/libc/generic/thread.c
2468 6273 d 0 h jermar /trunk/ Remove some forgotten \r from arm32 files.
Formatting changes.
Add some correct BOOT_mips32_* guards.
 
/trunk/boot/arch/arm32/loader/asm.h
/trunk/boot/arch/arm32/loader/main.h
/trunk/boot/arch/arm32/loader/mm.c
/trunk/boot/arch/arm32/loader/mm.h
/trunk/boot/arch/arm32/loader/print/gxemul.c
/trunk/boot/arch/arm32/loader/types.h
/trunk/boot/arch/mips32/loader/asm.h
/trunk/boot/arch/mips32/loader/main.h
/trunk/boot/arch/mips32/loader/msim.h
/trunk/boot/arch/mips32/loader/regname.h
/trunk/boot/arch/mips32/loader/types.h
/trunk/uspace/libc/arch/arm32/include/atomic.h
/trunk/uspace/libc/arch/arm32/include/thread.h
2467 6273 d 1 h jermar /trunk/ Improve comments for arch-specific implementations of hierarchical
4-level page tables. Improve formatting.
 
/trunk/boot/genarch/include/softint
/trunk/boot/generic/genarch
/trunk/kernel/arch/amd64/include/mm/page.h
/trunk/kernel/arch/arm32/include/mm/page.h
/trunk/kernel/arch/arm32/include/mm/page_fault.h
/trunk/kernel/arch/ia32/include/mm/page.h
/trunk/kernel/arch/ia32xen/include/mm/page.h
/trunk/kernel/arch/mips32/include/mm/page.h
/trunk/kernel/arch/ppc32/include/mm/page.h
/trunk/kernel/arch/ppc64/include/mm/page.h
/trunk/kernel/genarch/include/mm/page_ht.h
/trunk/kernel/genarch/include/mm/page_pt.h
/trunk/kernel/generic/src/mm/backend_elf.c
/trunk/kernel/generic/src/syscall/syscall.c