]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
LoongArch: Use unsigned long for _end and _text
authorTiezhu Yang <yangtiezhu@loongson.cn>
Sat, 6 Dec 2025 02:39:48 +0000 (10:39 +0800)
committerHuacai Chen <chenhuacai@loongson.cn>
Sat, 6 Dec 2025 02:39:48 +0000 (10:39 +0800)
It is better to use unsigned long rather than long for _end and _text to
calculate the kernel length.

Cc: stable@vger.kernel.org # v6.3+
Fixes: e5f02b51fa0c ("LoongArch: Add support for kernel address space layout randomization (KASLR)")
Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn>
Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
arch/loongarch/kernel/relocate.c

index b5e2312a2fca51d595facb062a3b70ae0e0d48cc..76abbb8d2931607874bfd3670f665c5c22802fba 100644 (file)
@@ -183,7 +183,7 @@ static inline void __init *determine_relocation_address(void)
        if (kaslr_disabled())
                return destination;
 
-       kernel_length = (long)_end - (long)_text;
+       kernel_length = (unsigned long)_end - (unsigned long)_text;
 
        random_offset = get_random_boot() << 16;
        random_offset &= (CONFIG_RANDOMIZE_BASE_MAX_OFFSET - 1);
@@ -232,7 +232,7 @@ unsigned long __init relocate_kernel(void)
        early_memunmap(cmdline, COMMAND_LINE_SIZE);
 
        if (random_offset) {
-               kernel_length = (long)(_end) - (long)(_text);
+               kernel_length = (unsigned long)(_end) - (unsigned long)(_text);
 
                /* Copy the kernel to it's new location */
                memcpy(location_new, _text, kernel_length);