Searched +hist:8 +hist:f9dac69 (Results 1 - 1 of 1) sorted by relevance

/haiku/src/system/kernel/cache/
H A Dblock_cache.cppdiff 8a2d11b7 Tue Feb 08 16:35:03 MST 2022 Augustin Cavalier <waddlesplash@gmail.com> kernel/block_cache: Adjust logic in cache_detach_sub_transaction.

This way it should be more clear that parent_data is being modified
in tandem with original_data.

No functional change intended.
diff 8c3a938f Wed Sep 19 12:06:19 MDT 2012 Axel Dörfler <axeld@pinc-software.de> cache_abort_sub_transaction() did not maintain num_blocks.

* When a block was only used in a sub-transaction, it was thrown away,
but the transaction::num_blocks field was not decremented.
* This caused transactions never considered finished which eventually
led to bug #8942. This does not explain the disk corruption occurring
in #8969, though.
diff 8f9dac69 Mon Aug 27 03:21:42 MDT 2012 Axel Dörfler <axeld@pinc-software.de> Cleanup, no functional change intended.
diff 8f9dac69 Mon Aug 27 03:21:42 MDT 2012 Axel Dörfler <axeld@pinc-software.de> Cleanup, no functional change intended.
diff 86c794e5 Thu Jan 21 16:10:52 MST 2010 Ingo Weinhold <ingo_weinhold@gmx.de> slab allocator:
* Implemented a more elaborated raw memory allocation backend (MemoryManager).
We allocate 8 MB areas whose pages we allocate and map when needed. An area is
divided into equally-sized chunks which form the basic units of allocation. We
have areas with three possible chunk sizes (small, medium, large), which is
basically what the ObjectCache implementations were using anyway.
* Added "uint32 flags" parameter to several of the slab allocator's object
cache and object depot functions. E.g. object_depot_store() potentially wants
to allocate memory for a magazine. But also in pure freeing functions it
might eventually become useful to have those flags, since they could end up
deleting an area, which might not be allowable in all situations. We should
introduce specific flags to indicate that.
* Reworked the block allocator. Since the MemoryManager allocates block-aligned
areas, maintains a hash table for lookup, and maps chunks to object caches,
we can quickly find out which object cache a to be freed allocation belongs
to and thus don't need the boundary tags anymore.
* Reworked the slab boot strap process. We allocate from the initial area only
when really necessary, i.e. when the object cache for the respective
allocation size has not been created yet. A single page is thus sufficient.

other:
* vm_allocate_early(): Added boolean "blockAlign" parameter. If true, the
semantics is the same as for B_ANY_KERNEL_BLOCK_ADDRESS.
* Use an object cache for page mappings. This significantly reduces the
contention on the heap bin locks.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35232 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 8f1cb8fc Tue Nov 11 15:19:46 MST 2008 Axel Dörfler <axeld@pinc-software.de> * Brought the fs_shell block_cache implementation up to date, and incorporate
the fixes applied to the kernel version of it (most notably a correctly
working block_cache_discard(), and cache_detach_sub_transaction()).
Also switched to the new notification functions, even though it still works
synchronously in the fs_shell.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28617 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 8a25e129 Wed Sep 26 08:01:28 MDT 2007 Axel Dörfler <axeld@pinc-software.de> Implemented a part of block_cache_set_dirty() so that it can gracefully exit
in case there is nothing to do.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22318 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 8a4462f5 Sun Aug 21 17:19:39 MDT 2005 Axel Dörfler <axeld@pinc-software.de> Turned off debug output.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14044 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 317121e1 Wed Jun 01 10:39:38 MDT 2005 Axel Dörfler <axeld@pinc-software.de> Work in progress of the new block allocator for the block cache. It works, but
currently needs even more memory than the old one 8-)
Not cleaned up at all.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12921 a95241bf-73f2-0310-859d-f6bbb57e9c96
diff 8c3a938fc386a9733145ce251d538a29ecdf2987 Wed Sep 19 12:06:19 MDT 2012 Axel Dörfler <axeld@pinc-software.de> cache_abort_sub_transaction() did not maintain num_blocks.

* When a block was only used in a sub-transaction, it was thrown away,
but the transaction::num_blocks field was not decremented.
* This caused transactions never considered finished which eventually
led to bug #8942. This does not explain the disk corruption occurring
in #8969, though.

Completed in 82 milliseconds