lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Mon, 8 Aug 2022 10:18:42 -0500 From: Eric DeVolder <eric.devolder@...cle.com> To: Baoquan He <bhe@...hat.com> Cc: linux-kernel@...r.kernel.org, x86@...nel.org, kexec@...ts.infradead.org, ebiederm@...ssion.com, dyoung@...hat.com, vgoyal@...hat.com, tglx@...utronix.de, mingo@...hat.com, bp@...en8.de, dave.hansen@...ux.intel.com, hpa@...or.com, nramas@...ux.microsoft.com, thomas.lendacky@....com, robh@...nel.org, efault@....de, rppt@...nel.org, david@...hat.com, sourabhjain@...ux.ibm.com, konrad.wilk@...cle.com, boris.ostrovsky@...cle.com Subject: Re: [PATCH v10 1/8] crash: introduce arch/*/asm/crash.h On 8/7/22 22:25, Baoquan He wrote: > Hi Eric, > > On 07/21/22 at 02:17pm, Eric DeVolder wrote: >> The use of __weak is being eliminated within kexec sources. >> The technique uses macros mapped onto inline functions in >> order to replace __weak. >> >> This patchset was using __weak and so in order to replace >> __weak, this patch introduces arch/*/asm/crash.h, patterned >> after how kexec is moving away from __weak and to the macro >> definitions. > > Are you going to replace __weak in kexec of arll ARCHes? I don't see > your point why all these empty header files are introduced. Wondering > what's impacted if not adding these empty files? Hi Baoquan, In this patchset, to file include/linux/crash_core.h I added the line #include <asm/crash.h>. I patterned this after how include/linux/kexec.h does #include <asm/kexec.h>. For kexec, the items that were __weak are refactored into corresponding asm/kexec.h. I followed suit for crash __weak items. File crash_core.h now #include's asm/crash.h and so that file needs to be present for every arch, else build failures ensue. It turns out x86_64 already had this file. At this time, I was not planning on converting the other arch's __weak to asm/crash.h, but at least with these empty files, the infrastructure is in place for when that does occur. Let me know if you think I need to do something different/more here. Thanks! eric > >> >> No functionality changed, yet. >> >> Signed-off-by: Eric DeVolder <eric.devolder@...cle.com> >> --- >> arch/arm/include/asm/crash.h | 5 +++++ >> arch/arm64/include/asm/crash.h | 5 +++++ >> arch/ia64/include/asm/crash.h | 5 +++++ >> arch/m68k/include/asm/crash.h | 5 +++++ >> arch/mips/include/asm/crash.h | 5 +++++ >> arch/parisc/include/asm/crash.h | 5 +++++ >> arch/powerpc/include/asm/crash.h | 5 +++++ >> arch/riscv/include/asm/crash.h | 5 +++++ >> arch/s390/include/asm/crash.h | 5 +++++ >> arch/sh/include/asm/crash.h | 5 +++++ >> include/linux/crash_core.h | 2 ++ >> 11 files changed, 52 insertions(+) >> create mode 100644 arch/arm/include/asm/crash.h >> create mode 100644 arch/arm64/include/asm/crash.h >> create mode 100644 arch/ia64/include/asm/crash.h >> create mode 100644 arch/m68k/include/asm/crash.h >> create mode 100644 arch/mips/include/asm/crash.h >> create mode 100644 arch/parisc/include/asm/crash.h >> create mode 100644 arch/powerpc/include/asm/crash.h >> create mode 100644 arch/riscv/include/asm/crash.h >> create mode 100644 arch/s390/include/asm/crash.h >> create mode 100644 arch/sh/include/asm/crash.h >> >> diff --git a/arch/arm/include/asm/crash.h b/arch/arm/include/asm/crash.h >> new file mode 100644 >> index 000000000000..385646957d60 >> --- /dev/null >> +++ b/arch/arm/include/asm/crash.h >> @@ -0,0 +1,5 @@ >> +/* SPDX-License-Identifier: GPL-2.0 */ >> +#ifndef _ASM_ARM_CRASH_H >> +#define _ASM_ARM_CRASH_H >> + >> +#endif /* _ASM_ARM_CRASH_H */ >> diff --git a/arch/arm64/include/asm/crash.h b/arch/arm64/include/asm/crash.h >> new file mode 100644 >> index 000000000000..ec8870c1ea49 >> --- /dev/null >> +++ b/arch/arm64/include/asm/crash.h >> @@ -0,0 +1,5 @@ >> +/* SPDX-License-Identifier: GPL-2.0 */ >> +#ifndef _ASM_ARM64_CRASH_H >> +#define _ASM_ARM64_CRASH_H >> + >> +#endif /* _ASM_ARM64_CRASH_H */ >> diff --git a/arch/ia64/include/asm/crash.h b/arch/ia64/include/asm/crash.h >> new file mode 100644 >> index 000000000000..02a457cccda3 >> --- /dev/null >> +++ b/arch/ia64/include/asm/crash.h >> @@ -0,0 +1,5 @@ >> +/* SPDX-License-Identifier: GPL-2.0 */ >> +#ifndef _ASM_IA64_CRASH_H >> +#define _ASM_IA64_CRASH_H >> + >> +#endif /* _ASM_IA64_CRASH_H */ >> diff --git a/arch/m68k/include/asm/crash.h b/arch/m68k/include/asm/crash.h >> new file mode 100644 >> index 000000000000..ba6e412a1267 >> --- /dev/null >> +++ b/arch/m68k/include/asm/crash.h >> @@ -0,0 +1,5 @@ >> +/* SPDX-License-Identifier: GPL-2.0 */ >> +#ifndef _ASM_M68K_CRASH_H >> +#define _ASM_M68K_CRASH_H >> + >> +#endif /* _ASM_M68K_CRASH_H */ >> diff --git a/arch/mips/include/asm/crash.h b/arch/mips/include/asm/crash.h >> new file mode 100644 >> index 000000000000..35872522c574 >> --- /dev/null >> +++ b/arch/mips/include/asm/crash.h >> @@ -0,0 +1,5 @@ >> +/* SPDX-License-Identifier: GPL-2.0 */ >> +#ifndef _ASM_MIPS_CRASH_H >> +#define _ASM_MIPS_CRASH_H >> + >> +#endif /* _ASM_MIPS_CRASH_H */ >> diff --git a/arch/parisc/include/asm/crash.h b/arch/parisc/include/asm/crash.h >> new file mode 100644 >> index 000000000000..96833b727179 >> --- /dev/null >> +++ b/arch/parisc/include/asm/crash.h >> @@ -0,0 +1,5 @@ >> +/* SPDX-License-Identifier: GPL-2.0 */ >> +#ifndef _ASM_PARISC_CRASH_H >> +#define _ASM_PARISC_CRASH_H >> + >> +#endif /* _ASM_PARISC_CRASH_H */ >> diff --git a/arch/powerpc/include/asm/crash.h b/arch/powerpc/include/asm/crash.h >> new file mode 100644 >> index 000000000000..40ce71e56ac1 >> --- /dev/null >> +++ b/arch/powerpc/include/asm/crash.h >> @@ -0,0 +1,5 @@ >> +/* SPDX-License-Identifier: GPL-2.0 */ >> +#ifndef _ASM_POWERPC_CRASH_H >> +#define _ASM_POWERPC_CRASH_H >> + >> +#endif /* _ASM_POWERPC_CRASH_H */ >> diff --git a/arch/riscv/include/asm/crash.h b/arch/riscv/include/asm/crash.h >> new file mode 100644 >> index 000000000000..24f3aea99707 >> --- /dev/null >> +++ b/arch/riscv/include/asm/crash.h >> @@ -0,0 +1,5 @@ >> +/* SPDX-License-Identifier: GPL-2.0 */ >> +#ifndef _ASM_RISCV_CRASH_H >> +#define _ASM_RISCV_CRASH_H >> + >> +#endif /* _ASM_RISCV_CRASH_H */ >> diff --git a/arch/s390/include/asm/crash.h b/arch/s390/include/asm/crash.h >> new file mode 100644 >> index 000000000000..0db16ad4c75f >> --- /dev/null >> +++ b/arch/s390/include/asm/crash.h >> @@ -0,0 +1,5 @@ >> +/* SPDX-License-Identifier: GPL-2.0 */ >> +#ifndef _ASM_S390_CRASH_H >> +#define _ASM_S390_CRASH_H >> + >> +#endif /* _ASM_S390_CRASH_H */ >> diff --git a/arch/sh/include/asm/crash.h b/arch/sh/include/asm/crash.h >> new file mode 100644 >> index 000000000000..f54e12f88cae >> --- /dev/null >> +++ b/arch/sh/include/asm/crash.h >> @@ -0,0 +1,5 @@ >> +/* SPDX-License-Identifier: GPL-2.0 */ >> +#ifndef _ASM_SH_CRASH_H >> +#define _ASM_SH_CRASH_H >> + >> +#endif /* _ASM_SH_CRASH_H */ >> diff --git a/include/linux/crash_core.h b/include/linux/crash_core.h >> index de62a722431e..cb0f1916fbf5 100644 >> --- a/include/linux/crash_core.h >> +++ b/include/linux/crash_core.h >> @@ -6,6 +6,8 @@ >> #include <linux/elfcore.h> >> #include <linux/elf.h> >> >> +#include <asm/crash.h> >> + >> #define CRASH_CORE_NOTE_NAME "CORE" >> #define CRASH_CORE_NOTE_HEAD_BYTES ALIGN(sizeof(struct elf_note), 4) >> #define CRASH_CORE_NOTE_NAME_BYTES ALIGN(sizeof(CRASH_CORE_NOTE_NAME), 4) >> -- >> 2.31.1 >> >
Powered by blists - more mailing lists