Subversion Repositories HelenOS

Rev

Hide changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff Changes
3993 5778 d 9 h rimsky /branches/sparc/kernel/ Implemented preemptible trap handler for userspace (including syscalls - did not forget enabling interrupts for them) and the ralated stuff. Implemented handlers of instruction/data MMU miss/protection. Now some userspace tasks are run; there are, however, still some bugs causing unexpected data MMU misses.  
/branches/sparc/kernel/arch/sparc64/include/sun4u/asm.h
/branches/sparc/kernel/arch/sparc64/include/sun4v/asm.h
/branches/sparc/kernel/arch/sparc64/include/trap/sun4u/regwin.h
/branches/sparc/kernel/arch/sparc64/include/trap/sun4v/regwin.h
/branches/sparc/kernel/arch/sparc64/src/proc/sun4u
/branches/sparc/kernel/arch/sparc64/src/proc/sun4u/scheduler.c
/branches/sparc/kernel/arch/sparc64/src/proc/sun4v
/branches/sparc/kernel/arch/sparc64/src/proc/sun4v/scheduler.c
/branches/sparc/kernel/arch/sparc64/src/proc/scheduler.c
/branches/sparc/kernel/arch/sparc64/Makefile.inc
/branches/sparc/kernel/arch/sparc64/include/asm.h
/branches/sparc/kernel/arch/sparc64/include/mm/sun4v/tlb.h
/branches/sparc/kernel/arch/sparc64/include/sun4v/cpu.h
/branches/sparc/kernel/arch/sparc64/include/trap/regwin.h
/branches/sparc/kernel/arch/sparc64/include/trap/sun4v/mmu.h
/branches/sparc/kernel/arch/sparc64/src/mm/sun4v/tlb.c
/branches/sparc/kernel/arch/sparc64/src/sun4u/start.S
/branches/sparc/kernel/arch/sparc64/src/sun4v/asm.S
/branches/sparc/kernel/arch/sparc64/src/sun4v/start.S
/branches/sparc/kernel/arch/sparc64/src/trap/sun4v/trap_table.S
/branches/sparc/kernel/generic/src/main/kinit.c
/branches/sparc/kernel/generic/src/mm/as.c
3742 5843 d 20 h rimsky /branches/sparc/ The sparc branch synchronized with trunk at revision 3722 (trunk@3722).  
/branches/sparc/boot/arch/ia64/loader/gefi/HelenOS/division.c
/branches/sparc/boot/arch/ia64/loader/gefi/HelenOS/division.h
/branches/sparc/kernel/genarch/include/fb/logo-196x66.h
/branches/sparc/kernel/genarch/src/fb/logo-196x66.c
/branches/sparc/uspace/srv/fb/ski.c
/branches/sparc/uspace/srv/fb/ski.h
/branches/sparc/kernel/arch/amd64/include/drivers
/branches/sparc/kernel/genarch/src/fb/helenos.xbm
/branches/sparc/niagara.simics
/branches/sparc/usii.simics
/branches/sparc/usiii.simics
/branches/sparc/HelenOS.config
/branches/sparc/boot/arch/ia64/loader/Makefile
/branches/sparc/boot/arch/ia64/loader/_link.ld.in
/branches/sparc/boot/arch/ia64/loader/gefi/HelenOS/Makefile
/branches/sparc/boot/arch/ia64/loader/gefi/HelenOS/hello.c
/branches/sparc/boot/arch/ia64/loader/gefi/Makefile
/branches/sparc/boot/arch/sparc64/loader/main.c
/branches/sparc/boot/arch/sparc64/loader/ofwarch.c
/branches/sparc/boot/genarch/ofw.c
/branches/sparc/boot/genarch/ofw.h
/branches/sparc/contrib/toolchain/toolchain.sparc64.sh
/branches/sparc/kernel/Makefile
/branches/sparc/kernel/arch/amd64/src/amd64.c
/branches/sparc/kernel/arch/amd64/src/debugger.c
/branches/sparc/kernel/arch/arm32/src/arm32.c
/branches/sparc/kernel/arch/arm32/src/mm/tlb.c
/branches/sparc/kernel/arch/ia32/include/cpu.h
/branches/sparc/kernel/arch/ia32/include/drivers/ega.h
/branches/sparc/kernel/arch/ia32/include/drivers/vesa.h
/branches/sparc/kernel/arch/ia32/include/mm/as.h
/branches/sparc/kernel/arch/ia32/src/boot/vga323.pal
/branches/sparc/kernel/arch/ia32/src/cpu/cpu.c
/branches/sparc/kernel/arch/ia32/src/drivers/vesa.c
/branches/sparc/kernel/arch/ia32/src/ia32.c
/branches/sparc/kernel/arch/ia32xen/src/mm/tlb.c
/branches/sparc/kernel/arch/ia64/src/ski/ski.c
/branches/sparc/kernel/arch/mips32/include/mm/asid.h
/branches/sparc/kernel/arch/mips32/src/cpu/cpu.c
/branches/sparc/kernel/arch/mips32/src/debugger.c
/branches/sparc/kernel/arch/mips32/src/exception.c
/branches/sparc/kernel/arch/mips32/src/mips32.c
/branches/sparc/kernel/arch/ppc32/src/ppc32.c
/branches/sparc/kernel/arch/sparc64/include/barrier.h
/branches/sparc/kernel/arch/sparc64/include/mm/tlb.h
/branches/sparc/kernel/arch/sparc64/include/trap/interrupt.h
/branches/sparc/kernel/arch/sparc64/src/console.c
/branches/sparc/kernel/arch/sparc64/src/drivers/kbd.c
/branches/sparc/kernel/arch/sparc64/src/drivers/scr.c
/branches/sparc/kernel/arch/sparc64/src/drivers/tick.c
/branches/sparc/kernel/arch/sparc64/src/mm/as.c
/branches/sparc/kernel/arch/sparc64/src/mm/page.c
/branches/sparc/kernel/arch/sparc64/src/mm/tlb.c
/branches/sparc/kernel/arch/sparc64/src/mm/tsb.c
/branches/sparc/kernel/arch/sparc64/src/smp/smp.c
/branches/sparc/kernel/genarch/Makefile.inc
/branches/sparc/kernel/genarch/include/fb/fb.h
/branches/sparc/kernel/genarch/include/fb/font-8x16.h
/branches/sparc/kernel/genarch/include/fb/visuals.h
/branches/sparc/kernel/genarch/include/kbd/i8042.h
/branches/sparc/kernel/genarch/include/ofw/ofw_tree.h
/branches/sparc/kernel/genarch/src/acpi/acpi.c
/branches/sparc/kernel/genarch/src/fb/fb.c
/branches/sparc/kernel/genarch/src/fb/font-8x16.c
/branches/sparc/kernel/genarch/src/kbd/key.c
/branches/sparc/kernel/genarch/src/mm/asid.c
/branches/sparc/kernel/genarch/src/ofw/ofw_tree.c
/branches/sparc/kernel/generic/include/console/kconsole.h
/branches/sparc/kernel/generic/include/debug.h
/branches/sparc/kernel/generic/include/macros.h
/branches/sparc/kernel/generic/include/udebug/udebug.h
/branches/sparc/kernel/generic/src/console/cmd.c
/branches/sparc/kernel/generic/src/console/console.c
/branches/sparc/kernel/generic/src/console/kconsole.c
/branches/sparc/kernel/generic/src/cpu/cpu.c
/branches/sparc/kernel/generic/src/interrupt/interrupt.c
/branches/sparc/kernel/generic/src/lib/func.c
/branches/sparc/kernel/generic/src/main/kinit.c
/branches/sparc/kernel/generic/src/main/main.c
/branches/sparc/kernel/generic/src/mm/as.c
/branches/sparc/kernel/generic/src/proc/thread.c
/branches/sparc/kernel/generic/src/syscall/syscall.c
/branches/sparc/kernel/generic/src/time/clock.c
/branches/sparc/kernel/generic/src/udebug/udebug.c
/branches/sparc/kernel/generic/src/udebug/udebug_ops.c
/branches/sparc/kernel/kernel.config
/branches/sparc/kernel/test/debug/mips1.c
/branches/sparc/uspace/Makefile
/branches/sparc/uspace/app/init/Makefile
/branches/sparc/uspace/app/init/init.c
/branches/sparc/uspace/app/klog/Makefile
/branches/sparc/uspace/app/tester/Makefile
/branches/sparc/uspace/lib/libc/Makefile
/branches/sparc/uspace/lib/libc/include/ipc/fb.h
/branches/sparc/uspace/lib/libc/include/libc.h
/branches/sparc/uspace/lib/libc/include/loader/pcb.h
/branches/sparc/uspace/lib/libc/include/string.h
/branches/sparc/uspace/srv/console/Makefile
/branches/sparc/uspace/srv/console/console.c
/branches/sparc/uspace/srv/console/gcons.c
/branches/sparc/uspace/srv/console/gcons.h
/branches/sparc/uspace/srv/console/screenbuffer.h
/branches/sparc/uspace/srv/devmap/Makefile
/branches/sparc/uspace/srv/fb/Makefile
/branches/sparc/uspace/srv/fb/fb.c
/branches/sparc/uspace/srv/fb/fb.h
/branches/sparc/uspace/srv/fb/font-8x16.c
/branches/sparc/uspace/srv/fb/font-8x16.h
/branches/sparc/uspace/srv/fb/main.c
/branches/sparc/uspace/srv/fb/msim.c
/branches/sparc/uspace/srv/fb/ppm.c
/branches/sparc/uspace/srv/fb/serial_console.c
/branches/sparc/uspace/srv/fb/serial_console.h
/branches/sparc/uspace/srv/fb/sgcn.c
/branches/sparc/uspace/srv/fs/fat/Makefile
/branches/sparc/uspace/srv/fs/fat/fat_ops.c
/branches/sparc/uspace/srv/fs/tmpfs/Makefile
/branches/sparc/uspace/srv/kbd/Makefile
/branches/sparc/uspace/srv/loader/main.c
/branches/sparc/uspace/srv/ns/Makefile
/branches/sparc/uspace/srv/pci/Makefile
/branches/sparc/uspace/srv/pci/libpci/Makefile
/branches/sparc/uspace/srv/rd/Makefile
/branches/sparc/uspace/srv/vfs/Makefile
3492 5916 d 13 h rimsky /branches/sparc/ Changes in trunk merged into the sparc branch. SILO's ramdisk issue solved by the CONFIG_RD_EXTERNAL option.  
/branches/sparc/kernel/arch/ia32/include/syscall.h
/branches/sparc/kernel/arch/ia32/src/syscall.c
/branches/sparc/kernel/arch/ppc32/include/regutils.h
/branches/sparc/kernel/generic/include/ipc/kbox.h
/branches/sparc/kernel/generic/include/udebug
/branches/sparc/kernel/generic/src/ipc/kbox.c
/branches/sparc/kernel/generic/src/udebug
/branches/sparc/uspace/app/bdsh/cmds/modules/cp
/branches/sparc/uspace/app/bdsh/cmds/modules/sleep
/branches/sparc/uspace/app/trace
/branches/sparc/uspace/dist/app
/branches/sparc/uspace/dist/cfg
/branches/sparc/uspace/dist/srv
/branches/sparc/uspace/lib/libc/generic/loader.c
/branches/sparc/uspace/lib/libc/generic/udebug.c
/branches/sparc/uspace/lib/libc/include/loader/loader.h
/branches/sparc/uspace/lib/libc/include/udebug.h
/branches/sparc/uspace/dist/etc
/branches/sparc/uspace/dist/sbin
/branches/sparc/boot/arch/amd64/Makefile.inc
/branches/sparc/boot/arch/arm32/loader/Makefile
/branches/sparc/boot/arch/ia32/Makefile.inc
/branches/sparc/boot/arch/ia64/loader/Makefile
/branches/sparc/boot/arch/mips32/loader/Makefile
/branches/sparc/boot/arch/ppc32/loader/Makefile
/branches/sparc/boot/arch/ppc64/loader/Makefile
/branches/sparc/boot/arch/sparc64/Makefile.inc
/branches/sparc/boot/arch/sparc64/loader/Makefile
/branches/sparc/boot/arch/sparc64/loader/main.c
/branches/sparc/boot/arch/sparc64/silo/silo.conf
/branches/sparc/boot/boot.config
/branches/sparc/boot/generic/string.c
/branches/sparc/boot/generic/string.h
/branches/sparc/kernel/Makefile
/branches/sparc/kernel/arch/amd64/include/syscall.h
/branches/sparc/kernel/arch/arm32/include/interrupt.h
/branches/sparc/kernel/arch/ia32/Makefile.inc
/branches/sparc/kernel/arch/ia32/include/asm.h
/branches/sparc/kernel/arch/ia32/include/cpu.h
/branches/sparc/kernel/arch/ia32/src/asm.S
/branches/sparc/kernel/arch/ia32/src/cpu/cpu.c
/branches/sparc/kernel/arch/ia32/src/proc/scheduler.c
/branches/sparc/kernel/arch/ia64/include/asm.h
/branches/sparc/kernel/arch/ppc32/include/asm/regname.h
/branches/sparc/kernel/arch/ppc32/include/exception.h
/branches/sparc/kernel/arch/sparc64/include/trap/regwin.h
/branches/sparc/kernel/arch/sparc64/include/trap/syscall.h
/branches/sparc/kernel/arch/sparc64/src/proc/thread.c
/branches/sparc/kernel/arch/sparc64/src/trap/trap_table.S
/branches/sparc/kernel/generic/include/ipc/ipc.h
/branches/sparc/kernel/generic/include/ipc/sysipc.h
/branches/sparc/kernel/generic/include/proc/task.h
/branches/sparc/kernel/generic/include/proc/thread.h
/branches/sparc/kernel/generic/include/syscall/syscall.h
/branches/sparc/kernel/generic/src/console/cmd.c
/branches/sparc/kernel/generic/src/ipc/ipc.c
/branches/sparc/kernel/generic/src/ipc/sysipc.c
/branches/sparc/kernel/generic/src/lib/memstr.c
/branches/sparc/kernel/generic/src/main/uinit.c
/branches/sparc/kernel/generic/src/mm/as.c
/branches/sparc/kernel/generic/src/proc/task.c
/branches/sparc/kernel/generic/src/proc/thread.c
/branches/sparc/kernel/generic/src/syscall/syscall.c
/branches/sparc/kernel/kernel.config
/branches/sparc/uspace/Makefile
/branches/sparc/uspace/app/bdsh/Makefile
/branches/sparc/uspace/app/bdsh/README
/branches/sparc/uspace/app/bdsh/cmds/builtins/cd/cd.c
/branches/sparc/uspace/app/bdsh/cmds/builtins/cd/entry.h
/branches/sparc/uspace/app/bdsh/cmds/cmds.h
/branches/sparc/uspace/app/bdsh/cmds/mknewcmd
/branches/sparc/uspace/app/bdsh/cmds/modules/cat/cat.c
/branches/sparc/uspace/app/bdsh/cmds/modules/cat/entry.h
/branches/sparc/uspace/app/bdsh/cmds/modules/help/entry.h
/branches/sparc/uspace/app/bdsh/cmds/modules/help/help.c
/branches/sparc/uspace/app/bdsh/cmds/modules/ls/entry.h
/branches/sparc/uspace/app/bdsh/cmds/modules/ls/ls.c
/branches/sparc/uspace/app/bdsh/cmds/modules/mkdir/entry.h
/branches/sparc/uspace/app/bdsh/cmds/modules/mkdir/mkdir.c
/branches/sparc/uspace/app/bdsh/cmds/modules/modules.h
/branches/sparc/uspace/app/bdsh/cmds/modules/pwd/entry.h
/branches/sparc/uspace/app/bdsh/cmds/modules/pwd/pwd.c
/branches/sparc/uspace/app/bdsh/cmds/modules/quit/entry.h
/branches/sparc/uspace/app/bdsh/cmds/modules/quit/quit.c
/branches/sparc/uspace/app/bdsh/cmds/modules/rm/entry.h
/branches/sparc/uspace/app/bdsh/cmds/modules/rm/rm.c
/branches/sparc/uspace/app/bdsh/cmds/modules/touch/entry.h
/branches/sparc/uspace/app/bdsh/cmds/modules/touch/touch.c
/branches/sparc/uspace/app/bdsh/config.h
/branches/sparc/uspace/app/bdsh/exec.c
/branches/sparc/uspace/app/bdsh/scli.c
/branches/sparc/uspace/app/bdsh/util.c
/branches/sparc/uspace/app/bdsh/util.h
/branches/sparc/uspace/app/init/init.c
/branches/sparc/uspace/app/tester/ipc/send_sync.c
/branches/sparc/uspace/app/tester/tester.c
/branches/sparc/uspace/lib/libc/Makefile
/branches/sparc/uspace/lib/libc/Makefile.toolchain
/branches/sparc/uspace/lib/libc/arch/amd64/include/syscall.h
/branches/sparc/uspace/lib/libc/arch/arm32/include/syscall.h
/branches/sparc/uspace/lib/libc/arch/ia32/include/syscall.h
/branches/sparc/uspace/lib/libc/arch/ia32/src/syscall.S
/branches/sparc/uspace/lib/libc/arch/ia64/include/syscall.h
/branches/sparc/uspace/lib/libc/arch/mips32/include/syscall.h
/branches/sparc/uspace/lib/libc/arch/ppc32/include/syscall.h
/branches/sparc/uspace/lib/libc/arch/ppc64/include/syscall.h
/branches/sparc/uspace/lib/libc/arch/sparc64/include/syscall.h
/branches/sparc/uspace/lib/libc/generic/ipc.c
/branches/sparc/uspace/lib/libc/generic/smc.c
/branches/sparc/uspace/lib/libc/generic/string.c
/branches/sparc/uspace/lib/libc/generic/task.c
/branches/sparc/uspace/lib/libc/generic/time.c
/branches/sparc/uspace/lib/libc/generic/tls.c
/branches/sparc/uspace/lib/libc/generic/vfs/canonify.c
/branches/sparc/uspace/lib/libc/generic/vfs/vfs.c
/branches/sparc/uspace/lib/libc/include/ipc/ipc.h
/branches/sparc/uspace/lib/libc/include/ipc/loader.h
/branches/sparc/uspace/lib/libc/include/libc.h
/branches/sparc/uspace/lib/libc/include/loader/pcb.h
/branches/sparc/uspace/lib/libc/include/string.h
/branches/sparc/uspace/lib/libc/include/syscall.h
/branches/sparc/uspace/lib/libc/include/task.h
/branches/sparc/uspace/lib/libfs/Makefile
/branches/sparc/uspace/lib/softfloat/Makefile
/branches/sparc/uspace/lib/softint/Makefile
/branches/sparc/uspace/srv/loader/main.c
/branches/sparc/uspace/srv/vfs/vfs.c
/branches/sparc/uspace/srv/vfs/vfs_ops.c
3397 5948 d 18 h rimsky /branches/sparc/ Merged recent changes from trunk into the Sparc branch.  
/branches/sparc/uspace/app/bdsh
/branches/sparc/uspace/lib/libc/generic/getopt.c
/branches/sparc/uspace/lib/libc/generic/io/asprintf.c
/branches/sparc/uspace/lib/libc/include/getopt.h
/branches/sparc/boot/tools/ia64
/branches/sparc/uspace/app/cli
/branches/sparc/boot/arch/amd64/Makefile.inc
/branches/sparc/boot/arch/arm32/loader/Makefile
/branches/sparc/boot/arch/ia32/Makefile.inc
/branches/sparc/boot/arch/ia64/Makefile.inc
/branches/sparc/boot/arch/ia64/loader/Makefile
/branches/sparc/boot/arch/mips32/loader/Makefile
/branches/sparc/boot/arch/ppc32/loader/Makefile
/branches/sparc/boot/arch/ppc32/loader/main.c
/branches/sparc/boot/arch/ppc32/loader/ofwarch.c
/branches/sparc/boot/arch/ppc64/loader/Makefile
/branches/sparc/boot/arch/sparc64/loader/Makefile
/branches/sparc/boot/arch/sparc64/loader/boot.S
/branches/sparc/boot/arch/sparc64/loader/main.c
/branches/sparc/boot/arch/sparc64/loader/main.h
/branches/sparc/boot/genarch/balloc.h
/branches/sparc/contrib/toolchain/toolchain.amd64.sh
/branches/sparc/contrib/toolchain/toolchain.arm32.sh
/branches/sparc/contrib/toolchain/toolchain.ia32.sh
/branches/sparc/contrib/toolchain/toolchain.ia64.sh
/branches/sparc/contrib/toolchain/toolchain.mipseb32.sh
/branches/sparc/contrib/toolchain/toolchain.mipsel32.sh
/branches/sparc/contrib/toolchain/toolchain.ppc32.sh
/branches/sparc/contrib/toolchain/toolchain.ppc64.sh
/branches/sparc/contrib/toolchain/toolchain.sparc64.sh
/branches/sparc/kernel/arch/amd64/Makefile.inc
/branches/sparc/kernel/arch/amd64/include/atomic.h
/branches/sparc/kernel/arch/arm32/Makefile.inc
/branches/sparc/kernel/arch/ia32/Makefile.inc
/branches/sparc/kernel/arch/ia32/include/atomic.h
/branches/sparc/kernel/arch/ia32xen/Makefile.inc
/branches/sparc/kernel/arch/ia64/Makefile.inc
/branches/sparc/kernel/arch/mips32/Makefile.inc
/branches/sparc/kernel/arch/mips32/src/mm/tlb.c
/branches/sparc/kernel/arch/ppc32/Makefile.inc
/branches/sparc/kernel/arch/ppc64/Makefile.inc
/branches/sparc/kernel/arch/sparc64/Makefile.inc
/branches/sparc/kernel/arch/sparc64/include/atomic.h
/branches/sparc/kernel/generic/include/errno.h
/branches/sparc/kernel/generic/include/ipc/ipc.h
/branches/sparc/kernel/generic/src/ipc/ipc.c
/branches/sparc/kernel/generic/src/ipc/ipcrsc.c
/branches/sparc/kernel/generic/src/ipc/sysipc.c
/branches/sparc/kernel/generic/src/main/kinit.c
/branches/sparc/kernel/generic/src/mm/as.c
/branches/sparc/kernel/generic/src/mm/backend_anon.c
/branches/sparc/kernel/generic/src/mm/backend_elf.c
/branches/sparc/kernel/generic/src/proc/task.c
/branches/sparc/uspace/Makefile
/branches/sparc/uspace/app/init/init.c
/branches/sparc/uspace/lib/libc/Makefile
/branches/sparc/uspace/lib/libc/arch/amd64/Makefile.inc
/branches/sparc/uspace/lib/libc/arch/arm32/Makefile.inc
/branches/sparc/uspace/lib/libc/arch/ia32/Makefile.inc
/branches/sparc/uspace/lib/libc/arch/ia64/Makefile.inc
/branches/sparc/uspace/lib/libc/arch/mips32/Makefile.inc
/branches/sparc/uspace/lib/libc/arch/mips32eb/Makefile.inc
/branches/sparc/uspace/lib/libc/arch/ppc32/Makefile.inc
/branches/sparc/uspace/lib/libc/arch/ppc64/Makefile.inc
/branches/sparc/uspace/lib/libc/arch/sparc64/Makefile.inc
/branches/sparc/uspace/lib/libc/generic/io/printf_core.c
/branches/sparc/uspace/lib/libc/generic/io/sprintf.c
/branches/sparc/uspace/lib/libc/generic/io/vsnprintf.c
/branches/sparc/uspace/lib/libc/generic/ipc.c
/branches/sparc/uspace/lib/libc/include/stdio.h
/branches/sparc/uspace/srv/fs/fat/fat_ops.c
/branches/sparc/uspace/srv/fs/tmpfs/tmpfs_ops.c
/branches/sparc/uspace/srv/vfs/vfs_ops.c
3343 5972 d 15 h decky /branches/sparc/ add sparc branch  
/branches/sparc
3240 5991 d 21 h decky / move unfinished ObjC support to a separate branch  
/branches/cs
/trunk/kernel/generic/include/lib/objc.h
/trunk/kernel/generic/include/lib/objc_ext.h
/trunk/kernel/generic/src/lib/objc.c
/trunk/kernel/generic/src/lib/objc_ext.c
/trunk/kernel/Makefile
/trunk/kernel/arch/ia32/src/mm/as.c
/trunk/kernel/genarch/include/mm/page_pt.h
/trunk/kernel/genarch/src/mm/as_pt.c
/trunk/kernel/generic/include/mm/as.h
/trunk/kernel/generic/src/mm/as.c
/trunk/kernel/kernel.config
3222 6014 d 16 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
3186 6029 d 13 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
3104 6047 d 0 h svoboda /trunk/kernel/ Declare arguments for memstr.h operations as pointers instead of uintptr_t.  
/trunk/kernel/Makefile
/trunk/kernel/arch/amd64/include/memstr.h
/trunk/kernel/arch/amd64/src/pm.c
/trunk/kernel/arch/arm32/include/memstr.h
/trunk/kernel/arch/ia32/include/memstr.h
/trunk/kernel/arch/ia32/src/drivers/ega.c
/trunk/kernel/arch/ia32/src/pm.c
/trunk/kernel/arch/ia32/src/smp/smp.c
/trunk/kernel/arch/ia32xen/src/ia32xen.c
/trunk/kernel/arch/ia32xen/src/pm.c
/trunk/kernel/arch/ia32xen/src/smp/smp.c
/trunk/kernel/arch/ia64/include/memstr.h
/trunk/kernel/arch/ia64/src/drivers/ega.c
/trunk/kernel/arch/ia64/src/mm/vhpt.c
/trunk/kernel/arch/mips32/include/memstr.h
/trunk/kernel/arch/ppc32/include/memstr.h
/trunk/kernel/arch/ppc64/include/memstr.h
/trunk/kernel/arch/ppc64/src/mm/page.c
/trunk/kernel/arch/sparc64/include/memstr.h
/trunk/kernel/arch/sparc64/src/mm/as.c
/trunk/kernel/genarch/src/mm/as_pt.c
/trunk/kernel/genarch/src/mm/page_pt.c
/trunk/kernel/generic/include/memstr.h
/trunk/kernel/generic/src/adt/hash_table.c
/trunk/kernel/generic/src/cpu/cpu.c
/trunk/kernel/generic/src/ipc/ipc.c
/trunk/kernel/generic/src/lib/memstr.c
/trunk/kernel/generic/src/lib/objc_ext.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/slab.c
/trunk/kernel/generic/src/proc/thread.c
/trunk/kernel/test/mm/falloc2.c
/trunk/kernel/test/mm/slab1.c
/trunk/kernel/test/mm/slab2.c
3057 6049 d 17 h decky /trunk/kernel/generic/src/mm/ proper printf formatting  
/trunk/kernel/generic/src/mm/as.c
/trunk/kernel/generic/src/mm/buddy.c
/trunk/kernel/generic/src/mm/frame.c
/trunk/kernel/generic/src/mm/slab.c
2745 6146 d 20 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
2647 6219 d 13 h jermar /trunk/kernel/generic/src/mm/ Fix a bug in anonymous address space area sharing. Call the backend's share
function only if the source area is not already shared. Otherwise increment the
sh_info refcount. Without this fix, the kernel will try to recreate the pagemap
if three and more address space areas attempt to share the same data.
 
