Subversion Repositories HelenOS

Rev

Go to most recent revision | Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
2170 6276 d 20 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.
 
2071 6349 d 21 h jermar /trunk/ (c) versus (C)  
1891 6470 d 20 h jermar /trunk/kernel/ sparc64 work:
- Experimental support for TSB (Translation Storage Buffer).
 
1889 6471 d 22 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
 
1851 6499 d 4 h jermar /trunk/kernel/ sparc64 work.
Define the istate structure.
Move the identity-mapping handler to assembly.
Make the preemptible handler more general so that TL=1 MMU exceptions can make use of it.

Little bit of formatting and indentation.
 
1787 6540 d 0 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1702 6568 d 3 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1637 6574 d 17 h jermar /kernel/trunk/genarch/src/mm/ Improve comment.  
1636 6574 d 17 h jermar /kernel/trunk/ Move comment.

Do TLB shootdown also when allocating new ASID.
 
1380 6591 d 22 h jermar /kernel/trunk/ Turn address space lock, address space area lock and
page_ht_lock into mutexes.
 
1266 6611 d 4 h jermar /kernel/trunk/genarch/ Rename acpi/matd.c to madt.c (Multiple APIC Description Table).
Improve Doxygen comments in genarch/.
 
823 6692 d 18 h jermar /kernel/trunk/ Reimplement ASID stealing logic.
This time, hopefully, with correct synchronization.
 
788 6696 d 0 h jermar /kernel/trunk/ Move list and fifo data types to adt/.  
753 6702 d 1 h jermar /kernel/trunk/ Convert ASID management of ia64 to ASID FIFO mechanism.
18-bit RIDs are supported.
 
741 6707 d 21 h jermar /kernel/trunk/ Unlock address space prior TLB shootdown in get_asid() to unify
the locking order among mips32, sparc64 and ia64.

Add ASID_STEALING_ENABLED macro to disable the stealing part on ia64
in a clean way.
 
740 6708 d 3 h jermar /kernel/trunk/ ia64 ASID management code (not tested).  
727 6712 d 20 h jermar /kernel/trunk/ New ASID management subsystem (initial work, more is required).
Some TLB invalidation changes.