df7096a4aa
waiting for a heap grow. * Use that nogrow version in the VM code to avoid a deadlock with the address space lock when a grow operation would try to create an area while a malloc happened from such a function in the VM. * When waiting for a grow to happen, notify the waiting thread from the grower also if it failed to allocate a new heap. Otherwise a thread would just sit there and wait until another thread requested growing too and that one succeeded (or just forever in the worst case). * Make the dedicated grow heap growable too. If the current grow heaps run low on memory it will instruct the grower to allocate a new grow heap. This reduces the likelyhood of running out of memory with no way to grow to a minimum. As the growing is done asynchronously it is still possible to happen, but it is highly unlikely as the grow heap is solely used to allocate memory in the process of creating new heap areas and it will even try using normal public memory if the dedicated memory has run out. * Reduced the dedicated grow heap from 2 to 1MB. As it can now grow itself, it doesn't need to last so long. * Extract heap creation into it's own function that does area creation and heap attach and use this function for growing normal and grow heaps. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26009 a95241bf-73f2-0310-859d-f6bbb57e9c96 |
||
---|---|---|
.. | ||
app | ||
audio | ||
bluetooth | ||
debug | ||
disk_scanner | ||
drivers | ||
firewire | ||
fs_shell | ||
graphics | ||
input | ||
interface | ||
kernel | ||
libroot | ||
media | ||
midi | ||
net | ||
opengl/GL/internal | ||
runtime_loader | ||
screen_saver | ||
shared | ||
storage | ||
syslog_daemon | ||
system | ||
textencoding | ||
tracker | ||
usb_vision | ||
userlandfs |