#
25866ebe |
|
03-Aug-2022 |
Augustin Cavalier <waddlesplash@gmail.com> |
kernel/fs: Refactor EntryCache to not use constant array sizes. Instead set them in the Init functions. For now, the same hard-coded sizes are used, so aside from slightly increased storage on two classes (or not even due to padding), this has no functional change.
|
#
1029af17 |
|
01-Sep-2021 |
Augustin Cavalier <waddlesplash@gmail.com> |
Add missing includes following previous commit. All these files were making use of headers included indirectly through AutoLock.h that are now no longer following the previous commit.
|
#
efb0a3a8 |
|
17-Aug-2015 |
Michael Lotz <mmlr@mlotz.ch> |
EntryCache: Add entry_cache_add_missing() for negative caching. It provides a way for filesystems to cache a lookup failure and therefore prevents repeated lookups of missing entries. This is a common scenario for example in command lookup and compiling, where each directory in PATH or each include directory is searched for the given entry.
|
#
6235b496 |
|
12-Jan-2015 |
Adrien Destugues <pulkomandy@gmail.com> |
More useless inclusions of khash.h
|
#
077c84eb |
|
05-Nov-2013 |
Pawel Dziepak <pdziepak@quarnos.org> |
kernel: atomic_*() functions rework * No need for the atomically changed variables to be declared as volatile. * Drop support for atomically getting and setting unaligned data. * Introduce atomic_get_and_set[64]() which works the same as atomic_set[64]() used to. atomic_set[64]() does not return the previous value anymore.
|
#
83291a2a |
|
26-Feb-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Added DebugReverseLookup() method to reverse-lookup directory and entry name for a given vnode (for debugging purposes). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35625 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
1b1b94b8 |
|
08-Jan-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Entry cache: * Moved hash computations out of the critical sections. * Replaced the LRU entry queue by an array of entry "generations", each containing a sparse array of entries of that generation. Whenever a generation is full, we clear the oldest generation and continue with that one. The main advantage of this algorithm is that entry cache's mutex could be replaced by an r/w lock, that most of the time only has to be read locked in Lookup(). This does dramatically decrease contention of that lock. The total -j8 Haiku image build speedup is marginal, but the kernel time drops about 7% (now being smaller than the real time). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34950 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
f42efbcd |
|
01-Jan-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Moved the entry cache implementation into its own file. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34843 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
efb0a3a853557e69ecf2bc88adc9a69ed08d1514 |
|
17-Aug-2015 |
Michael Lotz <mmlr@mlotz.ch> |
EntryCache: Add entry_cache_add_missing() for negative caching. It provides a way for filesystems to cache a lookup failure and therefore prevents repeated lookups of missing entries. This is a common scenario for example in command lookup and compiling, where each directory in PATH or each include directory is searched for the given entry.
|
#
6235b4967bb0a99752efd18eee62a47834c79946 |
|
12-Jan-2015 |
Adrien Destugues <pulkomandy@gmail.com> |
More useless inclusions of khash.h
|
#
077c84eb27b25430428d356f3d13afabc0cc0d13 |
|
05-Nov-2013 |
Pawel Dziepak <pdziepak@quarnos.org> |
kernel: atomic_*() functions rework * No need for the atomically changed variables to be declared as volatile. * Drop support for atomically getting and setting unaligned data. * Introduce atomic_get_and_set[64]() which works the same as atomic_set[64]() used to. atomic_set[64]() does not return the previous value anymore.
|
#
83291a2a64c3817c882ff676ec8ac01884b41eb5 |
|
26-Feb-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Added DebugReverseLookup() method to reverse-lookup directory and entry name for a given vnode (for debugging purposes). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35625 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
1b1b94b85ac1d2508b6dea91008433bd2ade45b4 |
|
08-Jan-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Entry cache: * Moved hash computations out of the critical sections. * Replaced the LRU entry queue by an array of entry "generations", each containing a sparse array of entries of that generation. Whenever a generation is full, we clear the oldest generation and continue with that one. The main advantage of this algorithm is that entry cache's mutex could be replaced by an r/w lock, that most of the time only has to be read locked in Lookup(). This does dramatically decrease contention of that lock. The total -j8 Haiku image build speedup is marginal, but the kernel time drops about 7% (now being smaller than the real time). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34950 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
f42efbcd26947b3394c94f7462ae2c0f6455a1d3 |
|
01-Jan-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Moved the entry cache implementation into its own file. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34843 a95241bf-73f2-0310-859d-f6bbb57e9c96
|