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 6249 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 6322 d 9 h jermar /trunk/ (c) versus (C)  
1891 6443 d 7 h jermar /trunk/kernel/ sparc64 work:
- Experimental support for TSB (Translation Storage Buffer).
 
1889 6444 d 9 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 6471 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 6512 d 11 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1702 6540 d 15 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
1637 6547 d 4 h jermar /kernel/trunk/genarch/src/mm/ Improve comment.  
1636 6547 d 5 h jermar /kernel/trunk/ Move comment.

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