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 6281 d 7 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 6354 d 9 h jermar /trunk/ (c) versus (C)  
1891 6475 d 8 h jermar /trunk/kernel/ sparc64 work:
- Experimental support for TSB (Translation Storage Buffer).
 
1889 6476 d 10 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 6503 d 16 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 6544 d 11 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1702 6572 d 15 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1637 6579 d 5 h jermar /kernel/trunk/genarch/src/mm/ Improve comment.  
1636 6579 d 5 h jermar /kernel/trunk/ Move comment.

Do TLB shootdown also when allocating new ASID.
 
1380 6596 d 10 h jermar /kernel/trunk/ Turn address space lock, address space area lock and
page_ht_lock into mutexes.
 
1266 6615 d 16 h jermar /kernel/trunk/genarch/ Rename acpi/matd.c to madt.c (Multiple APIC Description Table).
Improve Doxygen comments in genarch/.
 
823 6697 d 6 h jermar /kernel/trunk/ Reimplement ASID stealing logic.
This time, hopefully, with correct synchronization.
 
788 6700 d 12 h jermar /kernel/trunk/ Move list and fifo data types to adt/.  
753 6706 d 13 h jermar /kernel/trunk/ Convert ASID management of ia64 to ASID FIFO mechanism.
18-bit RIDs are supported.
 
741 6712 d 9 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 6712 d 15 h jermar /kernel/trunk/ ia64 ASID management code (not tested).  
727 6717 d 7 h jermar /kernel/trunk/ New ASID management subsystem (initial work, more is required).
Some TLB invalidation changes.