From: Michael Cree Date: Sat, 24 Jun 2017 01:37:02 +0000 (+1200) Subject: alpha: support R_ALPHA_REFLONG relocations for module loading X-Git-Tag: v4.13~26^2~3 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=4f61e0781b701f5eb4f0e186d361c4104659001e;p=platform%2Fkernel%2Flinux-exynos.git alpha: support R_ALPHA_REFLONG relocations for module loading Since commit 71810db27c1c853b33 (modversions: treat symbol CRCs as 32 bit quantities) R_ALPHA_REFLONG relocations can be required to load modules. This implements it. Tested-by: Bob Tracy Reviewed-by: Richard Henderson Signed-off-by: Michael Cree Signed-off-by: Matt Turner --- diff --git a/arch/alpha/kernel/module.c b/arch/alpha/kernel/module.c index 936bc8f..47632fa 100644 --- a/arch/alpha/kernel/module.c +++ b/arch/alpha/kernel/module.c @@ -181,6 +181,9 @@ apply_relocate_add(Elf64_Shdr *sechdrs, const char *strtab, switch (r_type) { case R_ALPHA_NONE: break; + case R_ALPHA_REFLONG: + *(u32 *)location = value; + break; case R_ALPHA_REFQUAD: /* BUG() can produce misaligned relocations. */ ((u32 *)location)[0] = value;