lkml.org 
[lkml]   [2022]   [May]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: linux-next: Tree for May 31 (riscv: arch/riscv/kernel/elf_kexec.c)
From

838b3e28488f7: RISC-V: Load purgatory in kexec_file


On 5/30/22 21:54, Stephen Rothwell wrote:
> Hi all,
>
> Note: please do not add any v5.20 material to your linux-next included
> branches until after v5.19-rc1 has been related.
>
> Changes since 20220527:
>

When CONFIG_MODULES is not set/enabled:
(oh, also CONFIG_MMU is not set)


../arch/riscv/kernel/elf_kexec.c:346:5: error: redefinition of 'arch_kexec_apply_relocations_add'
346 | int arch_kexec_apply_relocations_add(struct purgatory_info *pi,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../arch/riscv/kernel/elf_kexec.c:17:
../include/linux/kexec.h:236:1: note: previous definition of 'arch_kexec_apply_relocations_add' with type 'int(struct purgatory_info *, Elf64_Shdr *, const Elf64_Shdr *, const Elf64_Shdr *)' {aka 'int(struct purgatory_info *, struct elf64_shdr *, const struct elf64_shdr *, const struct elf64_shdr *)'}
236 | arch_kexec_apply_relocations_add(struct purgatory_info *pi, Elf_Shdr *section,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../arch/riscv/kernel/elf_kexec.c: In function 'arch_kexec_apply_relocations_add':
../arch/riscv/kernel/elf_kexec.c:353:9: error: unknown type name 'Elf_Rela'; did you mean 'Elf64_Rela'?
353 | Elf_Rela *relas;
| ^~~~~~~~
| Elf64_Rela
In file included from ../arch/riscv/include/asm/elf.h:11,
from ../include/linux/elf.h:6,
from ../include/linux/module.h:19,
from ../arch/riscv/kernel/elf_kexec.c:15:
../arch/riscv/kernel/elf_kexec.c:371:44: error: request for member 'r_info' in something not a structure or union
371 | sym += ELF64_R_SYM(relas[i].r_info);
| ^
../include/uapi/linux/elf.h:163:43: note: in definition of macro 'ELF64_R_SYM'
163 | #define ELF64_R_SYM(i) ((i) >> 32)
| ^
../arch/riscv/kernel/elf_kexec.c:380:32: error: request for member 'r_offset' in something not a structure or union
380 | loc += relas[i].r_offset;
| ^
../arch/riscv/kernel/elf_kexec.c:393:32: error: request for member 'r_addend' in something not a structure or union
393 | val += relas[i].r_addend;
| ^
../arch/riscv/kernel/elf_kexec.c:395:51: error: request for member 'r_offset' in something not a structure or union
395 | addr = section->sh_addr + relas[i].r_offset;
| ^
In file included from ../arch/riscv/include/asm/elf.h:11,
from ../include/linux/elf.h:6,
from ../include/linux/module.h:19,
from ../arch/riscv/kernel/elf_kexec.c:15:
../arch/riscv/kernel/elf_kexec.c:397:47: error: request for member 'r_info' in something not a structure or union
397 | r_type = ELF64_R_TYPE(relas[i].r_info);
| ^
../include/uapi/linux/elf.h:164:43: note: in definition of macro 'ELF64_R_TYPE'
164 | #define ELF64_R_TYPE(i) ((i) & 0xffffffff)
| ^


Full randconfig file is attached.

--
~Randy[unhandled content-type:application/gzip]
\
 
 \ /
  Last update: 2022-05-31 21:53    [W:0.043 / U:1.192 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site