Subversion Repositories HelenOS

Rev

Go to most recent revision | Show changed files | Directory listing | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
2089 6330 d 22 h decky /trunk/ huge type system cleanup
remove cyclical type dependencies across multiple header files
many minor coding style fixes
 
2076 6339 d 23 h jermar /trunk/kernel/ Beat the implicit illegal virtual alias created by reusing userspace frames.
In the anonymous and ELF backends, if the architecture has virtually indexed D-cache,
selectively flush cachelines belonging to the frame being freed.
This fixes Ticket #20.
 
2071 6341 d 15 h jermar /trunk/ (c) versus (C)  
2068 6348 d 23 h jermar /trunk/kernel/ Formatting and indentation fixes.  
2065 6355 d 14 h jermar /trunk/kernel/ Coding style fixes and formatting improvements.  
2054 6369 d 14 h jermar /trunk/kernel/ Fix important comment in kernel/arch/sparc64/src/proc/scheduler.c.

Improve framebuffer code.

Formatting and indentation fixes.
 
2048 6373 d 17 h jermar /trunk/ Formatting and indentation changes.  
2015 6380 d 15 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.
 
2009 6385 d 15 h jermar /trunk/kernel/ Initial support for handling illegal virtual aliases on sparc64.  
2008 6387 d 16 h jermar /trunk/kernel/arch/sparc64/ Add dcache_flush() function that flushes D-Cache on sparc64.  
2007 6388 d 14 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.
 
1978 6402 d 15 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.
 
1954 6424 d 14 h jermar /trunk/ Minor changes. Some coding style fixes and also a type (tee vs. tree).
One AS -> as change.
 
1946 6431 d 13 h jermar /trunk/kernel/arch/sparc64/ sparc64 work.
- Improve panic screen on data_access_exception
by dumping contents of DSFSR and DSFAR.
- Change the FHC enable interrupt code to only
set the IMAP_V bit.
 
1891 6462 d 14 h jermar /trunk/kernel/ sparc64 work:
- Experimental support for TSB (Translation Storage Buffer).
 
1890 6463 d 0 h jermar /trunk/ - Create a dedicated slab cache for as_t objects and switch from malloc/free to slab_alloc/slab_free for
them.

- Slightly fix and improve both the kernel and userspace atomic_add() on sparc64.

- More TSB work on the sparc64 front.
 
1889 6463 d 16 h jermar /trunk/kernel/ Fix bug in mm/as.c:
- as_area_destroy() should not work with AS but as

sparc64 work:
- start implementing TSB support
 
1864 6477 d 12 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.
 
1860 6480 d 17 h jermar /trunk/kernel/ A lot of untested sparc64 stuff:
- Write ASID to hardware when a thread is about to run in userspace.
- Add userspace() and switch_to_userspace() functions.
- Handle special cases when the userspace spill/fill handler causes MMU trap.
- Resolve some TODOs in the existing sparc64 code.
- sparc64 has now C99 compliant header guards.
- Formatting and indentation fixes.
 
1857 6481 d 20 h jermar /trunk/kernel/arch/sparc64/ sparc64 work.
More bits needed to reach the userspace milestone were added.
The preemptible_handler(), still a prototype, now contains all functionality it needs.
Some sanitation was added to functions expecting page-aligned pointers to
userspace window buffer.
 

Show All