Przeglądaj źródła

slob: fix bug - when slob allocates "struct kmem_cache", it does not force alignment.

This may trigger misaligned memory access exception.

Acked-by: Matt Mackall <mpm@selenic.com>
Signed-off-by: Yi Li <yi.li@analog.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
Yi Li 17 lat temu
rodzic
commit
0701a9e649
1 zmienionych plików z 2 dodań i 1 usunięć
  1. 2 1
      mm/slob.c

+ 2 - 1
mm/slob.c

@@ -533,7 +533,8 @@ struct kmem_cache *kmem_cache_create(const char *name, size_t size,
 {
 	struct kmem_cache *c;
 
-	c = slob_alloc(sizeof(struct kmem_cache), flags, 0, -1);
+	c = slob_alloc(sizeof(struct kmem_cache),
+		flags, ARCH_KMALLOC_MINALIGN, -1);
 
 	if (c) {
 		c->name = name;