]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
s390/kasan: update kasan memory layout note
authorVasily Gorbik <gor@linux.ibm.com>
Fri, 27 Jan 2023 22:27:18 +0000 (23:27 +0100)
committerHeiko Carstens <hca@linux.ibm.com>
Mon, 6 Feb 2023 10:13:53 +0000 (11:13 +0100)
Kasan shadow memory area has been moved to the end of kernel address
space since commit 9a39abb7c9aa ("s390/boot: simplify and fix kernel
memory layout setup"). Change kasan memory layout note accordingly.

Reviewed-by: Alexander Gordeev <agordeev@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
arch/s390/mm/kasan_init.c

index bdfbe0dcb7c606de2ca16311178c0c77fab4ac63..9d4f3138b0e7a259c3a47d2cbe173c051696c7e7 100644 (file)
@@ -271,38 +271,34 @@ void __init kasan_early_init(void)
        }
        /*
         * Current memory layout:
-        * +- 0 -------------+     +- shadow start -+
-        * | 1:1 ram mapping |    /| 1/8 ram        |
-        * |                 |   / |                |
-        * +- end of ram ----+  /  +----------------+
-        * | ... gap ...     | /   |                |
-        * |                 |/    |    kasan       |
-        * +- shadow start --+     |    zero        |
-        * | 1/8 addr space  |     |    page        |
-        * +- shadow end    -+     |    mapping     |
-        * | ... gap ...     |\    |  (untracked)   |
-        * +- vmalloc area  -+ \   |                |
-        * | vmalloc_size    |  \  |                |
-        * +- modules vaddr -+   \ +----------------+
-        * | 2Gb             |    \|      unmapped  | allocated per module
-        * +-----------------+     +- shadow end ---+
+        * +- 0 -------------+         +- shadow start -+
+        * |1:1 ident mapping|        /|1/8 of ident map|
+        * |                 |       / |                |
+        * +-end of ident map+      /  +----------------+
+        * | ... gap ...     |     /   |    kasan       |
+        * |                 |    /    |  zero page     |
+        * +- vmalloc area  -+   /     |   mapping      |
+        * | vmalloc_size    |  /      | (untracked)    |
+        * +- modules vaddr -+ /       +----------------+
+        * | 2Gb             |/        |    unmapped    | allocated per module
+        * +- shadow start  -+         +----------------+
+        * | 1/8 addr space  |         | zero pg mapping| (untracked)
+        * +- shadow end ----+---------+- shadow end ---+
         *
         * Current memory layout (KASAN_VMALLOC):
-        * +- 0 -------------+     +- shadow start -+
-        * | 1:1 ram mapping |    /| 1/8 ram        |
-        * |                 |   / |                |
-        * +- end of ram ----+  /  +----------------+
-        * | ... gap ...     | /   |    kasan       |
-        * |                 |/    |    zero        |
-        * +- shadow start --+     |    page        |
-        * | 1/8 addr space  |     |    mapping     |
-        * +- shadow end    -+     |  (untracked)   |
-        * | ... gap ...     |\    |                |
-        * +- vmalloc area  -+ \   +- vmalloc area -+
-        * | vmalloc_size    |  \  |shallow populate|
-        * +- modules vaddr -+   \ +- modules area -+
-        * | 2Gb             |    \|shallow populate|
-        * +-----------------+     +- shadow end ---+
+        * +- 0 -------------+         +- shadow start -+
+        * |1:1 ident mapping|        /|1/8 of ident map|
+        * |                 |       / |                |
+        * +-end of ident map+      /  +----------------+
+        * | ... gap ...     |     /   | kasan zero page| (untracked)
+        * |                 |    /    | mapping        |
+        * +- vmalloc area  -+   /     +----------------+
+        * | vmalloc_size    |  /      |shallow populate|
+        * +- modules vaddr -+ /       +----------------+
+        * | 2Gb             |/        |shallow populate|
+        * +- shadow start  -+         +----------------+
+        * | 1/8 addr space  |         | zero pg mapping| (untracked)
+        * +- shadow end ----+---------+- shadow end ---+
         */
        /* populate kasan shadow (for identity mapping and zero page mapping) */
        kasan_early_pgtable_populate(__sha(0), __sha(memsize), POPULATE_MAP);