/trunk/kernel/generic/src/mm/as.c
/trunk/kernel/generic/src/mm/backend_elf.c
2556 6297 d 21 h jermar /trunk/kernel/generic/ Rename as_get_size() to as_area_get_size() and add a doxygen comment.  
/trunk/kernel/generic/include/mm/as.h
/trunk/kernel/generic/src/ipc/sysipc.c
/trunk/kernel/generic/src/mm/as.c
2183 6474 d 16 h jermar /trunk/kernel/generic/ Continue to de-oversynchronize the kernel.
- replace as->refcount with an atomic counter; accesses to this
reference counter are not to be done when the as->lock mutex is held;
this gets us rid of mutex_lock_active();

Remove the possibility of a deadlock between TLB shootdown and asidlock.
- get rid of mutex_lock_active() on as->lock
- when locking the asidlock spinlock, always do it conditionally and with
preemption disabled; in the unsuccessful case, enable interrupts and try again
- there should be no deadlock between TLB shootdown and the as->lock mutexes
- PLEASE REVIEW !!!

Add DEADLOCK_PROBE's to places where we have spinlock_trylock() loops.
 
/trunk/kernel/generic/include/mm/as.h
/trunk/kernel/generic/include/synch/mutex.h
/trunk/kernel/generic/include/synch/spinlock.h
/trunk/kernel/generic/src/ipc/ipc.c
/trunk/kernel/generic/src/ipc/irq.c
/trunk/kernel/generic/src/mm/as.c
/trunk/kernel/generic/src/proc/scheduler.c
/trunk/kernel/generic/src/proc/task.c
/trunk/kernel/generic/src/proc/thread.c
/trunk/kernel/generic/src/synch/spinlock.c
/trunk/kernel/generic/src/synch/waitq.c
/trunk/kernel/generic/src/time/timeout.c
2170 6479 d 10 h jermar /trunk/kernel/ Simplify synchronization in as_switch().
The function was oversynchronized, which
was causing deadlocks on the address
space mutex.

