1868 |
6599 d 13 h |
jermar |
/trunk/ |
sparc64 work.
- the syscall wrapper needs to use the "memory"
clobber specifier to prevent over-optimization.
- on sparc64, the user address space spans the whole
64-bit space and therefore the macro
USER_ADDRESS_SPACE_SIZE_ARCH, as it was defined,
overflows to 0
- stop using USER_ADDRESS_SPACE_SIZE_ARCH and define
MAX_HEAP_SIZE instead
- in our situation when kernel and user address spaces
are separate, the G (global) bit cannot be used
(there is no point in it anymore)
- add the DEBUG() macro to stdio.h; DEBUG() uses
SYS_IO and is a good debugging tool for getting
early userspace to work |
|
/trunk/kernel/arch/sparc64/src/mm/tlb.c /trunk/kernel/arch/sparc64/src/start.S /trunk/kernel/generic/include/mm/as.h /trunk/uspace/libc/arch/sparc64/include/syscall.h /trunk/uspace/libc/generic/as.c /trunk/uspace/libc/generic/psthread.c /trunk/uspace/libc/include/as.h /trunk/uspace/libc/include/stdio.h
|
1864 |
6601 d 4 h |
jermar |
/trunk/ |
sparc64 update.
- Prototype userspace layer implementation that
at least relates to sparc64 and compiles cleanly.
- Fixes for kernel's preemptible_handler and code
related to running userspace.
- Enable userspace. Several dozen instructions
are now run in userspace! We are pretty near
the userspace milestone for sparc64. |
|
/trunk/uspace/libc/arch/sparc64/include/stack.h
/trunk/boot/arch/sparc64/loader/Makefile /trunk/kernel/arch/sparc64/include/asm.h /trunk/kernel/arch/sparc64/include/mm/as.h /trunk/kernel/arch/sparc64/include/mm/tlb.h /trunk/kernel/arch/sparc64/include/trap/mmu.h /trunk/kernel/arch/sparc64/src/asm.S /trunk/kernel/arch/sparc64/src/context.S /trunk/kernel/arch/sparc64/src/mm/tlb.c /trunk/kernel/arch/sparc64/src/proc/scheduler.c /trunk/kernel/arch/sparc64/src/sparc64.c /trunk/kernel/arch/sparc64/src/start.S /trunk/kernel/arch/sparc64/src/trap/trap_table.S /trunk/kernel/generic/src/proc/task.c /trunk/uspace/libc/arch/sparc64/_link.ld.in /trunk/uspace/libc/arch/sparc64/include/atomic.h /trunk/uspace/libc/arch/sparc64/include/config.h /trunk/uspace/libc/arch/sparc64/include/context_offset.h /trunk/uspace/libc/arch/sparc64/include/endian.h /trunk/uspace/libc/arch/sparc64/include/limits.h /trunk/uspace/libc/arch/sparc64/include/psthread.h /trunk/uspace/libc/arch/sparc64/include/stackarg.h /trunk/uspace/libc/arch/sparc64/include/syscall.h /trunk/uspace/libc/arch/sparc64/include/thread.h /trunk/uspace/libc/arch/sparc64/include/types.h /trunk/uspace/libc/arch/sparc64/src/entry.s /trunk/uspace/libc/arch/sparc64/src/psthread.S /trunk/uspace/libc/arch/sparc64/src/thread.c /trunk/uspace/libc/arch/sparc64/src/thread_entry.s
|
1863 |
6603 d 7 h |
jermar |
/trunk/ |
Allow architectures to decide between inlined and not inlined version of syscall wrapper.
Implement inlined syscall wrapper for sparc64. |
|
/trunk/uspace/libc/arch/amd64/include/syscall.h /trunk/uspace/libc/arch/ia32/include/syscall.h /trunk/uspace/libc/arch/ia64/include/syscall.h /trunk/uspace/libc/arch/mips32/include/syscall.h /trunk/uspace/libc/arch/mips32eb/include/syscall.h /trunk/uspace/libc/arch/ppc32/include/syscall.h /trunk/uspace/libc/arch/ppc64/include/syscall.h /trunk/uspace/libc/arch/sparc64/include/syscall.h /trunk/uspace/libc/include/syscall.h
/trunk/uspace/libc/arch/sparc64/src/syscall.c
/trunk/kernel/arch/sparc64/include/trap/syscall.h /trunk/kernel/arch/sparc64/src/trap/trap_table.S /trunk/kernel/generic/include/syscall/syscall.h /trunk/uspace/libc/arch/sparc64/Makefile.inc /trunk/uspace/libc/generic/ddi.c /trunk/uspace/libc/include/libc.h /trunk/uspace/libc/include/sys/types.h
|