Subversion Repositories HelenOS-historic

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
1424 6564 d 3 h jermar /kernel/trunk/ Move the sharing functionality to address space area backends.
Add backend for continuous regions of physical memory.
Sharing for these areas works automagically now.
 
1423 6564 d 8 h jermar /kernel/trunk/ Update page fault handlers to distinguish between different access modes that had caused the page fault.  
1422 6564 d 9 h jermar /kernel/trunk/ Modify ia64 linker script to make compilation with gcc 4.1.x possible.  
1420 6564 d 10 h jermar /kernel/trunk/ Upgrade toolchain to use gcc 4.1.1.
ia64 still cannot be built with combination of binutils 2.16.1 and gcc 4.1.x
 
1417 6566 d 0 h jermar /kernel/trunk/generic/ Modify as_area_share() to accept destination area flags bitmask from the sender
(i.e. the sender can limit access mode to the shared area for the recipient).
Modify IPC_M_AS_AREA_SEND code to support this. Arguments for sender: arg1=as_area,
arg2=size, arg3=flags_mask.

The mechanism seems to work, but the page fault handlers need to be altered to
distinguish between faults under different access modes.
 
1416 6566 d 11 h jermar /kernel/trunk/generic/ Make implementation of condition variables compliant with their definition.
Signal operation must become a no-op if there is no thread in the wait operation.
Remove condvar_trywait() which has no meaning after this change.
 
1415 6566 d 12 h jermar /kernel/trunk/generic/ Some renaming to prevent confusion.
as_lock -> inactive_as_with_asid_lock
as_t::refcount -> as_t::cpu_refcount
 
1414 6566 d 12 h jermar /kernel/trunk/generic/src/synch/ Small fixes in futex.c.
PTE_GET_FRAME() returns frame address, not PFN.
Update comments.
 
1413 6566 d 23 h jermar /kernel/trunk/generic/ Reimplement memory sharing. Currently, only
anonymous address space areas can be shared.
 
1411 6567 d 4 h jermar /kernel/trunk/ Modify the hierarchy of page fault handlers to pass access mode that caused the fault.
Architectures are required to pass either PF_ACCESS_READ, PF_ACCESS_WRITE or PF_ACCESS_EXEC
to as_page_fault(), depending on the cause of the fault.
 
1410 6567 d 8 h jermar /kernel/trunk/arch/sparc64/ Modify sparc64 to choose optimal page size in each invocation of hw_map().
Use hw_map() to map keyboard device memory.
 
1409 6567 d 22 h jermar /kernel/trunk/generic/ Some shared memory stuff (not completed).
Support for address space area backends.
Add ELF and anonymous memory backends.
 
1403 6569 d 12 h jermar /kernel/trunk/generic/src/mm/ Fixes of the used_space management code.
Switch as_area_destroy() and as_area_resize() to use the used_space map.
as_area_steal() not switched as it will undergo further changes.
 
1399 6570 d 0 h decky /kernel/trunk/arch/ppc64/include/ small fixes  
1398 6570 d 1 h decky /kernel/trunk/arch/ port ppc32 changes to ppc64 (raw)  
1396 6570 d 1 h palkovsky /kernel/trunk/ Fixed mips to compile with fb (missing hw_map).
Fixed mips hw virt/phys addresses of fb.
Moved fb_init to post_mm, because it needs malloc().
 
1390 6570 d 2 h decky /kernel/trunk/arch/ppc32/src/mm/ fixes  
1389 6570 d 2 h decky /kernel/trunk/ minor changes
ppc32: identically map the whole physical memory
fix page hash table refill logic
 
1388 6570 d 3 h bondari /kernel/trunk/arch/ppc32/include/mm/  
1387 6570 d 6 h jermar /kernel/trunk/generic/ Add used_space_insert() and used_space_remove().
These are the alpha versions of functions that
will help to map used and unused portions of address
space areas. Currently unused, but many as_area operations
will be more efficient when the used space B+tree map
is used.
 
1386 6570 d 7 h palkovsky /kernel/trunk/ Fixed mips bug fith TLS register not being properly saved on syscall context
switch.
Reverted SYS_IO, so that it could be used on machines without fb.
 
1384 6570 d 22 h decky /kernel/trunk/arch/ppc32/src/ ppc32 work
decrementer workaround
primitive TLB support
 
1383 6570 d 23 h decky /kernel/trunk/ ppc32: hardware memory mapping, kernel PHT refill fix  
1382 6571 d 0 h decky /kernel/trunk/ make hardware memory mapping more generic  
1380 6571 d 2 h jermar /kernel/trunk/ Turn address space lock, address space area lock and
page_ht_lock into mutexes.
 
1378 6572 d 7 h decky /kernel/trunk/arch/ppc32/ kernel identity mapping still to be done using BAT  
1377 6572 d 8 h jermar /kernel/trunk/arch/sparc64/include/drivers/ Remove unneeded macro.  
1376 6572 d 8 h jermar /kernel/trunk/ Change the way the framebuffer is mapped so that sparc64 is usable again.  
1375 6572 d 9 h jermar /kernel/trunk/generic/ Fix race in condition variables.  
1374 6572 d 22 h decky /kernel/trunk/arch/ppc32/ ppc32 work
update framebuffer
get rid of the BAT memory mapping (not finished yet)
 
1371 6572 d 23 h decky /kernel/trunk/ unify the framebuffer API
use physical address as the base address for the framebuffer
 
1370 6573 d 1 h decky /kernel/trunk/arch/ppc32/ ppc32: update boot API  
1364 6574 d 7 h jermar /kernel/trunk/generic/ Modify ipc_wait_for_call() to support all of blocking, non-blocking and timeout operation.  
1362 6574 d 22 h vana /kernel/trunk/generic/src/syscall/ kernel changes for uspace FB driver  
1359 6575 d 4 h jermar /kernel/trunk/generic/ Rename IPC_M_AS_SEND to IPC_M_AS_AREA_SEND.  
1358 6575 d 4 h jermar /kernel/trunk/generic/ Cleanup after removal of as_area_accept and as_area_send.  
1356 6575 d 6 h decky /kernel/trunk/ a small step for ppc32, but a giant leap for HelenOS  
1355 6575 d 6 h decky /kernel/trunk/arch/ppc32/src/ fix exception context store and restore to respect ppc32 ABI  
1354 6575 d 6 h palkovsky /kernel/trunk/ Support for mips kbd driver.  
1346 6575 d 11 h palkovsky /kernel/trunk/generic/src/ipc/ Small updates to IPC regarding AS_SEND.