Now, address spaces can only be switched
when the asidlock is held. This also protects
stealing of ASIDs. No other synchronization
is necessary.
 
/trunk/kernel/arch/ia64/src/mm/as.c
/trunk/kernel/arch/mips32/src/mm/as.c
/trunk/kernel/arch/ppc32/src/mm/as.c
/trunk/kernel/arch/ppc64/src/mm/as.c
/trunk/kernel/arch/sparc64/src/mm/as.c
/trunk/kernel/genarch/src/mm/asid.c
/trunk/kernel/generic/include/mm/as.h
/trunk/kernel/generic/src/mm/as.c
2141 6483 d 8 h jermar /trunk/ The Ultimate Solution To Illegal Virtual Aliases.
It is better to avoid them completely than to fight them.
Switch the sparc64 port to 16K pages. The TLBs and TSBs
continue to operate with 8K pages only. Page tables and
other generic parts operate with 16K pages.

Because the MMU doesn't support 16K directly, each 16K
page is emulated by a pair of 8K pages. With 16K pages,
illegal aliases cannot be created in 16K D-cache.
 
/trunk/kernel/arch/sparc64/src/mm/cache.S
/trunk/kernel/arch/sparc64/src/mm/cache.c
/trunk/kernel/arch/sparc64/src/mm/cache_asm.S
/trunk/boot/arch/sparc64/loader/asm.h
/trunk/kernel/arch/sparc64/Makefile.inc
/trunk/kernel/arch/sparc64/include/cpu.h
/trunk/kernel/arch/sparc64/include/mm/as.h
/trunk/kernel/arch/sparc64/include/mm/cache.h
/trunk/kernel/arch/sparc64/include/mm/frame.h
/trunk/kernel/arch/sparc64/include/mm/page.h
/trunk/kernel/arch/sparc64/include/mm/tsb.h
/trunk/kernel/arch/sparc64/include/stack.h
/trunk/kernel/arch/sparc64/src/cpu/cpu.c
/trunk/kernel/arch/sparc64/src/mm/as.c
/trunk/kernel/arch/sparc64/src/mm/page.c
/trunk/kernel/arch/sparc64/src/mm/tlb.c
/trunk/kernel/arch/sparc64/src/mm/tsb.c
/trunk/kernel/arch/sparc64/src/smp/ipi.c
/trunk/kernel/arch/sparc64/src/trap/interrupt.c
/trunk/kernel/genarch/src/fb/fb.c
/trunk/kernel/genarch/src/mm/page_ht.c
/trunk/kernel/generic/src/console/klog.c
/trunk/kernel/generic/src/ddi/ddi.c
/trunk/kernel/generic/src/lib/rd.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/time/clock.c
/trunk/uspace/fb/ega.c
/trunk/uspace/fb/fb.c
/trunk/uspace/fb/main.c
/trunk/uspace/klog/klog.c
/trunk/uspace/libc/arch/sparc64/_link.ld.in
/trunk/uspace/libc/arch/sparc64/include/config.h
/trunk/uspace/libc/arch/sparc64/include/stack.h
/trunk/uspace/libc/generic/as.c
/trunk/uspace/libc/generic/mman.c
/trunk/uspace/libc/generic/time.c
/trunk/uspace/libc/include/as.h
/trunk/uspace/ns/ns.c
/trunk/uspace/rd/rd.c
2133 6484 d 13 h jermar /trunk/kernel/generic/src/mm/ Coding style and indentation fixes.  
/trunk/kernel/generic/src/mm/as.c
/trunk/kernel/generic/src/mm/frame.c
/trunk/kernel/generic/src/mm/tlb.c
2126 6527 d 9 h decky /trunk/kernel/ small cleanup, more work coming  
/trunk/kernel/generic/include/lib/objc_ext.h
/trunk/kernel/generic/src/lib/objc_ext.c
/trunk/kernel/generic/src/lib/objc.c
/trunk/kernel/Makefile
/trunk/kernel/generic/include/mm/as.h
/trunk/kernel/generic/src/mm/as.c
2125 6527 d 12 h decky /trunk/ experimental support for Objective C
(disabled by default)
 
