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
2015 6427 d 14 h jermar /trunk/ Rework support for virtually indexed cache.
Instead of repeatedly flushing the data cache, which was a huge overkill, refuse to create an illegal address alias
in the kernel (again) and allocate appropriate page color in userspace instead. Extend the detection also to
SYS_PHYSMEM_MAP syscall.

Add support for tracking physical memory areas mappable by SYS_PHYSMEM_MAP.

Lots of coding style changes.
 
/trunk/uspace/libc/include/bitops.h
/trunk/kernel/arch/ia32/src/drivers/ega.c
/trunk/kernel/arch/sparc64/include/interrupt.h
/trunk/kernel/arch/sparc64/include/mm/cache.h
/trunk/kernel/arch/sparc64/src/mm/as.c
/trunk/kernel/arch/sparc64/src/mm/cache.c
/trunk/kernel/arch/sparc64/src/mm/page.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/generic/include/ddi/ddi.h
/trunk/kernel/generic/include/mm/as.h
/trunk/kernel/generic/include/mm/page.h
/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/main/main.c
/trunk/kernel/generic/src/mm/as.c
/trunk/kernel/generic/src/sysinfo/sysinfo.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/amd64/include/config.h
/trunk/uspace/libc/arch/ia32/include/config.h
/trunk/uspace/libc/arch/ia64/include/config.h
/trunk/uspace/libc/arch/mips32/include/config.h
/trunk/uspace/libc/arch/ppc32/include/config.h
/trunk/uspace/libc/arch/ppc64/include/config.h
/trunk/uspace/libc/arch/sparc64/include/config.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
2014 6429 d 15 h decky /trunk/ version bump to Xen 3.0.3 (not fully operational yet)  
/trunk/boot/arch/ia32xen/Makefile.inc
/trunk/boot/arch/ia32xen/grub/menu.debug.lst
/trunk/boot/arch/ia32xen/grub/xen.debug.gz
/trunk/boot/arch/ia32xen/grub/xen.gz
/trunk/kernel/arch/ia32xen/_link.ld.in
/trunk/kernel/arch/ia32xen/include/boot/boot.h
/trunk/kernel/arch/ia32xen/src/boot/boot.S
2012 6430 d 11 h jermar /trunk/ Eliminate confusion between SYS_MAP_PHYSMEM and sys_physmem_map.
The syscall is to be called SYS_PHYSMEM_MAP from now on and the functions that participate in its implementation are
called *physmem_map().
 
/trunk/kernel/generic/include/ddi/ddi_arg.h
/trunk/kernel/generic/include/syscall/syscall.h
/trunk/kernel/generic/src/ddi/ddi.c
/trunk/uspace/fb/ega.c
/trunk/uspace/fb/fb.c
/trunk/uspace/libc/generic/ddi.c
/trunk/uspace/libc/include/ddi.h
/trunk/uspace/ns/ns.c
/trunk/uspace/rd/rd.c
2011 6431 d 18 h decky /trunk/kernel/ resolve ticket #4  
/trunk/kernel/Makefile
2010 6432 d 12 h jermar /trunk/kernel/arch/sparc64/src/mm/ Fix comment.  
/trunk/kernel/arch/sparc64/src/mm/as.c
2009 6432 d 13 h jermar /trunk/kernel/ Initial support for handling illegal virtual aliases on sparc64.  
/trunk/kernel/arch/sparc64/src/mm/cache.c
/trunk/kernel/arch/sparc64/src/mm/cache_asm.S
/trunk/kernel/arch/sparc64/src/mm/cache.S
/trunk/kernel/Makefile
/trunk/kernel/arch/sparc64/Makefile.inc
/trunk/kernel/arch/sparc64/include/cpu.h
/trunk/kernel/arch/sparc64/include/interrupt.h
/trunk/kernel/arch/sparc64/include/mm/as.h
/trunk/kernel/arch/sparc64/include/mm/cache.h
/trunk/kernel/arch/sparc64/src/cpu/cpu.c
/trunk/kernel/arch/sparc64/src/mm/as.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/start.S
/trunk/kernel/arch/sparc64/src/trap/interrupt.c
/trunk/kernel/generic/include/mm/as.h
/trunk/kernel/generic/src/mm/as.c
/trunk/kernel/kernel.config
2008 6434 d 14 h jermar /trunk/kernel/arch/sparc64/ Add dcache_flush() function that flushes D-Cache on sparc64.  
/trunk/kernel/arch/sparc64/include/mm/cache.h
/trunk/kernel/arch/sparc64/src/mm/cache.S
/trunk/kernel/arch/sparc64/Makefile.inc
/trunk/kernel/arch/sparc64/include/arch.h
/trunk/kernel/arch/sparc64/src/start.S
2007 6435 d 12 h jermar /trunk/kernel/ Introduce page colors. So far, only sparc64 uses correct page color bits. Other architectures have a dummy define
specifying zero bits for a page color.

