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
4173 5583 d 5 h jermar /trunk/ Revive kernel notifications.  
/trunk/kernel/generic/include/event
/trunk/kernel/generic/include/event/event.h
/trunk/kernel/generic/include/event/event_types.h
/trunk/kernel/generic/src/event
/trunk/kernel/generic/src/event/event.c
/trunk/uspace/lib/libc/generic/event.c
/trunk/uspace/lib/libc/include/event.h
/trunk/kernel/Makefile
/trunk/kernel/generic/include/syscall/syscall.h
/trunk/kernel/generic/src/console/cmd.c
/trunk/kernel/generic/src/console/console.c
/trunk/kernel/generic/src/console/kconsole.c
/trunk/kernel/generic/src/ipc/ipc.c
/trunk/kernel/generic/src/main/main.c
/trunk/kernel/generic/src/syscall/syscall.c
/trunk/uspace/app/klog/klog.c
/trunk/uspace/app/trace/syscalls.c
/trunk/uspace/lib/libc/Makefile
/trunk/uspace/srv/console/console.c
4084 5594 d 9 h decky /trunk/kernel/generic/src/main/ separate console_init() is actually not needed  
/trunk/kernel/generic/src/main/main.c
4042 5599 d 10 h jermar /trunk/ Complete emancipation of kernel serial controller drivers (i8042, ns16550 and
z8530). Provide a common keyboard module for PC and Sun keyboards. The serial
line module is still to follow.
 