/trunk/kernel/generic/include/lib/objc.h
/trunk/kernel/generic/src/lib/objc.c
/trunk/contrib/toolchain/toolchain.ia32.sh
/trunk/contrib/toolchain/toolchain.sparc64.sh
/trunk/kernel/Makefile
/trunk/kernel/arch/amd64/Makefile.inc
/trunk/kernel/arch/ia32/Makefile.inc
/trunk/kernel/arch/ia32/src/mm/as.c
/trunk/kernel/arch/ia32xen/Makefile.inc
/trunk/kernel/arch/ia64/Makefile.inc
/trunk/kernel/arch/mips32/Makefile.inc
/trunk/kernel/arch/ppc32/Makefile.inc
/trunk/kernel/arch/ppc64/Makefile.inc
/trunk/kernel/arch/sparc64/Makefile.inc
/trunk/kernel/genarch/include/mm/page_pt.h
/trunk/kernel/genarch/src/mm/as_pt.c
/trunk/kernel/generic/include/memstr.h
/trunk/kernel/generic/include/mm/as.h
/trunk/kernel/generic/include/print.h
/trunk/kernel/generic/src/lib/memstr.c
/trunk/kernel/generic/src/mm/as.c
/trunk/kernel/generic/src/printf/vprintf.c
/trunk/kernel/kernel.config
2106 6535 d 19 h jermar /trunk/kernel/ Merge as_t structure into one and leave the differring parts in as_genarch_t.

