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)
/
kernel
/
trunk
/
generic
/
src
/
mm
/
slab.c
@ 791
– Rev 0
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
791
6717 d 9 h
palkovsky
/kernel/trunk/generic/
better utilization of memory in slab alloc
removed malloc-8 slab
/kernel/trunk/generic/include/mm/slab.h
/kernel/trunk/generic/src/mm/slab.c
789
6717 d 13 h
palkovsky
/kernel/trunk/generic/
Early SLAB initialization, the cpu-cache is initialized later.
If you want to use slab_cache_create befor slab_cpu_enable, add
a flag SLAB_CACHE_MAGDEFERRED.
/kernel/trunk/generic/include/mm/as.h
/kernel/trunk/generic/include/mm/slab.h
/kernel/trunk/generic/src/main/main.c
/kernel/trunk/generic/src/mm/as.c
/kernel/trunk/generic/src/mm/slab.c
788
6717 d 16 h
jermar
/kernel/trunk/
Move list and fifo data types to adt/.
/kernel/trunk/generic/include/adt
/kernel/trunk/generic/include/adt/fifo.h
/kernel/trunk/generic/include/adt/list.h
/kernel/trunk/generic/src/adt
/kernel/trunk/generic/src/adt/list.c
/kernel/trunk/generic/include/fifo.h
/kernel/trunk/generic/include/list.h
/kernel/trunk/generic/src/lib/list.c
/kernel/trunk/Makefile
/kernel/trunk/genarch/src/mm/asid.c
/kernel/trunk/genarch/src/mm/asid_fifo.c
/kernel/trunk/generic/include/console/kconsole.h
/kernel/trunk/generic/include/cpu.h
/kernel/trunk/generic/include/mm/as.h
/kernel/trunk/generic/include/mm/frame.h
/kernel/trunk/generic/include/mm/slab.h
/kernel/trunk/generic/include/proc/scheduler.h
/kernel/trunk/generic/include/proc/task.h
/kernel/trunk/generic/include/proc/thread.h
/kernel/trunk/generic/include/synch/waitq.h
/kernel/trunk/generic/include/time/timeout.h
/kernel/trunk/generic/src/console/cmd.c
/kernel/trunk/generic/src/console/kconsole.c
/kernel/trunk/generic/src/cpu/cpu.c
/kernel/trunk/generic/src/mm/as.c
/kernel/trunk/generic/src/mm/buddy.c
/kernel/trunk/generic/src/mm/frame.c
/kernel/trunk/generic/src/mm/slab.c
/kernel/trunk/generic/src/proc/scheduler.c
/kernel/trunk/generic/src/proc/task.c
/kernel/trunk/generic/src/proc/thread.c
/kernel/trunk/generic/src/synch/rwlock.c
/kernel/trunk/generic/src/synch/waitq.c
/kernel/trunk/generic/src/time/clock.c
787
6717 d 17 h
palkovsky
/kernel/trunk/generic/
Added constructor/destructor calls to SLAB.
Changed allocation of thread_t structure to use SLAB.
/kernel/trunk/generic/include/mm/slab.h
/kernel/trunk/generic/include/print.h
/kernel/trunk/generic/include/proc/thread.h
/kernel/trunk/generic/src/mm/slab.c
/kernel/trunk/generic/src/proc/scheduler.c
/kernel/trunk/generic/src/proc/thread.c
/kernel/trunk/generic/src/synch/spinlock.c
786
6717 d 18 h
bondari
/kernel/trunk/
frame_alloc() functions variations in order to avoid problems with frame_alloc_generic() changes.
IMPORTANT: Parameter order for frame_alloc() was changed
/kernel/trunk/arch/ia64/src/mm/page.c
/kernel/trunk/genarch/src/mm/as_ht.c
/kernel/trunk/genarch/src/mm/as_pt.c
/kernel/trunk/genarch/src/mm/page_pt.c
/kernel/trunk/generic/include/mm/frame.h
/kernel/trunk/generic/src/cpu/cpu.c
/kernel/trunk/generic/src/mm/as.c
/kernel/trunk/generic/src/mm/frame.c
/kernel/trunk/generic/src/mm/slab.c
/kernel/trunk/generic/src/proc/thread.c
/kernel/trunk/test/mm/falloc1/test.c
/kernel/trunk/test/mm/falloc2/test.c
/kernel/trunk/test/mm/mapping1/test.c
785
6717 d 20 h
jermar
/kernel/trunk/generic/src/
Comments clarification.
/kernel/trunk/generic/src/mm/slab.c
/kernel/trunk/generic/src/proc/scheduler.c
783
6717 d 21 h
palkovsky
/kernel/trunk/generic/
Fixed some typos in slab allocator.
Scheduler now has better algorithm on load balancing.
Unfortunately it reveals deadlock in slab allocator :-/
/kernel/trunk/generic/include/cpu.h
/kernel/trunk/generic/src/mm/slab.c
/kernel/trunk/generic/src/proc/scheduler.c
/kernel/trunk/generic/src/proc/thread.c
782
6717 d 22 h
palkovsky
/kernel/trunk/generic/src/mm/
Small locking performance tweak.
/kernel/trunk/generic/src/mm/slab.c
781
6718 d 9 h
palkovsky
/kernel/trunk/generic/
Still better locking - does not hold global spinlock when
destroying cache.
/kernel/trunk/generic/include/mm/slab.h
/kernel/trunk/generic/src/mm/slab.c
780
6718 d 13 h
palkovsky
/kernel/trunk/
Small fix in slab allocator for large-sized slabs.
/kernel/trunk/generic/src/mm/slab.c
/kernel/trunk/test/mm/slab2/test.c
778
6718 d 15 h
palkovsky
/kernel/trunk/
Fixed boot process not to call malloc when slab not initialized.
Added simics workaround.
/kernel/trunk/arch/amd64/Makefile.inc
/kernel/trunk/arch/ia32/Makefile.inc
/kernel/trunk/arch/ia32/src/mm/frame.c
/kernel/trunk/genarch/src/acpi/matd.c
/kernel/trunk/generic/include/mm/as.h
/kernel/trunk/generic/include/mm/frame.h
/kernel/trunk/generic/src/mm/as.c
/kernel/trunk/generic/src/mm/slab.c
/kernel/trunk/kernel.config
776
6718 d 19 h
palkovsky
/kernel/trunk/generic/
Added more granular locking to slab allocator and thus fix
hopefully last race condition.
/kernel/trunk/generic/include/mm/slab.h
/kernel/trunk/generic/src/mm/slab.c
775
6718 d 21 h
palkovsky
/kernel/trunk/generic/
Added scheduler queues output. The scheduler is buggy - on SMP
the cpus never get tu cpu_sleep, in slab2 test on 4 cpus everything
is on the first cpu.
The slab allocator passes tests in this configuration, but in slightly
different(more efficient) locking order it panics. TODO: Find out why
does it panic.
/kernel/trunk/generic/include/proc/scheduler.h
/kernel/trunk/generic/src/console/cmd.c
/kernel/trunk/generic/src/mm/slab.c
/kernel/trunk/generic/src/proc/scheduler.c
773
6719 d 8 h
palkovsky
/kernel/trunk/
Added slab stress test.
Fixed race condition in slab allocator.
Moved initialization of slab to the point where we know correct config.cpu_count
Correctly passes tests on amd64, ia32 in both bochs & qemu.
/kernel/trunk/generic/src/main/main.c
/kernel/trunk/generic/src/mm/slab.c
/kernel/trunk/test/mm/slab2/test.c
772
6719 d 10 h
palkovsky
/kernel/trunk/
Fixed non-initialized cpu-cache.
/kernel/trunk/generic/include/bitops.h
/kernel/trunk/generic/src/mm/slab.c
/kernel/trunk/test/mm/slab1/test.c
771
6719 d 11 h
palkovsky
/kernel/trunk/generic/
Implemented malloc/free as SLABs.
/kernel/trunk/generic/include/bitops.h
/kernel/trunk/generic/include/mm/heap.h
/kernel/trunk/generic/include/mm/slab.h
/kernel/trunk/generic/src/mm/as.c
/kernel/trunk/generic/src/mm/slab.c
769
6720 d 8 h
palkovsky
/kernel/trunk/
SLAB allocator now uses itself for all its internal structures.
Added description of allocator.
Removed messy_stack_trace from amd64, as it would scroll away important
part of exception.
/kernel/trunk/arch/amd64/src/interrupt.c
/kernel/trunk/generic/src/mm/slab.c
768
6720 d 11 h
palkovsky
/kernel/trunk/
Debugged slab allocator. It currently supports per-CPU cache on 1 cpu.
/kernel/trunk/generic/src/mm/frame.c
/kernel/trunk/generic/src/mm/slab.c
/kernel/trunk/test/mm/slab1/test.c
/kernel/trunk/test/mm/slab2/test.c
767
6720 d 12 h
palkovsky
/kernel/trunk/
Partially working SLAB CPU cache.
/kernel/trunk/test/mm/slab2
/kernel/trunk/test/mm/slab2/test.c
/kernel/trunk/generic/include/mm/slab.h
/kernel/trunk/generic/src/mm/slab.c
/kernel/trunk/kernel.config
766
6720 d 13 h
palkovsky
/kernel/trunk/
Basic SLAB (without CPU-cache) passes test.
/kernel/trunk/generic/include/mm/slab.h
/kernel/trunk/generic/src/mm/slab.c
/kernel/trunk/test/mm/slab1/test.c
←Prev
1
2
Next→
Show All