/trunk/kernel/genarch/include/drivers/i8042
/trunk/kernel/genarch/include/drivers/i8042/i8042.h
/trunk/kernel/genarch/include/drivers/ns16550
/trunk/kernel/genarch/include/drivers/ns16550/ns16550.h
/trunk/kernel/genarch/include/drivers/z8530
/trunk/kernel/genarch/include/drivers/z8530/z8530.h
/trunk/kernel/genarch/include/kbrd
/trunk/kernel/genarch/include/kbrd/kbrd.h
/trunk/kernel/genarch/src/drivers/i8042
/trunk/kernel/genarch/src/drivers/i8042/i8042.c
/trunk/kernel/genarch/src/drivers/ns16550
/trunk/kernel/genarch/src/drivers/ns16550/ns16550.c
/trunk/kernel/genarch/src/drivers/z8530
/trunk/kernel/genarch/src/drivers/z8530/z8530.c
/trunk/kernel/genarch/src/kbrd
/trunk/kernel/genarch/src/kbrd/kbrd.c
/trunk/kernel/genarch/include/kbd
/trunk/kernel/genarch/include/kbrd/i8042.h
/trunk/kernel/genarch/include/kbrd/key.h
/trunk/kernel/genarch/include/kbrd/ns16550.h
/trunk/kernel/genarch/include/kbrd/z8530.h
/trunk/kernel/genarch/src/kbd
/trunk/kernel/genarch/src/kbrd/i8042.c
/trunk/kernel/genarch/src/kbrd/key.c
/trunk/kernel/genarch/src/kbrd/ns16550.c
/trunk/kernel/genarch/src/kbrd/z8530.c
/trunk/HelenOS.config
/trunk/kernel/arch/amd64/src/amd64.c
/trunk/kernel/arch/ia32/src/ia32.c
/trunk/kernel/arch/ia64/src/ia64.c
/trunk/kernel/arch/ia64/src/smp/smp.c
/trunk/kernel/arch/sparc64/src/console.c
/trunk/kernel/arch/sparc64/src/drivers/kbd.c
/trunk/kernel/arch/sparc64/src/sparc64.c
/trunk/kernel/genarch/Makefile.inc
/trunk/kernel/genarch/src/kbrd/scanc_pc.c
/trunk/kernel/genarch/src/kbrd/scanc_sun.c
/trunk/kernel/generic/include/console/console.h
/trunk/kernel/generic/src/console/console.c
/trunk/kernel/generic/src/main/main.c
4020 5603 d 7 h svoboda /trunk/kernel/generic/src/main/ 'init:' instead of 'boot:'  
/trunk/kernel/generic/src/main/kinit.c
4014 5603 d 14 h decky /trunk/ cstyle  
/trunk/kernel/arch/ia32/src/boot/cboot.c
/trunk/kernel/generic/include/string.h
/trunk/kernel/generic/src/lib/string.c
/trunk/kernel/generic/src/main/kinit.c
/trunk/uspace/srv/loader/main.c
4012 5604 d 4 h svoboda /trunk/ Task names should only contain base names of commands. Also add 'boot:' prefix for binaries loaded by the kernel.  
/trunk/kernel/arch/ia32/src/boot/cboot.c
/trunk/kernel/generic/include/string.h
/trunk/kernel/generic/src/lib/string.c
/trunk/kernel/generic/src/main/kinit.c
/trunk/uspace/srv/loader/main.c
3995 5604 d 9 h decky /trunk/kernel/generic/src/main/ lower startup sleep (with proper explanation)  
/trunk/kernel/generic/src/main/kinit.c
3987 5605 d 6 h svoboda /trunk/kernel/ Read command line for multiboot modules on ia32 and copy it to task name. Other arches will need to initialize task names in the init structure to an empty string.  
/trunk/kernel/arch/amd64/src/boot/boot.S
/trunk/kernel/arch/ia32/src/boot/cboot.c
/trunk/kernel/generic/include/config.h
/trunk/kernel/generic/src/main/kinit.c
/trunk/kernel/generic/src/proc/task.c
3984 5605 d 7 h svoboda /trunk/kernel/ The ia32-specific boot code is written completely in assembly for no reason. Start fixing this. For now rewrite the copying of multiboot info to C.  
/trunk/kernel/arch/ia32/include/boot/cboot.h
/trunk/kernel/arch/ia32/src/boot/cboot.c
/trunk/kernel/arch/ia32/Makefile.inc
/trunk/kernel/arch/ia32/src/boot/boot.S
/trunk/kernel/generic/include/main/main.h
/trunk/kernel/generic/src/main/main.c
3965 5610 d 6 h svoboda /trunk/kernel/generic/src/ Fix broken doxygen syntax.  
/trunk/kernel/generic/src/console/console.c
/trunk/kernel/generic/src/main/main.c
3875 5622 d 6 h decky /trunk/kernel/generic/ remove platform dependent constructs from generic code  
/trunk/kernel/generic/include/arch.h
/trunk/kernel/generic/include/ddi/irq.h
/trunk/kernel/generic/include/fpu_context.h
/trunk/kernel/generic/src/console/cmd.c
/trunk/kernel/generic/src/ipc/irq.c
/trunk/kernel/generic/src/main/version.c
/trunk/kernel/generic/src/proc/thread.c
3865 5626 d 4 h rimsky /trunk/ Allow to suppress compilation of FB code on Sparc machines that do not have FB.  
/trunk/HelenOS.config
/trunk/kernel/arch/sparc64/Makefile.inc
/trunk/kernel/arch/sparc64/src/console.c
/trunk/kernel/generic/src/main/kinit.c
3860 5631 d 13 h decky /trunk/kernel/generic/src/main/ add dot which will be erased  
/trunk/kernel/generic/src/main/kinit.c
3840 5634 d 12 h decky /trunk/kernel/generic/src/main/ more decent kconsole output without stdin  
/trunk/kernel/generic/src/main/kinit.c
3828 5636 d 9 h decky /trunk/kernel/generic/src/main/ print numbers, not "llu"  
/trunk/kernel/generic/src/main/kinit.c
3790 5657 d 14 h svoboda /trunk/kernel/ Make newlines in panic messages consistent. Add periods at end of messages so that it is obvious whether they are printed entirely.  
/trunk/kernel/arch/amd64/src/interrupt.c
/trunk/kernel/arch/amd64/src/mm/page.c
/trunk/kernel/arch/amd64/src/pm.c
/trunk/kernel/arch/arm32/src/mm/page.c
/trunk/kernel/arch/arm32/src/mm/page_fault.c
/trunk/kernel/arch/ia32/src/drivers/vesa.c
/trunk/kernel/arch/ia32/src/interrupt.c
/trunk/kernel/arch/ia32/src/mm/page.c
/trunk/kernel/arch/ia32/src/pm.c
/trunk/kernel/arch/ia32/src/smp/smp.c
/trunk/kernel/arch/ia32xen/src/interrupt.c
/trunk/kernel/arch/ia32xen/src/mm/page.c
/trunk/kernel/arch/ia32xen/src/pm.c
/trunk/kernel/arch/ia32xen/src/smp/smp.c
/trunk/kernel/arch/ia64/src/ia64.c
/trunk/kernel/arch/ia64/src/interrupt.c
/trunk/kernel/arch/ia64/src/mm/tlb.c
/trunk/kernel/arch/mips32/src/cache.c
/trunk/kernel/arch/mips32/src/debugger.c
/trunk/kernel/arch/mips32/src/exception.c
/trunk/kernel/arch/mips32/src/mm/tlb.c
/trunk/kernel/arch/ppc32/src/mm/page.c
/trunk/kernel/arch/ppc32/src/mm/tlb.c
/trunk/kernel/arch/ppc32/src/ppc32.c
/trunk/kernel/arch/ppc64/include/exception.h
/trunk/kernel/arch/ppc64/src/mm/page.c
/trunk/kernel/arch/ppc64/src/ppc64.c
/trunk/kernel/arch/sparc64/src/console.c
/trunk/kernel/arch/sparc64/src/drivers/fhc.c
/trunk/kernel/arch/sparc64/src/drivers/kbd.c
/trunk/kernel/arch/sparc64/src/drivers/scr.c
/trunk/kernel/arch/sparc64/src/drivers/sgcn.c
/trunk/kernel/arch/sparc64/src/mm/tlb.c
/trunk/kernel/arch/sparc64/src/smp/ipi.c
/trunk/kernel/arch/sparc64/src/sparc64.c
/trunk/kernel/arch/sparc64/src/trap/exception.c
/trunk/kernel/arch/sparc64/src/trap/interrupt.c
/trunk/kernel/genarch/src/drivers/ega/ega.c
/trunk/kernel/genarch/src/fb/fb.c
/trunk/kernel/genarch/src/ofw/fhc.c
/trunk/kernel/genarch/src/ofw/ofw_tree.c
/trunk/kernel/genarch/src/ofw/pci.c
/trunk/kernel/generic/include/debug.h
/trunk/kernel/generic/include/panic.h
/trunk/kernel/generic/src/adt/btree.c
/trunk/kernel/generic/src/adt/hash_table.c
/trunk/kernel/generic/src/cpu/cpu.c
/trunk/kernel/generic/src/interrupt/interrupt.c
/trunk/kernel/generic/src/main/kinit.c
/trunk/kernel/generic/src/main/main.c
/trunk/kernel/generic/src/mm/as.c
/trunk/kernel/generic/src/mm/backend_anon.c
/trunk/kernel/generic/src/mm/backend_elf.c
/trunk/kernel/generic/src/mm/backend_phys.c
/trunk/kernel/generic/src/mm/tlb.c
/trunk/kernel/generic/src/proc/scheduler.c
/trunk/kernel/generic/src/proc/tasklet.c
/trunk/kernel/generic/src/synch/rwlock.c
/trunk/kernel/generic/src/sysinfo/sysinfo.c
/trunk/kernel/generic/src/time/clock.c
/trunk/kernel/generic/src/time/timeout.c
3761 5666 d 7 h decky /trunk/ send notification to uspace console when switching from kernel console  
/trunk/kernel/generic/include/console/kconsole.h
/trunk/kernel/generic/include/ipc/irq.h
/trunk/kernel/generic/src/console/cmd.c
/trunk/kernel/generic/src/console/kconsole.c
/trunk/kernel/generic/src/main/main.c
/trunk/uspace/app/klog/klog.c
/trunk/uspace/srv/console/console.c
3707 5680 d 7 h decky /trunk/ kconsole is optional
kernel & uspace framebuffer rewrite with speedups (some things are slightly broken yet)
 
