Message ID | 20240511015725.1162-1-dqfext@gmail.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 2ae376aa0cd20bd50eaa3976a49e469acb415bbf |
Headers | show |
Series | riscv: do not select MODULE_SECTIONS by default | expand |
On Sat, May 11, 2024 at 09:57:25AM +0800, Qingfang Deng wrote: > From: Qingfang Deng <qingfang.deng@siflower.com.cn> > > Since commit aad15bc85c18 ("riscv: Change code model of module to > medany to improve data accessing"), kernel modules have not been built > with -fPIC, so they wouldn't have R_RISCV_GOT_HI20 or R_RISCV_CALL_PLT > relocations, and handling of those relocations is unnecessary. > > If RELOCATABLE=y, kernel modules will be built with -fPIE, which would > reintroduce said relocations, so only select MODULE_SECTIONS when > RELOCATABLE. > > Signed-off-by: Qingfang Deng <qingfang.deng@siflower.com.cn> > --- > arch/riscv/Kconfig | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig > index 6bec1bce6586..3f92dd3b45d2 100644 > --- a/arch/riscv/Kconfig > +++ b/arch/riscv/Kconfig > @@ -169,7 +169,6 @@ config RISCV > select LOCK_MM_AND_FIND_VMA > select MMU_GATHER_RCU_TABLE_FREE if SMP && MMU > select MODULES_USE_ELF_RELA if MODULES > - select MODULE_SECTIONS if MODULES > select OF > select OF_EARLY_FLATTREE > select OF_IRQ > @@ -858,6 +857,7 @@ config PARAVIRT_TIME_ACCOUNTING > config RELOCATABLE > bool "Build a relocatable kernel" > depends on MMU && 64BIT && !XIP_KERNEL > + select MODULE_SECTIONS if MODULES > help > This builds a kernel as a Position Independent Executable (PIE), > which retains all relocation metadata required to relocate the > -- > 2.34.1 > > > _______________________________________________ > linux-riscv mailing list > linux-riscv@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-riscv Looks great! Reviewed-by: Charlie Jenkins <charlie@rivosinc.com>
Hello: This patch was applied to riscv/linux.git (for-next) by Palmer Dabbelt <palmer@rivosinc.com>: On Sat, 11 May 2024 09:57:25 +0800 you wrote: > From: Qingfang Deng <qingfang.deng@siflower.com.cn> > > Since commit aad15bc85c18 ("riscv: Change code model of module to > medany to improve data accessing"), kernel modules have not been built > with -fPIC, so they wouldn't have R_RISCV_GOT_HI20 or R_RISCV_CALL_PLT > relocations, and handling of those relocations is unnecessary. > > [...] Here is the summary with links: - riscv: do not select MODULE_SECTIONS by default https://git.kernel.org/riscv/c/2ae376aa0cd2 You are awesome, thank you!
diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig index 6bec1bce6586..3f92dd3b45d2 100644 --- a/arch/riscv/Kconfig +++ b/arch/riscv/Kconfig @@ -169,7 +169,6 @@ config RISCV select LOCK_MM_AND_FIND_VMA select MMU_GATHER_RCU_TABLE_FREE if SMP && MMU select MODULES_USE_ELF_RELA if MODULES - select MODULE_SECTIONS if MODULES select OF select OF_EARLY_FLATTREE select OF_IRQ @@ -858,6 +857,7 @@ config PARAVIRT_TIME_ACCOUNTING config RELOCATABLE bool "Build a relocatable kernel" depends on MMU && 64BIT && !XIP_KERNEL + select MODULE_SECTIONS if MODULES help This builds a kernel as a Position Independent Executable (PIE), which retains all relocation metadata required to relocate the