bcachefs-tools/linux
Daniel Hill 326d7c1b3b improve kmalloc performance
Reading from /proc/meminfo is really slow

We don't want to start swapping to disk.

Deceptively, memory available goes up when we start to swap to disk making
performance even worse.

To mitigate this:
1. replace reading from meminfo with proper system calls.
2. attempt to lock allocations in physical memory space.
3. check our own allocated memory instead of available memory.
4. still check available memory in the off chance we're trying to play
nice with other apps.

Signed-off-by: Daniel Hill <daniel@gluo.nz>
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2023-11-24 19:54:11 -05:00
..
crypto Update bcachefs sources to d83b992f65 bcachefs: Rewrite journal_seq_blacklist machinery 2019-04-04 22:25:40 -04:00
atomic64.c fixes for 32 bit builds/non x86 archs 2018-05-17 02:36:19 -04:00
bio.c Update bcachefs sources to 84f132d569 bcachefs: fsck: Break walk_inode() up into multiple functions 2023-06-27 19:38:18 -04:00
blkdev.c Handle -EAGAIN from io_submit() 2023-09-29 01:27:59 -04:00
closure.c Update bcachefs sources to 783085c3cc44 kbuild: Allow gcov to be enabled on the command line 2023-11-22 16:55:06 -05:00
crc64.c Update bcachefs sources to ef60854e99 bcachefs: More allocator startup improvements 2019-01-13 20:53:25 -05:00
crc64table.h Update bcachefs sources to ef60854e99 bcachefs: More allocator startup improvements 2019-01-13 20:53:25 -05:00
fs.c Update bcachefs sources to 84f132d569 bcachefs: fsck: Break walk_inode() up into multiple functions 2023-06-27 19:38:18 -04:00
generic-radix-tree.c Update bcachefs sources to 6ddf061e68 bcachefs: Use a genradix for reading journal entries 2022-04-08 19:26:30 -04:00
int_sqrt.c Update bcachefs sources to 3e93567c51 bcachefs: Switch to local_clock() for fastpath time source 2022-10-15 01:04:30 -04:00
kstrtox.c Delete more shim layer code 2018-12-19 20:34:24 -05:00
kstrtox.h Delete more shim layer code 2018-06-01 17:33:47 -04:00
kthread.c Run shrinkers when pthread_create fails 2023-07-20 21:28:03 -04:00
llist.c Update llist code 2019-08-28 11:35:00 -04:00
mean_and_variance.c Update bcachefs sources to 31c09369cd six locks: Fix an unitialized var 2023-05-25 22:25:34 -04:00
mempool.c Add a real mempool implementation 2021-04-24 01:36:43 -04:00
preempt.c Fix building on musl 2020-05-05 10:29:31 +01:00
ratelimit.c Fix printk_ratelimited() 2022-06-22 22:05:39 -04:00
rhashtable.c Update bcachefs sources to 18686af684 bcachefs: Inode backpointers 2021-03-29 00:22:38 -04:00
sched.c Don't use mlockall() 2021-01-12 16:36:45 -05:00
semaphore.c Update bcachefs sources to 4837f82ee1 bcachefs: Use cached iterators for alloc btree 2020-06-15 16:27:19 -04:00
seq_buf.c Update bcachefs sources to ea93c26e98 fixup! bcachefs: We can handle missing btree roots for all alloc btrees 2023-02-09 18:36:24 -05:00
shrinker.c improve kmalloc performance 2023-11-24 19:54:11 -05:00
siphash.c Update bcachefs sources to ba398d2906 bcachefs: Fix reflink repair code 2022-02-13 04:08:33 -05:00
string_helpers.c Update bcachefs sources to ea93c26e98 fixup! bcachefs: We can handle missing btree roots for all alloc btrees 2023-02-09 18:36:24 -05:00
string.c Update bcachefs sources to cd779e0cc5 bcachefs: Skip inode unpack/pack in bch2_extent_update() 2022-10-22 14:41:54 -04:00
timer.c Heap code fix 2022-03-28 12:39:12 -04:00
wait.c Update bcachefs sources to 8d3fc97ca3 bcachefs: Fixes for building in userspace 2022-11-13 20:07:22 -05:00
workqueue.c Update bcachefs sources to c9b4a210f9 fixup! bcachefs: Fixes for going RO 2020-06-03 19:56:33 -04:00
xxhash.c Update bcachefs sources to dbee44d5ab bcachefs: add bcachefs xxhash support 2021-07-07 20:30:53 -04:00
zstd_compress_module.c Update bcachefs sources to e48731a188 bcachefs: Fix BTREE_TRIGGER_WANTS_OLD_AND_NEW 2022-03-13 19:20:59 -04:00
zstd_decompress_module.c Update bcachefs sources to e48731a188 bcachefs: Fix BTREE_TRIGGER_WANTS_OLD_AND_NEW 2022-03-13 19:20:59 -04:00