/trunk/kernel/genarch/src/fb/helenos.xbm
/trunk/kernel/arch/amd64/src/debugger.c
/trunk/kernel/arch/ia32/include/drivers/ega.h
/trunk/kernel/arch/ia32/include/drivers/vesa.h
/trunk/kernel/arch/ia32/src/cpu/cpu.c
/trunk/kernel/arch/ia32/src/drivers/vesa.c
/trunk/kernel/arch/ia32/src/ia32.c
/trunk/kernel/arch/mips32/src/cpu/cpu.c
/trunk/kernel/arch/mips32/src/debugger.c
/trunk/kernel/arch/mips32/src/exception.c
/trunk/kernel/genarch/include/fb/fb.h
/trunk/kernel/genarch/include/fb/font-8x16.h
/trunk/kernel/genarch/include/fb/visuals.h
/trunk/kernel/genarch/src/acpi/acpi.c
/trunk/kernel/genarch/src/fb/fb.c
/trunk/kernel/genarch/src/fb/font-8x16.c
/trunk/kernel/genarch/src/mm/asid.c
/trunk/kernel/generic/include/console/kconsole.h
/trunk/kernel/generic/src/console/cmd.c
/trunk/kernel/generic/src/console/console.c
/trunk/kernel/generic/src/console/kconsole.c
/trunk/kernel/generic/src/cpu/cpu.c
/trunk/kernel/generic/src/interrupt/interrupt.c
/trunk/kernel/generic/src/lib/func.c
/trunk/kernel/generic/src/main/kinit.c
/trunk/kernel/generic/src/main/main.c
/trunk/kernel/generic/src/mm/as.c
/trunk/kernel/generic/src/syscall/syscall.c
/trunk/uspace/lib/libc/include/ipc/fb.h
/trunk/uspace/srv/console/console.c
/trunk/uspace/srv/console/gcons.c
/trunk/uspace/srv/console/gcons.h
/trunk/uspace/srv/console/screenbuffer.h
/trunk/uspace/srv/fb/fb.c
/trunk/uspace/srv/fb/fb.h
/trunk/uspace/srv/fb/font-8x16.c
/trunk/uspace/srv/fb/font-8x16.h
/trunk/uspace/srv/fb/main.c
/trunk/uspace/srv/fb/ppm.c
3576 5715 d 20 h vana /trunk/kernel/generic/src/main/ On Itanium there is nead to preserve at least gp when switching APs to separate stack. Safer way is to save all context and to do it on all platforms.  
/trunk/kernel/generic/src/main/main.c
3566 5718 d 16 h svoboda /trunk/ Set meaningful names for loaded programs. Now 'tasks' kconsole command is much less obscure.  
/trunk/kernel/generic/include/proc/program.h
/trunk/kernel/generic/include/proc/task.h
/trunk/kernel/generic/src/main/kinit.c
/trunk/kernel/generic/src/proc/program.c
/trunk/kernel/generic/src/proc/task.c
/trunk/kernel/generic/src/proc/thread.c
/trunk/uspace/app/trace/trace.c
/trunk/uspace/lib/libc/generic/loader.c
/trunk/uspace/lib/libc/generic/task.c
/trunk/uspace/lib/libc/include/loader/loader.h
3438 5770 d 14 h svoboda /trunk/ Merge syscall tracer (trace) and relevant part of udebug interface from tracing to trunk.  
/trunk/kernel/generic/include/ipc/ipc_kbox.h
/trunk/kernel/generic/include/udebug
/trunk/kernel/generic/include/udebug/udebug.h
/trunk/kernel/generic/include/udebug/udebug_ipc.h
/trunk/kernel/generic/include/udebug/udebug_ops.h
/trunk/kernel/generic/src/ipc/ipc_kbox.c
/trunk/kernel/generic/src/udebug
/trunk/kernel/generic/src/udebug/udebug.c
/trunk/kernel/generic/src/udebug/udebug_ipc.c
/trunk/kernel/generic/src/udebug/udebug_ops.c
/trunk/uspace/app/trace
/trunk/uspace/app/trace/Makefile
/trunk/uspace/app/trace/errors.c
/trunk/uspace/app/trace/errors.h
/trunk/uspace/app/trace/ipc_desc.c
/trunk/uspace/app/trace/ipc_desc.h
/trunk/uspace/app/trace/ipcp.c
/trunk/uspace/app/trace/ipcp.h
/trunk/uspace/app/trace/proto.c
/trunk/uspace/app/trace/proto.h
/trunk/uspace/app/trace/syscalls.c
/trunk/uspace/app/trace/syscalls.h
/trunk/uspace/app/trace/trace.c
/trunk/uspace/lib/libc/generic/udebug.c
/trunk/uspace/lib/libc/include/udebug.h
/trunk/boot/arch/amd64/Makefile.inc
/trunk/boot/arch/arm32/loader/Makefile
/trunk/boot/arch/ia32/Makefile.inc
/trunk/boot/arch/ia64/loader/Makefile
/trunk/boot/arch/mips32/loader/Makefile
/trunk/boot/arch/ppc32/loader/Makefile
/trunk/boot/arch/ppc64/loader/Makefile
/trunk/kernel/Makefile
/trunk/kernel/generic/include/ipc/ipc.h
/trunk/kernel/generic/include/ipc/sysipc.h
/trunk/kernel/generic/include/proc/task.h
/trunk/kernel/generic/include/proc/thread.h
/trunk/kernel/generic/include/syscall/syscall.h
/trunk/kernel/generic/src/ipc/ipc.c
/trunk/kernel/generic/src/ipc/sysipc.c
/trunk/kernel/generic/src/main/uinit.c
/trunk/kernel/generic/src/proc/task.c
/trunk/kernel/generic/src/proc/thread.c
/trunk/kernel/generic/src/syscall/syscall.c
/trunk/kernel/kernel.config
/trunk/uspace/Makefile
/trunk/uspace/lib/libc/Makefile
/trunk/uspace/lib/libc/generic/ipc.c
/trunk/uspace/lib/libc/include/ipc/ipc.h
3362 5794 d 8 h jermar /trunk/kernel/generic/ Fix processing of answers to forwarded masqueraded calls.  
/trunk/kernel/generic/include/ipc/ipc.h
/trunk/kernel/generic/src/ipc/ipc.c
/trunk/kernel/generic/src/ipc/ipcrsc.c
/trunk/kernel/generic/src/main/kinit.c
3222 5841 d 10 h svoboda /trunk/ Merge program-loader related stuff from dynload branch to trunk. (huge)  
/trunk/kernel/generic/include/proc/program.h
/trunk/kernel/generic/include/synch/smc.h
/trunk/kernel/generic/src/proc/program.c
/trunk/kernel/generic/src/synch/smc.c
/trunk/uspace/app/cli
/trunk/uspace/app/cli/Makefile
/trunk/uspace/app/cli/cli.c
/trunk/uspace/lib/libc/generic/pcb.c
/trunk/uspace/lib/libc/generic/smc.c
/trunk/uspace/lib/libc/include/ipc/loader.h
/trunk/uspace/lib/libc/include/loader
/trunk/uspace/lib/libc/include/loader/pcb.h
/trunk/uspace/lib/libc/include/smc.h
/trunk/uspace/srv/loader
/trunk/uspace/srv/loader/Makefile
/trunk/uspace/srv/loader/arch
/trunk/uspace/srv/loader/arch/amd64
/trunk/uspace/srv/loader/arch/amd64/Makefile.inc
/trunk/uspace/srv/loader/arch/amd64/_link.ld.in
/trunk/uspace/srv/loader/arch/amd64/amd64.s
/trunk/uspace/srv/loader/arch/arm32
/trunk/uspace/srv/loader/arch/arm32/Makefile.inc
/trunk/uspace/srv/loader/arch/arm32/_link.ld.in
/trunk/uspace/srv/loader/arch/arm32/arm32.s
/trunk/uspace/srv/loader/arch/ia32
/trunk/uspace/srv/loader/arch/ia32/Makefile.inc
/trunk/uspace/srv/loader/arch/ia32/_link.ld.in
/trunk/uspace/srv/loader/arch/ia32/ia32.s
/trunk/uspace/srv/loader/arch/ia64
/trunk/uspace/srv/loader/arch/ia64/Makefile.inc
/trunk/uspace/srv/loader/arch/ia64/_link.ld.in
/trunk/uspace/srv/loader/arch/ia64/ia64.s
/trunk/uspace/srv/loader/arch/mips32
/trunk/uspace/srv/loader/arch/mips32/Makefile.inc
/trunk/uspace/srv/loader/arch/mips32/_link.ld.in
/trunk/uspace/srv/loader/arch/mips32/mips32.s
/trunk/uspace/srv/loader/arch/ppc32
/trunk/uspace/srv/loader/arch/ppc32/Makefile.inc
/trunk/uspace/srv/loader/arch/ppc32/_link.ld.in
/trunk/uspace/srv/loader/arch/ppc32/ppc32.s
/trunk/uspace/srv/loader/arch/sparc64
/trunk/uspace/srv/loader/arch/sparc64/Makefile.inc
/trunk/uspace/srv/loader/arch/sparc64/_link.ld.in
/trunk/uspace/srv/loader/arch/sparc64/sparc64.s
/trunk/uspace/srv/loader/elf_load.c
/trunk/uspace/srv/loader/include
/trunk/uspace/srv/loader/include/arch.h
/trunk/uspace/srv/loader/include/elf.h
/trunk/uspace/srv/loader/include/elf_load.h
/trunk/uspace/srv/loader/interp.s
/trunk/uspace/srv/loader/main.c
/trunk/boot/arch/amd64/Makefile.inc
/trunk/boot/arch/amd64/grub/menu.lst
/trunk/boot/arch/arm32/loader/Makefile
/trunk/boot/arch/ia32/Makefile.inc
/trunk/boot/arch/ia32/grub/menu.lst
/trunk/boot/arch/ia64/loader/Makefile
/trunk/boot/arch/mips32/loader/Makefile
/trunk/boot/arch/ppc32/loader/Makefile
/trunk/boot/arch/sparc64/loader/Makefile
/trunk/kernel/Makefile
/trunk/kernel/arch/amd64/src/userspace.c
/trunk/kernel/arch/arm32/src/userspace.c
/trunk/kernel/arch/ia32/src/userspace.c
/trunk/kernel/arch/ia32xen/src/userspace.c
/trunk/kernel/arch/ia64/src/asm.S
/trunk/kernel/arch/mips32/src/start.S
/trunk/kernel/arch/ppc32/src/asm.S
/trunk/kernel/arch/ppc64/src/asm.S
/trunk/kernel/arch/sparc64/src/asm.S
/trunk/kernel/generic/include/lib/elf.h
/trunk/kernel/generic/include/mm/as.h
/trunk/kernel/generic/include/proc/task.h
/trunk/kernel/generic/include/proc/thread.h
/trunk/kernel/generic/include/syscall/syscall.h
/trunk/kernel/generic/src/lib/elf.c
/trunk/kernel/generic/src/main/kinit.c
/trunk/kernel/generic/src/mm/as.c
/trunk/kernel/generic/src/proc/task.c
/trunk/kernel/generic/src/proc/thread.c
/trunk/kernel/generic/src/syscall/syscall.c
/trunk/uspace/Makefile
/trunk/uspace/app/init/init.c
/trunk/uspace/app/tester/tester.c
/trunk/uspace/lib/libc/Makefile
/trunk/uspace/lib/libc/arch/amd64/src/entry.s
/trunk/uspace/lib/libc/arch/arm32/src/entry.s
/trunk/uspace/lib/libc/arch/ia32/src/entry.s
/trunk/uspace/lib/libc/arch/ia64/src/entry.s
/trunk/uspace/lib/libc/arch/mips32/src/entry.s
/trunk/uspace/lib/libc/arch/ppc32/src/entry.s
/trunk/uspace/lib/libc/arch/ppc64/src/entry.s
/trunk/uspace/lib/libc/arch/sparc64/src/entry.s
/trunk/uspace/lib/libc/generic/as.c
/trunk/uspace/lib/libc/generic/io/stream.c
/trunk/uspace/lib/libc/generic/libc.c
/trunk/uspace/lib/libc/generic/task.c
/trunk/uspace/lib/libc/include/as.h
/trunk/uspace/lib/libc/include/io/stream.h
/trunk/uspace/lib/libc/include/libc.h
/trunk/uspace/lib/libc/include/task.h
3193 5849 d 6 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
3181 5858 d 15 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
3175 5860 d 14 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
3097 5875 d 7 h decky /trunk/kernel/ resurrect klog  
/trunk/kernel/arch/ia32/src/smp/ap.S
/trunk/kernel/generic/include/console/console.h
/trunk/kernel/generic/src/console/console.c
/trunk/kernel/generic/src/main/main.c
/trunk/kernel/generic/src/syscall/syscall.c
3061 5876 d 12 h decky /trunk/kernel/generic/src/main/ debugging output of kernel initialization  
/trunk/kernel/generic/src/main/main.c
3060 5876 d 12 h decky /trunk/kernel/generic/src/main/ run init tasks after they are all loaded  
/trunk/kernel/generic/src/main/kinit.c
3029 5880 d 12 h decky /trunk/kernel/generic/ fix kernel ramdisk support  
/trunk/kernel/generic/include/lib/rd.h
/trunk/kernel/generic/src/lib/rd.c
/trunk/kernel/generic/src/main/kinit.c
2746 5973 d 10 h decky /trunk/kernel/ start merging tasklets (more or less a rewrite)  
/trunk/kernel/generic/include/proc/tasklet.h
/trunk/kernel/generic/src/proc/tasklet.c
/trunk/kernel/Makefile
/trunk/kernel/generic/src/main/main.c
2745 5973 d 15 h decky /trunk/ code cleanup (mostly signed/unsigned)
allow extra compiler warnings
 
