From c51611c27f766bb4f413485bf8a12bca02e98669 Mon Sep 17 00:00:00 2001 From: Dimitri Staessens Date: Sun, 18 Jan 2026 14:35:50 +0100 Subject: lib: Call mlock() on the shared memory buffers This prevents them from swapping to disk and killing performance. It also enhances security a little bit by reducing the risk of sensitive (even encrypted) data being paged out and captured. Signed-off-by: Dimitri Staessens Signed-off-by: Sander Vrijders --- src/lib/shm_rdrbuff.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/lib/shm_rdrbuff.c') diff --git a/src/lib/shm_rdrbuff.c b/src/lib/shm_rdrbuff.c index 7ad1bd2e..5cdeba9e 100644 --- a/src/lib/shm_rdrbuff.c +++ b/src/lib/shm_rdrbuff.c @@ -278,6 +278,13 @@ void shm_rdrbuff_purge(void) free(shm_rdrb_fn); } +int shm_rdrbuff_mlock(struct shm_rdrbuff * rdrb) +{ + assert(rdrb != NULL); + + return mlock(rdrb->shm_base, SHM_FILE_SIZE); +} + ssize_t shm_rdrbuff_alloc(struct shm_rdrbuff * rdrb, size_t len, uint8_t ** ptr, -- cgit v1.2.3