You've already forked linux-rockchip
mirror of
https://github.com/armbian/linux-rockchip.git
synced 2026-01-06 11:08:10 -08:00
Merge tag 'kbuild-v5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild
Pull Kbuild updates from Masahiro Yamada:
- Fix false-positive build warnings for ARCH=ia64 builds
- Optimize dictionary size for module compression with xz
- Check the compiler and linker versions in Kconfig
- Fix misuse of extra-y
- Support DWARF v5 debug info
- Clamp SUBLEVEL to 255 because stable releases 4.4.x and 4.9.x
exceeded the limit
- Add generic syscall{tbl,hdr}.sh for cleanups across arches
- Minor cleanups of genksyms
- Minor cleanups of Kconfig
* tag 'kbuild-v5.12' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild: (38 commits)
initramfs: Remove redundant dependency of RD_ZSTD on BLK_DEV_INITRD
kbuild: remove deprecated 'always' and 'hostprogs-y/m'
kbuild: parse C= and M= before changing the working directory
kbuild: reuse this-makefile to define abs_srctree
kconfig: unify rule of config, menuconfig, nconfig, gconfig, xconfig
kconfig: omit --oldaskconfig option for 'make config'
kconfig: fix 'invalid option' for help option
kconfig: remove dead code in conf_askvalue()
kconfig: clean up nested if-conditionals in check_conf()
kconfig: Remove duplicate call to sym_get_string_value()
Makefile: Remove # characters from compiler string
Makefile: reuse CC_VERSION_TEXT
kbuild: check the minimum linker version in Kconfig
kbuild: remove ld-version macro
scripts: add generic syscallhdr.sh
scripts: add generic syscalltbl.sh
arch: syscalls: remove $(srctree)/ prefix from syscall tables
arch: syscalls: add missing FORCE and fix 'targets' to make if_changed work
gen_compile_commands: prune some directories
kbuild: simplify access to the kernel's version
...
This commit is contained in:
@@ -78,10 +78,10 @@ $(obj)/processed-schema.json: $(DT_SCHEMA_FILES) check_dtschema_version FORCE
|
||||
|
||||
endif
|
||||
|
||||
extra-$(CHECK_DT_BINDING) += processed-schema-examples.json
|
||||
extra-$(CHECK_DTBS) += processed-schema.json
|
||||
extra-$(CHECK_DT_BINDING) += $(patsubst $(src)/%.yaml,%.example.dts, $(DT_SCHEMA_FILES))
|
||||
extra-$(CHECK_DT_BINDING) += $(patsubst $(src)/%.yaml,%.example.dt.yaml, $(DT_SCHEMA_FILES))
|
||||
always-$(CHECK_DT_BINDING) += processed-schema-examples.json
|
||||
always-$(CHECK_DTBS) += processed-schema.json
|
||||
always-$(CHECK_DT_BINDING) += $(patsubst $(src)/%.yaml,%.example.dts, $(DT_SCHEMA_FILES))
|
||||
always-$(CHECK_DT_BINDING) += $(patsubst $(src)/%.yaml,%.example.dt.yaml, $(DT_SCHEMA_FILES))
|
||||
|
||||
# Hack: avoid 'Argument list too long' error for 'make clean'. Remove most of
|
||||
# build artifacts here before they are processed by scripts/Makefile.clean
|
||||
|
||||
@@ -12,7 +12,7 @@ This document describes the Linux kernel Makefiles.
|
||||
--- 3.1 Goal definitions
|
||||
--- 3.2 Built-in object goals - obj-y
|
||||
--- 3.3 Loadable module goals - obj-m
|
||||
--- 3.4 Objects which export symbols
|
||||
--- 3.4 <deleted>
|
||||
--- 3.5 Library file goals - lib-y
|
||||
--- 3.6 Descending down in directories
|
||||
--- 3.7 Non-builtin vmlinux targets - extra-y
|
||||
@@ -247,12 +247,6 @@ more details, with real examples.
|
||||
kbuild will build an ext2.o file for you out of the individual
|
||||
parts and then link this into built-in.a, as you would expect.
|
||||
|
||||
3.4 Objects which export symbols
|
||||
--------------------------------
|
||||
|
||||
No special notation is required in the makefiles for
|
||||
modules exporting symbols.
|
||||
|
||||
3.5 Library file goals - lib-y
|
||||
------------------------------
|
||||
|
||||
|
||||
@@ -4319,8 +4319,6 @@ C: irc://chat.freenode.net/clangbuiltlinux
|
||||
F: Documentation/kbuild/llvm.rst
|
||||
F: include/linux/compiler-clang.h
|
||||
F: scripts/clang-tools/
|
||||
F: scripts/clang-version.sh
|
||||
F: scripts/lld-version.sh
|
||||
K: \b(?i:clang|llvm)\b
|
||||
|
||||
CLEANCACHE API
|
||||
|
||||
105
Makefile
105
Makefile
@@ -100,6 +100,36 @@ endif
|
||||
|
||||
export quiet Q KBUILD_VERBOSE
|
||||
|
||||
# Call a source code checker (by default, "sparse") as part of the
|
||||
# C compilation.
|
||||
#
|
||||
# Use 'make C=1' to enable checking of only re-compiled files.
|
||||
# Use 'make C=2' to enable checking of *all* source files, regardless
|
||||
# of whether they are re-compiled or not.
|
||||
#
|
||||
# See the file "Documentation/dev-tools/sparse.rst" for more details,
|
||||
# including where to get the "sparse" utility.
|
||||
|
||||
ifeq ("$(origin C)", "command line")
|
||||
KBUILD_CHECKSRC = $(C)
|
||||
endif
|
||||
ifndef KBUILD_CHECKSRC
|
||||
KBUILD_CHECKSRC = 0
|
||||
endif
|
||||
|
||||
export KBUILD_CHECKSRC
|
||||
|
||||
# Use make M=dir or set the environment variable KBUILD_EXTMOD to specify the
|
||||
# directory of external module to build. Setting M= takes precedence.
|
||||
ifeq ("$(origin M)", "command line")
|
||||
KBUILD_EXTMOD := $(M)
|
||||
endif
|
||||
|
||||
$(if $(word 2, $(KBUILD_EXTMOD)), \
|
||||
$(error building multiple external modules is not supported))
|
||||
|
||||
export KBUILD_EXTMOD
|
||||
|
||||
# Kbuild will save output files in the current working directory.
|
||||
# This does not need to match to the root of the kernel source tree.
|
||||
#
|
||||
@@ -145,7 +175,8 @@ else
|
||||
need-sub-make := 1
|
||||
endif
|
||||
|
||||
abs_srctree := $(realpath $(dir $(lastword $(MAKEFILE_LIST))))
|
||||
this-makefile := $(lastword $(MAKEFILE_LIST))
|
||||
abs_srctree := $(realpath $(dir $(this-makefile)))
|
||||
|
||||
ifneq ($(words $(subst :, ,$(abs_srctree))), 1)
|
||||
$(error source directory cannot contain spaces or colons)
|
||||
@@ -160,8 +191,6 @@ MAKEFLAGS += --include-dir=$(abs_srctree)
|
||||
need-sub-make := 1
|
||||
endif
|
||||
|
||||
this-makefile := $(lastword $(MAKEFILE_LIST))
|
||||
|
||||
ifneq ($(filter 3.%,$(MAKE_VERSION)),)
|
||||
# 'MAKEFLAGS += -rR' does not immediately become effective for GNU Make 3.x
|
||||
# We need to invoke sub-make to avoid implicit rules in the top Makefile.
|
||||
@@ -195,36 +224,6 @@ ifeq ($(need-sub-make),)
|
||||
# so that IDEs/editors are able to understand relative filenames.
|
||||
MAKEFLAGS += --no-print-directory
|
||||
|
||||
# Call a source code checker (by default, "sparse") as part of the
|
||||
# C compilation.
|
||||
#
|
||||
# Use 'make C=1' to enable checking of only re-compiled files.
|
||||
# Use 'make C=2' to enable checking of *all* source files, regardless
|
||||
# of whether they are re-compiled or not.
|
||||
#
|
||||
# See the file "Documentation/dev-tools/sparse.rst" for more details,
|
||||
# including where to get the "sparse" utility.
|
||||
|
||||
ifeq ("$(origin C)", "command line")
|
||||
KBUILD_CHECKSRC = $(C)
|
||||
endif
|
||||
ifndef KBUILD_CHECKSRC
|
||||
KBUILD_CHECKSRC = 0
|
||||
endif
|
||||
|
||||
# Use make M=dir or set the environment variable KBUILD_EXTMOD to specify the
|
||||
# directory of external module to build. Setting M= takes precedence.
|
||||
ifeq ("$(origin M)", "command line")
|
||||
KBUILD_EXTMOD := $(M)
|
||||
endif
|
||||
|
||||
$(if $(word 2, $(KBUILD_EXTMOD)), \
|
||||
$(error building multiple external modules is not supported))
|
||||
|
||||
export KBUILD_CHECKSRC KBUILD_EXTMOD
|
||||
|
||||
extmod-prefix = $(if $(KBUILD_EXTMOD),$(KBUILD_EXTMOD)/)
|
||||
|
||||
ifeq ($(abs_srctree),$(abs_objtree))
|
||||
# building in the source tree
|
||||
srctree := .
|
||||
@@ -257,7 +256,6 @@ export building_out_of_srctree srctree objtree VPATH
|
||||
# of make so .config is not included in this case either (for *config).
|
||||
|
||||
version_h := include/generated/uapi/linux/version.h
|
||||
old_version_h := include/linux/version.h
|
||||
|
||||
clean-targets := %clean mrproper cleandocs
|
||||
no-dot-config-targets := $(clean-targets) \
|
||||
@@ -558,7 +556,13 @@ ifdef building_out_of_srctree
|
||||
{ echo "# this is build directory, ignore it"; echo "*"; } > .gitignore
|
||||
endif
|
||||
|
||||
ifneq ($(shell $(CC) --version 2>&1 | head -n 1 | grep clang),)
|
||||
# The expansion should be delayed until arch/$(SRCARCH)/Makefile is included.
|
||||
# Some architectures define CROSS_COMPILE in arch/$(SRCARCH)/Makefile.
|
||||
# CC_VERSION_TEXT is referenced from Kconfig (so it needs export),
|
||||
# and from include/config/auto.conf.cmd to detect the compiler upgrade.
|
||||
CC_VERSION_TEXT = $(shell $(CC) --version 2>/dev/null | head -n 1 | sed 's/\#//g')
|
||||
|
||||
ifneq ($(findstring clang,$(CC_VERSION_TEXT)),)
|
||||
ifneq ($(CROSS_COMPILE),)
|
||||
CLANG_FLAGS += --target=$(notdir $(CROSS_COMPILE:%-=%))
|
||||
GCC_TOOLCHAIN_DIR := $(dir $(shell which $(CROSS_COMPILE)elfedit))
|
||||
@@ -577,12 +581,6 @@ KBUILD_AFLAGS += $(CLANG_FLAGS)
|
||||
export CLANG_FLAGS
|
||||
endif
|
||||
|
||||
# The expansion should be delayed until arch/$(SRCARCH)/Makefile is included.
|
||||
# Some architectures define CROSS_COMPILE in arch/$(SRCARCH)/Makefile.
|
||||
# CC_VERSION_TEXT is referenced from Kconfig (so it needs export),
|
||||
# and from include/config/auto.conf.cmd to detect the compiler upgrade.
|
||||
CC_VERSION_TEXT = $(shell $(CC) --version 2>/dev/null | head -n 1)
|
||||
|
||||
ifdef config-build
|
||||
# ===========================================================================
|
||||
# *config targets only - make sure prerequisites are updated, and descend
|
||||
@@ -832,8 +830,10 @@ ifneq ($(LLVM_IAS),1)
|
||||
KBUILD_AFLAGS += -Wa,-gdwarf-2
|
||||
endif
|
||||
|
||||
ifdef CONFIG_DEBUG_INFO_DWARF4
|
||||
DEBUG_CFLAGS += -gdwarf-4
|
||||
ifndef CONFIG_DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT
|
||||
dwarf-version-$(CONFIG_DEBUG_INFO_DWARF4) := 4
|
||||
dwarf-version-$(CONFIG_DEBUG_INFO_DWARF5) := 5
|
||||
DEBUG_CFLAGS += -gdwarf-$(dwarf-version-y)
|
||||
endif
|
||||
|
||||
ifdef CONFIG_DEBUG_INFO_REDUCED
|
||||
@@ -1072,7 +1072,7 @@ ifdef CONFIG_MODULE_COMPRESS
|
||||
mod_compress_cmd = $(KGZIP) -n -f
|
||||
endif # CONFIG_MODULE_COMPRESS_GZIP
|
||||
ifdef CONFIG_MODULE_COMPRESS_XZ
|
||||
mod_compress_cmd = $(XZ) -f
|
||||
mod_compress_cmd = $(XZ) --lzma2=dict=2MiB -f
|
||||
endif # CONFIG_MODULE_COMPRESS_XZ
|
||||
endif # CONFIG_MODULE_COMPRESS
|
||||
export mod_compress_cmd
|
||||
@@ -1123,6 +1123,7 @@ endif # CONFIG_BPF
|
||||
|
||||
PHONY += prepare0
|
||||
|
||||
extmod-prefix = $(if $(KBUILD_EXTMOD),$(KBUILD_EXTMOD)/)
|
||||
export MODORDER := $(extmod-prefix)modules.order
|
||||
export MODULES_NSDEPS := $(extmod-prefix)modules.nsdeps
|
||||
|
||||
@@ -1280,14 +1281,22 @@ define filechk_utsrelease.h
|
||||
endef
|
||||
|
||||
define filechk_version.h
|
||||
echo \#define LINUX_VERSION_CODE $(shell \
|
||||
expr $(VERSION) \* 65536 + 0$(PATCHLEVEL) \* 256 + 0$(SUBLEVEL)); \
|
||||
echo '#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))'
|
||||
if [ $(SUBLEVEL) -gt 255 ]; then \
|
||||
echo \#define LINUX_VERSION_CODE $(shell \
|
||||
expr $(VERSION) \* 65536 + 0$(PATCHLEVEL) \* 256 + 255); \
|
||||
else \
|
||||
echo \#define LINUX_VERSION_CODE $(shell \
|
||||
expr $(VERSION) \* 65536 + 0$(PATCHLEVEL) \* 256 + $(SUBLEVEL)); \
|
||||
fi; \
|
||||
echo '#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + \
|
||||
((c) > 255 ? 255 : (c)))'; \
|
||||
echo \#define LINUX_VERSION_MAJOR $(VERSION); \
|
||||
echo \#define LINUX_VERSION_PATCHLEVEL $(PATCHLEVEL); \
|
||||
echo \#define LINUX_VERSION_SUBLEVEL $(SUBLEVEL)
|
||||
endef
|
||||
|
||||
$(version_h): FORCE
|
||||
$(call filechk,version.h)
|
||||
$(Q)rm -f $(old_version_h)
|
||||
|
||||
include/generated/utsrelease.h: include/config/kernel.release FORCE
|
||||
$(call filechk,utsrelease.h)
|
||||
|
||||
@@ -5,7 +5,7 @@ uapi := arch/$(SRCARCH)/include/generated/uapi/asm
|
||||
_dummy := $(shell [ -d '$(uapi)' ] || mkdir -p '$(uapi)') \
|
||||
$(shell [ -d '$(kapi)' ] || mkdir -p '$(kapi)')
|
||||
|
||||
syscall := $(srctree)/$(src)/syscall.tbl
|
||||
syscall := $(src)/syscall.tbl
|
||||
syshdr := $(srctree)/$(src)/syscallhdr.sh
|
||||
systbl := $(srctree)/$(src)/syscalltbl.sh
|
||||
|
||||
@@ -21,18 +21,19 @@ quiet_cmd_systbl = SYSTBL $@
|
||||
'$(systbl_abi_$(basetarget))' \
|
||||
'$(systbl_offset_$(basetarget))'
|
||||
|
||||
$(uapi)/unistd_32.h: $(syscall) $(syshdr)
|
||||
$(uapi)/unistd_32.h: $(syscall) $(syshdr) FORCE
|
||||
$(call if_changed,syshdr)
|
||||
|
||||
$(kapi)/syscall_table.h: $(syscall) $(systbl)
|
||||
$(kapi)/syscall_table.h: $(syscall) $(systbl) FORCE
|
||||
$(call if_changed,systbl)
|
||||
|
||||
uapisyshdr-y += unistd_32.h
|
||||
kapisyshdr-y += syscall_table.h
|
||||
|
||||
targets += $(uapisyshdr-y) $(kapisyshdr-y)
|
||||
uapisyshdr-y := $(addprefix $(uapi)/, $(uapisyshdr-y))
|
||||
kapisyshdr-y := $(addprefix $(kapi)/, $(kapisyshdr-y))
|
||||
targets += $(addprefix ../../../../, $(uapisyshdr-y) $(kapisyshdr-y))
|
||||
|
||||
PHONY += all
|
||||
all: $(addprefix $(uapi)/,$(uapisyshdr-y))
|
||||
all: $(addprefix $(kapi)/,$(kapisyshdr-y))
|
||||
all: $(uapisyshdr-y) $(kapisyshdr-y)
|
||||
@:
|
||||
|
||||
@@ -11,7 +11,7 @@ uapi := $(gen)/uapi/asm
|
||||
syshdr := $(srctree)/$(src)/syscallhdr.sh
|
||||
sysnr := $(srctree)/$(src)/syscallnr.sh
|
||||
systbl := $(srctree)/$(src)/syscalltbl.sh
|
||||
syscall := $(srctree)/$(src)/syscall.tbl
|
||||
syscall := $(src)/syscall.tbl
|
||||
|
||||
gen-y := $(gen)/calls-oabi.S
|
||||
gen-y += $(gen)/calls-eabi.S
|
||||
|
||||
@@ -1485,7 +1485,7 @@ config ARM64_PTR_AUTH
|
||||
depends on (CC_HAS_SIGN_RETURN_ADDRESS || CC_HAS_BRANCH_PROT_PAC_RET) && AS_HAS_PAC
|
||||
# Modern compilers insert a .note.gnu.property section note for PAC
|
||||
# which is only understood by binutils starting with version 2.33.1.
|
||||
depends on LD_IS_LLD || LD_VERSION >= 233010000 || (CC_IS_GCC && GCC_VERSION < 90100)
|
||||
depends on LD_IS_LLD || LD_VERSION >= 23301 || (CC_IS_GCC && GCC_VERSION < 90100)
|
||||
depends on !CC_IS_CLANG || AS_HAS_CFI_NEGATE_RA_STATE
|
||||
depends on (!FUNCTION_GRAPH_TRACER || DYNAMIC_FTRACE_WITH_REGS)
|
||||
help
|
||||
|
||||
@@ -85,9 +85,3 @@ define archhelp
|
||||
echo ' install - Install compressed kernel image'
|
||||
echo '* unwcheck - Check vmlinux for invalid unwind info'
|
||||
endef
|
||||
|
||||
archprepare: make_nr_irqs_h
|
||||
PHONY += make_nr_irqs_h
|
||||
|
||||
make_nr_irqs_h:
|
||||
$(Q)$(MAKE) $(build)=arch/ia64/kernel include/generated/nr-irqs.h
|
||||
|
||||
@@ -14,7 +14,9 @@
|
||||
|
||||
#include <linux/types.h>
|
||||
#include <linux/cpumask.h>
|
||||
#include <generated/nr-irqs.h>
|
||||
#include <asm/native/irq.h>
|
||||
|
||||
#define NR_IRQS IA64_NATIVE_NR_IRQS
|
||||
|
||||
static __inline__ int
|
||||
irq_canonicalize (int irq)
|
||||
|
||||
@@ -14,13 +14,10 @@
|
||||
|
||||
#if !defined(__ASSEMBLY__)
|
||||
|
||||
#include <linux/interrupt.h>
|
||||
#include <linux/percpu.h>
|
||||
#include <linux/threads.h>
|
||||
#include <linux/types.h>
|
||||
|
||||
#include <asm/param.h>
|
||||
#include <asm/sal.h>
|
||||
#include <asm/processor.h>
|
||||
#include <asm/mca_asm.h>
|
||||
#include <asm/ptrace.h>
|
||||
|
||||
#define IA64_MCA_RENDEZ_TIMEOUT (20 * 1000) /* value in milliseconds - 20 seconds */
|
||||
|
||||
@@ -83,7 +80,7 @@ struct ia64_sal_os_state {
|
||||
/* common */
|
||||
unsigned long sal_ra; /* Return address in SAL, physical */
|
||||
unsigned long sal_gp; /* GP of the SAL - physical */
|
||||
pal_min_state_area_t *pal_min_state; /* from R17. physical in asm, virtual in C */
|
||||
struct pal_min_state_area *pal_min_state; /* from R17. physical in asm, virtual in C */
|
||||
/* Previous values of IA64_KR(CURRENT) and IA64_KR(CURRENT_STACK).
|
||||
* Note: if the MCA/INIT recovery code wants to resume to a new context
|
||||
* then it must change these values to reflect the new kernel stack.
|
||||
|
||||
@@ -750,7 +750,7 @@ typedef union pal_mc_error_info_u {
|
||||
* for PAL.
|
||||
*/
|
||||
|
||||
typedef struct pal_min_state_area_s {
|
||||
struct pal_min_state_area {
|
||||
u64 pmsa_nat_bits; /* nat bits for saved GRs */
|
||||
u64 pmsa_gr[15]; /* GR1 - GR15 */
|
||||
u64 pmsa_bank0_gr[16]; /* GR16 - GR31 */
|
||||
@@ -766,7 +766,7 @@ typedef struct pal_min_state_area_s {
|
||||
u64 pmsa_xfs; /* previous ifs */
|
||||
u64 pmsa_br1; /* branch register 1 */
|
||||
u64 pmsa_reserved[70]; /* pal_min_state_area should total to 1KB */
|
||||
} pal_min_state_area_t;
|
||||
};
|
||||
|
||||
|
||||
struct ia64_pal_retval {
|
||||
|
||||
@@ -385,7 +385,7 @@ typedef struct sal_processor_static_info {
|
||||
fr : 1,
|
||||
reserved : 58;
|
||||
} valid;
|
||||
pal_min_state_area_t min_state_area;
|
||||
struct pal_min_state_area min_state_area;
|
||||
u64 br[8];
|
||||
u64 cr[128];
|
||||
u64 ar[128];
|
||||
|
||||
@@ -47,8 +47,3 @@ CFLAGS_traps.o += -mfixed-range=f2-f5,f16-f31
|
||||
|
||||
# The gate DSO image is built using a special linker script.
|
||||
include $(src)/Makefile.gate
|
||||
|
||||
include/generated/nr-irqs.h: arch/$(SRCARCH)/kernel/nr-irqs.s FORCE
|
||||
$(call filechk,offsets,__ASM_NR_IRQS_H__)
|
||||
|
||||
targets += nr-irqs.s
|
||||
|
||||
@@ -245,23 +245,23 @@ void foo(void)
|
||||
BLANK();
|
||||
|
||||
DEFINE(IA64_PMSA_GR_OFFSET,
|
||||
offsetof (struct pal_min_state_area_s, pmsa_gr));
|
||||
offsetof(struct pal_min_state_area, pmsa_gr));
|
||||
DEFINE(IA64_PMSA_BANK1_GR_OFFSET,
|
||||
offsetof (struct pal_min_state_area_s, pmsa_bank1_gr));
|
||||
offsetof(struct pal_min_state_area, pmsa_bank1_gr));
|
||||
DEFINE(IA64_PMSA_PR_OFFSET,
|
||||
offsetof (struct pal_min_state_area_s, pmsa_pr));
|
||||
offsetof(struct pal_min_state_area, pmsa_pr));
|
||||
DEFINE(IA64_PMSA_BR0_OFFSET,
|
||||
offsetof (struct pal_min_state_area_s, pmsa_br0));
|
||||
offsetof(struct pal_min_state_area, pmsa_br0));
|
||||
DEFINE(IA64_PMSA_RSC_OFFSET,
|
||||
offsetof (struct pal_min_state_area_s, pmsa_rsc));
|
||||
offsetof(struct pal_min_state_area, pmsa_rsc));
|
||||
DEFINE(IA64_PMSA_IIP_OFFSET,
|
||||
offsetof (struct pal_min_state_area_s, pmsa_iip));
|
||||
offsetof(struct pal_min_state_area, pmsa_iip));
|
||||
DEFINE(IA64_PMSA_IPSR_OFFSET,
|
||||
offsetof (struct pal_min_state_area_s, pmsa_ipsr));
|
||||
offsetof(struct pal_min_state_area, pmsa_ipsr));
|
||||
DEFINE(IA64_PMSA_IFS_OFFSET,
|
||||
offsetof (struct pal_min_state_area_s, pmsa_ifs));
|
||||
offsetof(struct pal_min_state_area, pmsa_ifs));
|
||||
DEFINE(IA64_PMSA_XIP_OFFSET,
|
||||
offsetof (struct pal_min_state_area_s, pmsa_xip));
|
||||
offsetof(struct pal_min_state_area, pmsa_xip));
|
||||
BLANK();
|
||||
|
||||
/* used by fsys_gettimeofday in arch/ia64/kernel/fsys.S */
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
#include <linux/memblock.h>
|
||||
#include <linux/kexec.h>
|
||||
#include <linux/elfcore.h>
|
||||
#include <linux/reboot.h>
|
||||
#include <linux/sysctl.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/kdebug.h>
|
||||
|
||||
@@ -40,6 +40,7 @@
|
||||
#include <asm/meminit.h>
|
||||
#include <asm/processor.h>
|
||||
#include <asm/mca.h>
|
||||
#include <asm/sal.h>
|
||||
#include <asm/setup.h>
|
||||
#include <asm/tlbflush.h>
|
||||
|
||||
|
||||
@@ -97,6 +97,7 @@
|
||||
#include <asm/ptrace.h>
|
||||
#include <asm/sal.h>
|
||||
#include <asm/mca.h>
|
||||
#include <asm/mca_asm.h>
|
||||
#include <asm/kexec.h>
|
||||
|
||||
#include <asm/irq.h>
|
||||
@@ -895,7 +896,7 @@ static void
|
||||
finish_pt_regs(struct pt_regs *regs, struct ia64_sal_os_state *sos,
|
||||
unsigned long *nat)
|
||||
{
|
||||
const pal_min_state_area_t *ms = sos->pal_min_state;
|
||||
const struct pal_min_state_area *ms = sos->pal_min_state;
|
||||
const u64 *bank;
|
||||
|
||||
/* If ipsr.ic then use pmsa_{iip,ipsr,ifs}, else use
|
||||
@@ -971,7 +972,7 @@ ia64_mca_modify_original_stack(struct pt_regs *regs,
|
||||
char *p;
|
||||
ia64_va va;
|
||||
extern char ia64_leave_kernel[]; /* Need asm address, not function descriptor */
|
||||
const pal_min_state_area_t *ms = sos->pal_min_state;
|
||||
const struct pal_min_state_area *ms = sos->pal_min_state;
|
||||
struct task_struct *previous_current;
|
||||
struct pt_regs *old_regs;
|
||||
struct switch_stack *old_sw;
|
||||
|
||||
@@ -496,7 +496,7 @@ recover_from_read_error(slidx_table_t *slidx,
|
||||
struct ia64_sal_os_state *sos)
|
||||
{
|
||||
u64 target_identifier;
|
||||
pal_min_state_area_t *pmsa;
|
||||
struct pal_min_state_area *pmsa;
|
||||
struct ia64_psr *psr1, *psr2;
|
||||
ia64_fptr_t *mca_hdlr_bh = (ia64_fptr_t*)mca_handler_bhhook;
|
||||
|
||||
|
||||
@@ -1,22 +0,0 @@
|
||||
// SPDX-License-Identifier: GPL-2.0
|
||||
/*
|
||||
* calculate
|
||||
* NR_IRQS = max(IA64_NATIVE_NR_IRQS, XEN_NR_IRQS, FOO_NR_IRQS...)
|
||||
* depending on config.
|
||||
* This must be calculated before processing asm-offset.c.
|
||||
*/
|
||||
|
||||
#define ASM_OFFSETS_C 1
|
||||
|
||||
#include <linux/kbuild.h>
|
||||
#include <linux/threads.h>
|
||||
#include <asm/native/irq.h>
|
||||
|
||||
void foo(void)
|
||||
{
|
||||
union paravirt_nr_irqs_max {
|
||||
char ia64_native_nr_irqs[IA64_NATIVE_NR_IRQS];
|
||||
};
|
||||
|
||||
DEFINE(NR_IRQS, sizeof (union paravirt_nr_irqs_max));
|
||||
}
|
||||
@@ -5,7 +5,7 @@ uapi := arch/$(SRCARCH)/include/generated/uapi/asm
|
||||
_dummy := $(shell [ -d '$(uapi)' ] || mkdir -p '$(uapi)') \
|
||||
$(shell [ -d '$(kapi)' ] || mkdir -p '$(kapi)')
|
||||
|
||||
syscall := $(srctree)/$(src)/syscall.tbl
|
||||
syscall := $(src)/syscall.tbl
|
||||
syshdr := $(srctree)/$(src)/syscallhdr.sh
|
||||
systbl := $(srctree)/$(src)/syscalltbl.sh
|
||||
|
||||
@@ -22,19 +22,20 @@ quiet_cmd_systbl = SYSTBL $@
|
||||
'$(systbl_offset_$(basetarget))'
|
||||
|
||||
syshdr_offset_unistd_64 := __NR_Linux
|
||||
$(uapi)/unistd_64.h: $(syscall) $(syshdr)
|
||||
$(uapi)/unistd_64.h: $(syscall) $(syshdr) FORCE
|
||||
$(call if_changed,syshdr)
|
||||
|
||||
systbl_offset_syscall_table := 1024
|
||||
$(kapi)/syscall_table.h: $(syscall) $(systbl)
|
||||
$(kapi)/syscall_table.h: $(syscall) $(systbl) FORCE
|
||||
$(call if_changed,systbl)
|
||||
|
||||
uapisyshdr-y += unistd_64.h
|
||||
kapisyshdr-y += syscall_table.h
|
||||
|
||||
targets += $(uapisyshdr-y) $(kapisyshdr-y)
|
||||
uapisyshdr-y := $(addprefix $(uapi)/, $(uapisyshdr-y))
|
||||
kapisyshdr-y := $(addprefix $(kapi)/, $(kapisyshdr-y))
|
||||
targets += $(addprefix ../../../../, $(uapisyshdr-y) $(kapisyshdr-y))
|
||||
|
||||
PHONY += all
|
||||
all: $(addprefix $(uapi)/,$(uapisyshdr-y))
|
||||
all: $(addprefix $(kapi)/,$(kapisyshdr-y))
|
||||
all: $(uapisyshdr-y) $(kapisyshdr-y)
|
||||
@:
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user