There is a new check of page color in as_area_share(). Because of lack of support for this in the userspace, the
check has been #ifef'ed out.
 
/trunk/kernel/arch/amd64/include/mm/page.h
/trunk/kernel/arch/ia32/include/mm/page.h
/trunk/kernel/arch/ia32xen/include/mm/page.h
/trunk/kernel/arch/ia64/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/arch/sparc64/include/mm/page.h
/trunk/kernel/genarch/src/mm/asid_fifo.c
/trunk/kernel/generic/include/mm/page.h
/trunk/kernel/generic/src/mm/as.c
2005 6436 d 18 h decky /trunk/ update rd  
/trunk/kernel/generic/include/lib/rd.h
/trunk/kernel/generic/src/lib/rd.c
/trunk/kernel/generic/src/main/kinit.c
/trunk/uspace/libc/generic/sysinfo.c
/trunk/uspace/rd/rd.c
2004 6436 d 18 h decky /trunk/kernel/generic/include/ cleanup  
/trunk/kernel/generic/include/atomic.h
/trunk/kernel/generic/include/bitops.h
/trunk/kernel/generic/include/sysinfo/sysinfo.h
2003 6436 d 18 h decky /trunk/kernel/arch/ cleanup endian conversion macros  
/trunk/kernel/arch/amd64/include/byteorder.h
/trunk/kernel/arch/ia32/include/byteorder.h
/trunk/kernel/arch/ia64/include/byteorder.h
/trunk/kernel/arch/mips32/include/byteorder.h
/trunk/kernel/arch/ppc32/include/byteorder.h
/trunk/kernel/arch/ppc64/include/byteorder.h
/trunk/kernel/arch/sparc64/include/byteorder.h
2002 6436 d 20 h decky /trunk/kernel/generic/ rd work  
/trunk/kernel/generic/include/byteorder.h
/trunk/kernel/generic/include/lib/rd.h
/trunk/kernel/generic/src/lib/rd.c
/trunk/kernel/generic/src/main/kinit.c
2001 6438 d 11 h jermar /trunk/kernel/ Indentation and comment fixes.  
/trunk/kernel/arch/sparc64/src/mm/tsb.c
/trunk/kernel/arch/sparc64/src/start.S
/trunk/kernel/doc/arch/sparc64
/trunk/kernel/generic/include/macros.h
/trunk/kernel/generic/include/mm/frame.h
2000 6438 d 23 h decky /trunk/kernel/ move files to more proper locations  
/trunk/kernel/generic/include/lib
/trunk/kernel/generic/include/lib/elf.h
/trunk/kernel/generic/include/lib/rd.h
/trunk/kernel/generic/src/lib/rd.c
/trunk/kernel/generic/include/elf.h
/trunk/kernel/generic/include/mm/rd.h
/trunk/kernel/generic/src/mm/rd.c
/trunk/kernel/Makefile
/trunk/kernel/generic/include/mm/as.h
/trunk/kernel/generic/src/lib/elf.c
/trunk/kernel/generic/src/main/kinit.c
/trunk/kernel/generic/src/mm/backend_elf.c
/trunk/kernel/generic/src/proc/task.c
1999 6438 d 23 h decky /trunk/ start RAM disk support  
/trunk/kernel/generic/include/mm/rd.h
/trunk/kernel/generic/src/mm/rd.c
/trunk/uspace/rd
/trunk/uspace/rd/Makefile
/trunk/uspace/rd/rd.c
/trunk/kernel/Makefile
/trunk/kernel/generic/src/main/kinit.c
/trunk/kernel/generic/src/main/main.c
/trunk/uspace/Makefile
/trunk/uspace/libc/include/ipc/services.h
1996 6444 d 15 h jermar /trunk/kernel/ Add option to compile the sparc64 kernel without the TTE_CV bit support.
The bit is not used by default now.
Enabling it may theoretically lead to physical memory inconsistencies until code that
mitigates the problem is written.
 