/trunk/kernel/Makefile
/trunk/kernel/arch/amd64/src/mm/page.c
/trunk/kernel/arch/arm32/src/arm32.c
/trunk/kernel/arch/arm32/src/cpu/cpu.c
/trunk/kernel/arch/arm32/src/debug/print.c
/trunk/kernel/arch/ia32xen/src/mm/tlb.c
/trunk/kernel/arch/ia32xen/src/smp/mps.c
/trunk/kernel/arch/ia32xen/src/smp/smp.c
/trunk/kernel/arch/ia64/src/ia64.c
/trunk/kernel/arch/ia64/src/mm/tlb.c
/trunk/kernel/arch/mips32/src/cpu/cpu.c
/trunk/kernel/arch/mips32/src/debugger.c
/trunk/kernel/arch/mips32/src/drivers/arc.c
/trunk/kernel/arch/mips32/src/mm/tlb.c
/trunk/kernel/arch/sparc64/src/mm/frame.c
/trunk/kernel/arch/sparc64/src/mm/page.c
/trunk/kernel/arch/sparc64/src/mm/tlb.c
/trunk/kernel/arch/sparc64/src/smp/ipi.c
/trunk/kernel/genarch/src/ofw/ebus.c
/trunk/kernel/genarch/src/ofw/fhc.c
/trunk/kernel/genarch/src/ofw/ofw_tree.c
/trunk/kernel/genarch/src/ofw/pci.c
/trunk/kernel/genarch/src/ofw/sbus.c
/trunk/kernel/generic/include/lib/elf.h
/trunk/kernel/generic/include/mm/as.h
/trunk/kernel/generic/include/mm/slab.h
/trunk/kernel/generic/src/debug/symtab.c
/trunk/kernel/generic/src/interrupt/interrupt.c
/trunk/kernel/generic/src/ipc/irq.c
/trunk/kernel/generic/src/ipc/sysipc.c
/trunk/kernel/generic/src/lib/elf.c
/trunk/kernel/generic/src/lib/func.c
/trunk/kernel/generic/src/lib/memstr.c
/trunk/kernel/generic/src/lib/sort.c
/trunk/kernel/generic/src/main/main.c
/trunk/kernel/generic/src/mm/as.c
/trunk/kernel/generic/src/mm/backend_anon.c
/trunk/kernel/generic/src/mm/backend_elf.c
/trunk/kernel/generic/src/mm/frame.c
/trunk/kernel/generic/src/mm/slab.c
/trunk/kernel/generic/src/mm/tlb.c
/trunk/kernel/generic/src/printf/printf_core.c
/trunk/kernel/generic/src/proc/task.c
/trunk/kernel/generic/src/synch/futex.c
/trunk/kernel/generic/src/time/clock.c
/trunk/kernel/test/avltree/avltree1.c
/trunk/kernel/test/fpu/fpu1.c
/trunk/kernel/test/fpu/mips2.c
/trunk/kernel/test/fpu/sse1.c
/trunk/kernel/test/mm/falloc2.c
/trunk/kernel/test/synch/rwlock5.c
/trunk/kernel/test/test.c
/trunk/kernel/test/thread/thread1.c
/trunk/uspace/lib/libc/arch/ppc64/src/syscall.c
2725 5994 d 12 h decky /trunk/kernel/ remove config.memory_size, get_memory_size() and memory_init.{c|d}
the amount of available memory can be calculated from the sizes of the zones
add FRAMES2SIZE, SIZE2KB and SIZE2MB functions/macros (code readability)
 
