vm: only align slab headers when offslab is being used

This commit is contained in:
2023-05-01 18:12:46 +01:00
parent 654e54653c
commit 223b37a113

View File

@@ -1,5 +1,6 @@
#include <socks/queue.h>
#include <socks/compiler.h>
#include <socks/panic.h>
#include <socks/vm.h>
#include <socks/util.h>
#include <stddef.h>
@@ -67,7 +68,7 @@ void vm_cache_init(struct vm_cache *cache)
get the object buffer pointer. by aligning c_hdr_size to the
requested alignment, we ensure that the object buffer
is aligned too */
if (cache->c_hdr_size & (cache->c_align - 1)) {
if (cache->c_hdr_size & (cache->c_align - 1) && !(cache->c_flags & VM_CACHE_OFFSLAB)) {
cache->c_hdr_size &= ~(cache->c_align - 1);
cache->c_hdr_size += cache->c_align;
}