Indentation and formatting changes in header files.
 
/trunk/kernel/arch/amd64/src/mm/page.c
/trunk/kernel/arch/amd64/src/pm.c
/trunk/kernel/arch/ia32/src/mm/page.c
/trunk/kernel/arch/ia32xen/src/mm/page.c
/trunk/kernel/arch/sparc64/include/mm/tsb.h
/trunk/kernel/genarch/include/mm/as_ht.h
/trunk/kernel/genarch/include/mm/as_pt.h
/trunk/kernel/genarch/include/mm/page_ht.h
/trunk/kernel/genarch/src/mm/as_pt.c
/trunk/kernel/genarch/src/mm/page_pt.c
/trunk/kernel/generic/include/adt/btree.h
/trunk/kernel/generic/include/adt/fifo.h
/trunk/kernel/generic/include/adt/hash_table.h
/trunk/kernel/generic/include/adt/list.h
/trunk/kernel/generic/include/console/chardev.h
/trunk/kernel/generic/include/console/kconsole.h
/trunk/kernel/generic/include/ddi/ddi_arg.h
/trunk/kernel/generic/include/ddi/irq.h
/trunk/kernel/generic/include/ipc/ipc.h
/trunk/kernel/generic/include/ipc/irq.h
/trunk/kernel/generic/include/ipc/sysipc.h
/trunk/kernel/generic/include/mm/as.h
/trunk/kernel/generic/include/mm/buddy.h
/trunk/kernel/generic/include/mm/mm.h
/trunk/kernel/generic/include/mm/page.h
/trunk/kernel/generic/include/mm/slab.h
/trunk/kernel/generic/include/mm/tlb.h
/trunk/kernel/generic/include/proc/task.h
/trunk/kernel/generic/include/proc/thread.h
/trunk/kernel/generic/include/synch/condvar.h
/trunk/kernel/generic/include/synch/futex.h
/trunk/kernel/generic/include/synch/rwlock.h
/trunk/kernel/generic/include/synch/semaphore.h
/trunk/kernel/generic/include/synch/synch.h
/trunk/kernel/generic/include/synch/waitq.h
/trunk/kernel/generic/include/time/timeout.h
/trunk/kernel/generic/src/mm/as.c

Show All