/trunk/kernel/arch/amd64/src/boot/memmap.c
/trunk/kernel/arch/ia32/src/boot/memmap.c
/trunk/kernel/arch/amd64/include/mm/memory_init.h
/trunk/kernel/arch/amd64/src/mm/memory_init.c
/trunk/kernel/arch/arm32/include/mm/memory_init.h
/trunk/kernel/arch/arm32/src/mm/memory_init.c
/trunk/kernel/arch/ia32/include/mm/memory_init.h
/trunk/kernel/arch/ia32/src/mm/memory_init.c
/trunk/kernel/arch/ia32xen/include/mm/memory_init.h
/trunk/kernel/arch/ia32xen/src/mm/memory_init.c
/trunk/kernel/arch/ia64/include/mm/memory_init.h
/trunk/kernel/arch/mips32/include/mm/memory_init.h
/trunk/kernel/arch/ppc32/include/mm/memory_init.h
/trunk/kernel/arch/ppc32/src/mm/memory_init.c
/trunk/kernel/arch/ppc64/include/mm/memory_init.h
/trunk/kernel/arch/ppc64/src/mm/memory_init.c
/trunk/kernel/arch/sparc64/include/mm/memory_init.h
/trunk/kernel/arch/sparc64/src/mm/memory_init.c
/trunk/kernel/arch/amd64/Makefile.inc
/trunk/kernel/arch/amd64/src/amd64.c
/trunk/kernel/arch/amd64/src/boot/boot.S
/trunk/kernel/arch/arm32/Makefile.inc
/trunk/kernel/arch/arm32/src/mm/frame.c
/trunk/kernel/arch/ia32/Makefile.inc
/trunk/kernel/arch/ia32/include/boot/memmap.h
/trunk/kernel/arch/ia32/src/boot/boot.S
/trunk/kernel/arch/ia32/src/ia32.c
/trunk/kernel/arch/ia32xen/Makefile.inc
/trunk/kernel/arch/ia32xen/src/ia32xen.c
/trunk/kernel/arch/ia64/src/mm/frame.c
/trunk/kernel/arch/mips32/src/drivers/arc.c
/trunk/kernel/arch/mips32/src/mm/frame.c
/trunk/kernel/arch/ppc32/Makefile.inc
/trunk/kernel/arch/ppc32/src/mm/frame.c
/trunk/kernel/arch/ppc32/src/ppc32.c
/trunk/kernel/arch/ppc64/Makefile.inc
/trunk/kernel/arch/ppc64/src/mm/frame.c
/trunk/kernel/arch/ppc64/src/ppc64.c
/trunk/kernel/arch/sparc64/Makefile.inc
/trunk/kernel/generic/include/config.h
/trunk/kernel/generic/include/macros.h
/trunk/kernel/generic/include/mm/frame.h
/trunk/kernel/generic/src/main/main.c
/trunk/kernel/generic/src/mm/frame.c
2701 6006 d 14 h jermar /trunk/kernel/ Fix cstyle and (c) to 2008.  
/trunk/kernel/arch/amd64/src/pm.c
/trunk/kernel/arch/ia32/src/mm/frame.c
/trunk/kernel/arch/ia32/src/smp/mps.c
/trunk/kernel/arch/ia32/src/smp/smp.c
/trunk/kernel/generic/src/main/version.c
2447 6244 d 11 h jermar /trunk/kernel/generic/src/main/ Split accidently joined lines.  
/trunk/kernel/generic/src/main/uinit.c
2446 6244 d 11 h jermar /trunk/kernel/generic/ More efficient and simpler task termination.

