HelenOS
HelenOS-doc
HelenOS-historic
Català-Valencià – Catalan
中文 – Chinese (Simplified)
中文 – Chinese (Traditional)
Česky – Czech
Dansk – Danish
Nederlands – Dutch
English – English
Suomi – Finnish
Français – French
Deutsch – German
עברית – Hebrew
हिंदी – Hindi
Magyar – Hungarian
Bahasa Indonesia – Indonesian
Italiano – Italian
日本語 – Japanese
한국어 – Korean
Македонски – Macedonian
मराठी – Marathi
Norsk – Norwegian
Polski – Polish
Português – Portuguese
Português – Portuguese (Brazil)
Русский – Russian
Slovenčina – Slovak
Slovenščina – Slovenian
Español – Spanish
Svenska – Swedish
Türkçe – Turkish
Українська – Ukrainian
Oëzbekcha – Uzbek
Subversion Repositories
HelenOS
(root)
/
tags
/
0.2.0
/
kernel
/
generic
/
src
/
mm
/
as.c
– Rev 1968
Rev
Hide changed files
|
Details
|
Compare with Previous
|
Blame
|
RSS feed
Filtering Options
From rev
To rev
Max revs
Search history for
Show All
Rev
Age
Author
Path
Log message
Diff
Changes
1968
6532 d 11 h
jermar
/tags/
Canonize pre-0.2.0.3 tags: remove inner branches, tags and trunk directories.
The change now should reflect how those releases looked like after checkout.
/tags/0.1.0/SPARTAN/Makefile
/tags/0.1.0/SPARTAN/Makefile.config
/tags/0.1.0/SPARTAN/arch
/tags/0.1.0/SPARTAN/build.ia32
/tags/0.1.0/SPARTAN/clean
/tags/0.1.0/SPARTAN/contrib
/tags/0.1.0/SPARTAN/doc
/tags/0.1.0/SPARTAN/genarch
/tags/0.1.0/SPARTAN/generic
/tags/0.1.0/SPARTAN/test
/tags/0.1.0/SPARTAN/tools
/tags/0.1.0/SPARTAN/uspace
/tags/0.1.0/uspace/Makefile
/tags/0.1.0/uspace/_link.ld
/tags/0.1.0/uspace/init.c
/tags/0.1.0/uspace/libc
/tags/0.1.1/boot/Makefile
/tags/0.1.1/boot/arch
/tags/0.1.1/boot/boot.config
/tags/0.1.1/boot/tools
/tags/0.1.1/kernel/Makefile
/tags/0.1.1/kernel/arch
/tags/0.1.1/kernel/contrib
/tags/0.1.1/kernel/doc
/tags/0.1.1/kernel/genarch
/tags/0.1.1/kernel/generic
/tags/0.1.1/kernel/kernel.config
/tags/0.1.1/kernel/test
/tags/0.1.1/kernel/tools
/tags/0.1.1/uspace/Makefile
/tags/0.1.1/uspace/init
/tags/0.1.1/uspace/kbd
/tags/0.1.1/uspace/libadt
/tags/0.1.1/uspace/libc
/tags/0.1.1/uspace/ns
/tags/0.1.1/uspace/pci
/tags/0.1.1/uspace/softfloat
/tags/0.1.1/uspace/softint
/tags/0.1.1/uspace/tools
/tags/0.1.1/uspace/uspace.config
/tags/0.2.0.1/boot/Makefile
/tags/0.2.0.1/boot/arch
/tags/0.2.0.1/boot/boot.config
/tags/0.2.0.1/boot/tools
/tags/0.2.0.1/kernel/Makefile
/tags/0.2.0.1/kernel/arch
/tags/0.2.0.1/kernel/contrib
/tags/0.2.0.1/kernel/doc
/tags/0.2.0.1/kernel/genarch
/tags/0.2.0.1/kernel/generic
/tags/0.2.0.1/kernel/kernel.config
/tags/0.2.0.1/kernel/test
/tags/0.2.0.1/kernel/tools
/tags/0.2.0.1/uspace/Makefile
/tags/0.2.0.1/uspace/console
/tags/0.2.0.1/uspace/fb
/tags/0.2.0.1/uspace/init
/tags/0.2.0.1/uspace/ipcc
/tags/0.2.0.1/uspace/kbd
/tags/0.2.0.1/uspace/klog
/tags/0.2.0.1/uspace/libc
/tags/0.2.0.1/uspace/ns
/tags/0.2.0.1/uspace/pci
/tags/0.2.0.1/uspace/softfloat
/tags/0.2.0.1/uspace/softint
/tags/0.2.0.1/uspace/tetris
/tags/0.2.0.1/uspace/tools
/tags/0.2.0.1/uspace/uspace.config
/tags/0.2.0.2/boot/Makefile
/tags/0.2.0.2/boot/arch
/tags/0.2.0.2/boot/boot.config
/tags/0.2.0.2/boot/tools
/tags/0.2.0.2/kernel/Makefile
/tags/0.2.0.2/kernel/arch
/tags/0.2.0.2/kernel/contrib
/tags/0.2.0.2/kernel/doc
/tags/0.2.0.2/kernel/genarch
/tags/0.2.0.2/kernel/generic
/tags/0.2.0.2/kernel/kernel.config
/tags/0.2.0.2/kernel/test
/tags/0.2.0.2/kernel/tools
/tags/0.2.0.2/uspace/Makefile
/tags/0.2.0.2/uspace/console
/tags/0.2.0.2/uspace/doc
/tags/0.2.0.2/uspace/fb
/tags/0.2.0.2/uspace/init
/tags/0.2.0.2/uspace/ipcc
/tags/0.2.0.2/uspace/kbd
/tags/0.2.0.2/uspace/klog
/tags/0.2.0.2/uspace/libc
/tags/0.2.0.2/uspace/ns
/tags/0.2.0.2/uspace/pci
/tags/0.2.0.2/uspace/softfloat
/tags/0.2.0.2/uspace/softint
/tags/0.2.0.2/uspace/tetris
/tags/0.2.0.2/uspace/tools
/tags/0.2.0.2/uspace/uspace.config
/tags/0.2.0/boot/Makefile
/tags/0.2.0/boot/arch
/tags/0.2.0/boot/boot.config
/tags/0.2.0/boot/tools
/tags/0.2.0/kernel/Makefile
/tags/0.2.0/kernel/arch
/tags/0.2.0/kernel/contrib
/tags/0.2.0/kernel/doc
/tags/0.2.0/kernel/genarch
/tags/0.2.0/kernel/generic
/tags/0.2.0/kernel/kernel.config
/tags/0.2.0/kernel/test
/tags/0.2.0/kernel/tools
/tags/0.2.0/uspace/Makefile
/tags/0.2.0/uspace/console
/tags/0.2.0/uspace/fb
/tags/0.2.0/uspace/init
/tags/0.2.0/uspace/ipcc
/tags/0.2.0/uspace/kbd
/tags/0.2.0/uspace/klog
/tags/0.2.0/uspace/libc
/tags/0.2.0/uspace/libfb
/tags/0.2.0/uspace/ns
/tags/0.2.0/uspace/pci
/tags/0.2.0/uspace/softfloat
/tags/0.2.0/uspace/softint
/tags/0.2.0/uspace/tetris
/tags/0.2.0/uspace/tools
/tags/0.2.0/uspace/uspace.config
/tags/0.1.0/SPARTAN/trunk
/tags/0.1.0/uspace/trunk
/tags/0.1.1/boot/trunk
/tags/0.1.1/kernel/trunk
/tags/0.1.1/uspace/trunk
/tags/0.2.0.1/boot/trunk
/tags/0.2.0.1/kernel/branches
/tags/0.2.0.1/kernel/tags
/tags/0.2.0.1/kernel/trunk
/tags/0.2.0.1/uspace/trunk
/tags/0.2.0.2/boot/trunk
/tags/0.2.0.2/kernel/branches
/tags/0.2.0.2/kernel/tags
/tags/0.2.0.2/kernel/trunk
/tags/0.2.0.2/uspace/trunk
/tags/0.2.0/boot/trunk
/tags/0.2.0/kernel/branches
/tags/0.2.0/kernel/tags
/tags/0.2.0/kernel/trunk
/tags/0.2.0/uspace/trunk
1964
6532 d 12 h
jermar
/tags/0.2.0/
Tagging release 0.2.0
/tags/0.2.0
1594
6676 d 8 h
jermar
/kernel/trunk/generic/src/mm/
Never ever walk a B+tree as you destroy it. Or vice versa.
/kernel/trunk/generic/src/mm/as.c
1587
6676 d 16 h
jermar
/kernel/trunk/
task_destroy() implementation, fixes in as_destroy() and task_kill().
This is the first version of HelenOS that would perform complete cleanup leading from thread to destruction of address space.
/kernel/trunk/arch/amd64/src/proc/task.c
/kernel/trunk/arch/ia32/src/proc/task.c
/kernel/trunk/arch/ia64/include/proc/task.h
/kernel/trunk/arch/mips32/include/proc/task.h
/kernel/trunk/arch/ppc32/include/proc/task.h
/kernel/trunk/arch/ppc64/include/proc/task.h
/kernel/trunk/arch/sparc64/include/proc/task.h
/kernel/trunk/generic/include/proc/task.h
/kernel/trunk/generic/src/mm/as.c
/kernel/trunk/generic/src/proc/task.c
1544
6678 d 19 h
palkovsky
/kernel/trunk/generic/
Slightly better behaviour with caching on memory sharing.
/kernel/trunk/generic/include/errno.h
/kernel/trunk/generic/src/mm/as.c
1495
6680 d 8 h
jermar
/kernel/trunk/
Remove three infinite loops introduced yesterday :-)
Make ia64 ready to load 5 ELF images.
/kernel/trunk/arch/ia64/Makefile.inc
/kernel/trunk/arch/ia64/src/ia64.c
/kernel/trunk/generic/src/mm/as.c
1483
6680 d 19 h
jermar
/kernel/trunk/generic/src/
Implement recursive function for deallocating the whole B+tree.
Make use of this function in address space management.
/kernel/trunk/generic/src/adt/btree.c
/kernel/trunk/generic/src/mm/as.c
1468
6681 d 17 h
jermar
/kernel/trunk/
Function for destroying address space for which there is no other reference in the kernel.
/kernel/trunk/arch/ia32/include/mm/asid.h
/kernel/trunk/genarch/src/mm/as_ht.c
/kernel/trunk/genarch/src/mm/as_pt.c
/kernel/trunk/generic/include/mm/as.h
/kernel/trunk/generic/include/mm/page.h
/kernel/trunk/generic/include/proc/task.h
/kernel/trunk/generic/src/mm/as.c
/kernel/trunk/generic/src/proc/task.c
1461
6681 d 19 h
palkovsky
/kernel/trunk/generic/
Slightly changed semantics of AS_AREA_SEND/RECV.
/kernel/trunk/generic/include/ipc/ipc.h
/kernel/trunk/generic/src/ipc/sysipc.c
/kernel/trunk/generic/src/mm/as.c
1437
6684 d 12 h
jermar
/kernel/trunk/generic/src/mm/
Fix used_space_insert() to correctly service an empty used_space B+tree.
/kernel/trunk/generic/src/mm/as.c
1436
6684 d 13 h
jermar
/kernel/trunk/generic/src/mm/
Fight TLB inconsistency by proper placing of tlb_shootdown_start() and tlb_shootdown_finalize() in as.c.
/kernel/trunk/generic/src/mm/as.c
1434
6684 d 15 h
palkovsky
/kernel/trunk/
Added 'realtime' clock interface.
Added some asm macros as memory barriers.
Added drift computing for mips platform.
/kernel/trunk/arch/ia32/include/barrier.h
/kernel/trunk/arch/mips32/include/barrier.h
/kernel/trunk/arch/mips32/include/cp0.h
/kernel/trunk/arch/mips32/src/interrupt.c
/kernel/trunk/arch/mips32/src/mips32.c
/kernel/trunk/generic/include/time/clock.h
/kernel/trunk/generic/src/ipc/sysipc.c
/kernel/trunk/generic/src/main/main.c
/kernel/trunk/generic/src/mm/as.c
/kernel/trunk/generic/src/time/clock.c
1428
6685 d 10 h
palkovsky
/kernel/trunk/generic/
Added 256K slab, so that AMD can boot (until ELF loader is fixed).
Added AS_AREA_RECV so that the caller can receive AS_AREA.
/kernel/trunk/generic/include/ipc/ipc.h
/kernel/trunk/generic/include/mm/as.h
/kernel/trunk/generic/include/mm/slab.h
/kernel/trunk/generic/src/ipc/sysipc.c
/kernel/trunk/generic/src/mm/as.c
/kernel/trunk/generic/src/mm/slab.c
1424
6685 d 15 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.
/kernel/trunk/generic/src/mm/backend_anon.c
/kernel/trunk/generic/src/mm/backend_elf.c
/kernel/trunk/generic/src/mm/backend_phys.c
/kernel/trunk/Makefile
/kernel/trunk/genarch/src/mm/page_ht.c
/kernel/trunk/generic/include/mm/as.h
/kernel/trunk/generic/src/ddi/ddi.c
/kernel/trunk/generic/src/lib/elf.c
/kernel/trunk/generic/src/mm/as.c
/kernel/trunk/generic/src/proc/task.c
1423
6685 d 20 h
jermar
/kernel/trunk/
Update page fault handlers to distinguish between different access modes that had caused the page fault.
/kernel/trunk/arch/amd64/include/mm/page.h
/kernel/trunk/arch/ia32/include/mm/page.h
/kernel/trunk/arch/mips32/include/mm/page.h
/kernel/trunk/arch/ppc32/include/mm/page.h
/kernel/trunk/arch/ppc64/include/mm/page.h
/kernel/trunk/genarch/include/mm/page_ht.h
/kernel/trunk/genarch/include/mm/page_pt.h
/kernel/trunk/generic/include/mm/as.h
/kernel/trunk/generic/src/lib/elf.c
/kernel/trunk/generic/src/mm/as.c
1417
6687 d 12 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.
/kernel/trunk/generic/include/mm/as.h
/kernel/trunk/generic/src/ipc/sysipc.c
/kernel/trunk/generic/src/mm/as.c
1415
6688 d 0 h
jermar
/kernel/trunk/generic/
Some renaming to prevent confusion.
as_lock -> inactive_as_with_asid_lock
as_t::refcount -> as_t::cpu_refcount
/kernel/trunk/generic/include/mm/as.h
/kernel/trunk/generic/src/mm/as.c
1413
6688 d 11 h
jermar
/kernel/trunk/generic/
Reimplement memory sharing. Currently, only
anonymous address space areas can be shared.
/kernel/trunk/generic/include/mm/as.h
/kernel/trunk/generic/src/ipc/sysipc.c
/kernel/trunk/generic/src/mm/as.c
1411
6688 d 16 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.
/kernel/trunk/arch/amd64/include/mm/page.h
/kernel/trunk/arch/amd64/src/mm/page.c
/kernel/trunk/arch/ia32/include/interrupt.h
/kernel/trunk/arch/ia32/include/mm/page.h
/kernel/trunk/arch/ia32/src/interrupt.c
/kernel/trunk/arch/ia32/src/mm/page.c
/kernel/trunk/arch/ia64/src/mm/tlb.c
/kernel/trunk/arch/mips32/src/mm/tlb.c
/kernel/trunk/arch/ppc32/src/mm/page.c
/kernel/trunk/arch/ppc64/src/mm/page.c
/kernel/trunk/generic/include/mm/as.h
/kernel/trunk/generic/include/mm/page.h
/kernel/trunk/generic/src/lib/elf.c
/kernel/trunk/generic/src/mm/as.c
1409
6689 d 10 h
jermar
/kernel/trunk/generic/
Some shared memory stuff (not completed).
Support for address space area backends.
Add ELF and anonymous memory backends.
/kernel/trunk/generic/include/mm/as.h
/kernel/trunk/generic/src/ddi/ddi.c
/kernel/trunk/generic/src/lib/elf.c
/kernel/trunk/generic/src/mm/as.c
/kernel/trunk/generic/src/proc/task.c
←Prev
1
2
Next→
Show All