/trunk/kernel/Makefile
/trunk/kernel/arch/sparc64/src/mm/tlb.c
/trunk/kernel/arch/sparc64/src/mm/tsb.c
/trunk/kernel/arch/sparc64/src/start.S
/trunk/kernel/kernel.config
1995 6444 d 15 h jermar /trunk/kernel/ Move general configuration out of debugging configuration.
Add CONFIG_VIRT_IDX_CACHE.
 
/trunk/kernel/kernel.config
1994 6444 d 20 h decky /trunk/ Add BGR 0888 visual for Ultra 60  
/trunk/kernel/arch/sparc64/src/drivers/scr.c
/trunk/kernel/genarch/include/fb/visuals.h
/trunk/kernel/genarch/src/fb/fb.c
/trunk/uspace/fb/fb.c
1993 6444 d 21 h decky /trunk/ make framebuffer code more generic  
/trunk/kernel/genarch/include/fb/visuals.h
/trunk/kernel/arch/ia32/src/drivers/vesa.c
/trunk/kernel/arch/mips32/src/mips32.c
/trunk/kernel/arch/ppc32/src/ppc32.c
/trunk/kernel/arch/ppc64/src/ppc64.c
/trunk/kernel/arch/sparc64/src/drivers/scr.c
/trunk/kernel/genarch/include/fb/fb.h
/trunk/kernel/genarch/src/fb/fb.c
/trunk/uspace/fb/fb.c
1991 6445 d 14 h jermar /trunk/kernel/genarch/src/fb/ The prefered switch statement indentation is the one replaced by the previous commit :-)  
/trunk/kernel/genarch/src/fb/fb.c
1990 6445 d 18 h decky /trunk/kernel/genarch/src/fb/ framebuffer cleanup  
/trunk/kernel/genarch/src/fb/fb.c
1988 6446 d 11 h jermar /trunk/kernel/arch/sparc64/src/mm/ Update comment and move initialization code away from application processor codepath.  
/trunk/kernel/arch/sparc64/src/mm/frame.c
1987 6446 d 15 h jermar /trunk/kernel/arch/sparc64/src/ Take the possible difference between kernel and physical address into account in TSB and userspace window buffer
allocation and deallocation code.
 
/trunk/kernel/arch/sparc64/src/mm/as.c
/trunk/kernel/arch/sparc64/src/proc/thread.c
1986 6446 d 18 h decky /trunk/kernel/arch/sparc64/src/drivers/ The FFB framebuffer looks more like 32b  
/trunk/kernel/arch/sparc64/src/drivers/scr.c
1985 6446 d 19 h decky /trunk/kernel/ add benchmarking configuration directive  
/trunk/kernel/Makefile
/trunk/kernel/kernel.config
1984 6447 d 14 h jermar /trunk/kernel/arch/sparc64/ sparc64 work:
- untested support for Psycho PCI controller
 
/trunk/kernel/arch/sparc64/include/drivers/pci.h
/trunk/kernel/arch/sparc64/src/drivers/pci.c
1983 6448 d 17 h jermar /trunk/kernel/arch/sparc64/src/mm/ sparc64 work:
- fix computation of the frame allocator configuration frame
- mark the first physical frame unavailable, no matter what is its address

Because of that, we can now boot past the frame_arch_init() on the Ultra 60 now.
 
/trunk/kernel/arch/sparc64/src/mm/frame.c
1982 6448 d 21 h jermar /trunk/ Modify the sparc64 startup code to not cause MMU traps before it takes over the TLB and
the trap table. Fix several PA2KA and KA2PA omittions or errors. Fix configuration to pass
the DEFS variable along.
 