Based on the assumption, that after its creation, only the task itself can create more threads for itself,
the last thread with userspace context to execute thread_exit() will perform futex and IPC cleanup. When
the task has no threads, it is destroyed. Both the cleanup and destruction is controlled by reference
counting.

As for userspace threads, even though there could be a global garbage collector for joining threads, it is
much simpler if the uinit thread detaches itself before switching to userspace.

task_kill() is now an idempotent operation. It just instructs the threads within a task to exit.

Change in the name of a thread state: Undead -> JoinMe.
 
/trunk/kernel/generic/include/adt/list.h
/trunk/kernel/generic/include/proc/task.h
/trunk/kernel/generic/include/proc/thread.h
/trunk/kernel/generic/src/main/uinit.c
/trunk/kernel/generic/src/proc/scheduler.c
/trunk/kernel/generic/src/proc/task.c
/trunk/kernel/generic/src/proc/thread.c
2445 6244 d 12 h decky /trunk/ initial merge of branches/fs
(not finished, huge cleanup is needed)
 
/trunk/uspace/libc/generic/io/file.c
/trunk/uspace/libc/include/io/file.h
/trunk/uspace/rd/rd.h
/trunk/kernel/doc/AUTHORS
/trunk/kernel/generic/include/errno.h
/trunk/kernel/generic/include/lib/rd.h
/trunk/kernel/generic/src/lib/rd.c
/trunk/kernel/generic/src/main/kinit.c
/trunk/uspace/libc/include/ipc/services.h
/trunk/uspace/rd/rd.c
2227 6297 d 20 h decky /trunk/kernel/ start shutdown infrastructure  
/trunk/kernel/generic/src/main/shutdown.c
/trunk/kernel/Makefile
/trunk/kernel/arch/amd64/src/pm.c
/trunk/kernel/arch/arm32/src/arm32.c
/trunk/kernel/arch/ia32/src/pm.c
/trunk/kernel/arch/ia32xen/src/ia32xen.c
/trunk/kernel/arch/ia64/src/ia64.c
/trunk/kernel/arch/mips32/src/mips32.c
/trunk/kernel/arch/ppc32/src/drivers/cuda.c
/trunk/kernel/arch/ppc64/src/ppc64.c
/trunk/kernel/arch/sparc64/src/sparc64.c
/trunk/kernel/generic/include/arch.h
/trunk/kernel/generic/include/proc/task.h
/trunk/kernel/generic/src/console/cmd.c
/trunk/kernel/generic/src/proc/task.c
/trunk/kernel/kernel.config
2223 6298 d 3 h decky /trunk/kernel/generic/src/ add mcall0 command (calling a function on each CPU)  
/trunk/kernel/generic/src/console/cmd.c
/trunk/kernel/generic/src/main/kinit.c
2118 6360 d 11 h decky /trunk/kernel/generic/src/ explicit typecast, fix signed/unsigned comparison  
/trunk/kernel/generic/src/main/kinit.c
/trunk/kernel/generic/src/proc/scheduler.c
/trunk/kernel/generic/src/proc/task.c
/trunk/kernel/generic/src/proc/thread.c