/trunk/boot/arch/sparc64/Makefile.inc
/trunk/boot/arch/sparc64/loader/Makefile
/trunk/boot/boot.config
/trunk/kernel/arch/sparc64/src/mm/page.c
/trunk/kernel/arch/sparc64/src/sparc64.c
/trunk/kernel/arch/sparc64/src/start.S
1981 6448 d 21 h jermar /trunk/kernel/ Indentation, formatting and minor changes.  
/trunk/kernel/genarch/src/fb/fb.c
/trunk/kernel/generic/src/mm/frame.c
1980 6448 d 22 h jermar /trunk/kernel/arch/mips32/include/mm/ mips32 mm has not been under construction for while now  
/trunk/kernel/arch/mips32/include/mm/page.h
1979 6449 d 12 h jermar /trunk/ Configuration changes on sparc64.
Compile TSB support by default.
Ask whether to start AP processors in the loader.
 
/trunk/boot/Makefile
/trunk/boot/arch/sparc64/loader/main.c
/trunk/boot/boot.config
/trunk/kernel/kernel.config
1978 6449 d 13 h jermar /trunk/ sparc64 code to support physical memory that starts on non-zero addresses.
Still needs to be tested on systems with such setup.
 
/trunk/boot/arch/sparc64/loader/asm.S
/trunk/boot/arch/sparc64/loader/asm.h
/trunk/boot/arch/sparc64/loader/main.c
/trunk/boot/arch/sparc64/loader/main.h
/trunk/boot/arch/sparc64/loader/ofwarch.c
/trunk/boot/arch/sparc64/loader/ofwarch.h
/trunk/kernel/arch/sparc64/include/boot/boot.h
/trunk/kernel/arch/sparc64/include/mm/page.h
/trunk/kernel/arch/sparc64/include/trap/mmu.h
/trunk/kernel/arch/sparc64/src/start.S
1977 6450 d 10 h jermar /trunk/ Fix bad indentation in ofw.c

sparc64 work:
o Fix copyright in main.c
o Move code from unused parts of the trap table.
 
/trunk/boot/arch/sparc64/loader/main.c
/trunk/boot/genarch/ofw.c
/trunk/kernel/arch/sparc64/src/trap/trap_table.S
1976 6455 d 19 h jermar /trunk/kernel/arch/sparc64/ sparc64 context does not have to include the CLEANWIN register.  
/trunk/kernel/arch/sparc64/include/context.h
/trunk/kernel/arch/sparc64/include/context_offset.h
/trunk/kernel/arch/sparc64/src/context.S
1975 6459 d 12 h jermar /trunk/kernel/arch/sparc64/src/ Typo.  
/trunk/kernel/arch/sparc64/src/start.S
1974 6459 d 15 h jermar /trunk/kernel/genarch/src/ofw/ Rewrite OFW device tree traversal algorithms to iterate over the list of peers rather than recurse on each
peer node. This saves us from big troubles with stack overflows.
 
/trunk/kernel/genarch/src/ofw/ofw_tree.c
1972 6461 d 20 h jermar /trunk/ Modify selected function to consume less stack space.

Avoid flushw instruction in the sparc64 loader.
 
/trunk/boot/arch/sparc64/loader/boot.S
/trunk/boot/arch/sparc64/loader/main.c
/trunk/kernel/genarch/src/ofw/ofw_tree.c
/trunk/kernel/generic/src/console/kconsole.c
1970 6468 d 21 h decky /trunk/kernel/arch/ia32/src/smp/ use new IRQ scheme in l_apic_timer_interrupt()  
/trunk/kernel/arch/ia32/src/smp/apic.c
1960 6470 d 13 h jermar /trunk/kernel/arch/sparc64/src/mm/ Fix the following bug:

Ticket #3 data_access_exception after killing task on sparc64
 
/trunk/kernel/arch/sparc64/src/mm/tsb.c
1959 6470 d 20 h decky /trunk/kernel/arch/ia32xen/src/ ia32xen: adopt new IRQ interface  
/trunk/kernel/arch/ia32xen/src/ia32xen.c
/trunk/kernel/arch/ia32xen/src/interrupt.c
/trunk/kernel/arch/ia32xen/src/mm/page.c
/trunk/kernel/arch/ia32xen/src/pm.c