[linux] 01/01: Update to 4.9-rc6
debian-kernel at lists.debian.org
debian-kernel at lists.debian.org
Mon Nov 21 23:52:58 UTC 2016
This is an automated email from the git hooks/post-receive script.
benh pushed a commit to branch master
in repository linux.
commit fa9e148da495f5f251d06a97b9f2ff3186959147
Author: Ben Hutchings <ben at decadent.org.uk>
Date: Mon Nov 21 23:52:49 2016 +0000
Update to 4.9-rc6
---
debian/changelog | 5 +-
debian/patches/bugfix/all/kbuild-add-fno-pie.patch | 36 ----
...ore-careful-about-matching-preprocessed-a.patch | 41 ----
...ild-modversions-for-EXPORT_SYMBOL-for-asm.patch | 149 ---------------
.../scripts-has-stack-protector-add-fno-pie.patch | 36 ----
...vent-mixed-mode-boot-corruption-with-conf.patch | 212 ---------------------
.../patches/bugfix/x86/x86-kexec-add-fno-pie.patch | 32 ----
debian/patches/series | 6 -
8 files changed, 4 insertions(+), 513 deletions(-)
diff --git a/debian/changelog b/debian/changelog
index b18f57e..bbd516a 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,5 +1,8 @@
-linux (4.9~rc5-1~exp2) UNRELEASED; urgency=medium
+linux (4.9~rc6-1~exp1) UNRELEASED; urgency=medium
+ * New upstream release candidate
+
+ [ Uwe Kleine-König ]
* [armhf,armel] Fix problem with module CRC generation (Closes: #844530)
-- Uwe Kleine-König <ukleinek at debian.org> Thu, 17 Nov 2016 09:55:16 +0100
diff --git a/debian/patches/bugfix/all/kbuild-add-fno-pie.patch b/debian/patches/bugfix/all/kbuild-add-fno-pie.patch
deleted file mode 100644
index 6326b30..0000000
--- a/debian/patches/bugfix/all/kbuild-add-fno-pie.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
-Date: Fri, 4 Nov 2016 19:39:38 +0100
-Subject: kbuild: add -fno-PIE
-Origin: https://git.kernel.org/cgit/linux/kernel/git/mmarek/kbuild.git/commit?id=8ae94224c9d72fc4d9aaac93b2d7833cf46d7141
-Bug-Debian: https://bugs.debian.org/841368
-
-Debian started to build the gcc with -fPIE by default so the kernel
-build ends before it starts properly with:
-|kernel/bounds.c:1:0: error: code model kernel does not support PIC mode
-
-Also add to KBUILD_AFLAGS due to:
-
-|gcc -Wp,-MD,arch/x86/entry/vdso/vdso32/.note.o.d … -mfentry -DCC_USING_FENTRY … vdso/vdso32/note.S
-|arch/x86/entry/vdso/vdso32/note.S:1:0: sorry, unimplemented: -mfentry isn’t supported for 32-bit in combination with -fpic
-
-Tagging it stable so it is possible to compile recent stable kernels as
-well.
-
-Cc: stable at vger.kernel.org
-Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
-Signed-off-by: Michal Marek <mmarek at suse.com>
----
- Makefile | 2 ++
- 1 file changed, 2 insertions(+)
-
---- a/Makefile
-+++ b/Makefile
-@@ -623,6 +623,8 @@ include arch/$(SRCARCH)/Makefile
-
- KBUILD_CFLAGS += $(call cc-option,-fno-delete-null-pointer-checks,)
- KBUILD_CFLAGS += $(call cc-disable-warning,frame-address,)
-+KBUILD_CFLAGS += $(call cc-option,-fno-PIE)
-+KBUILD_AFLAGS += $(call cc-option,-fno-PIE)
-
- ifdef CONFIG_LD_DEAD_CODE_DATA_ELIMINATION
- KBUILD_CFLAGS += $(call cc-option,-ffunction-sections,)
diff --git a/debian/patches/bugfix/arm/kbuild-be-more-careful-about-matching-preprocessed-a.patch b/debian/patches/bugfix/arm/kbuild-be-more-careful-about-matching-preprocessed-a.patch
deleted file mode 100644
index f277bfd..0000000
--- a/debian/patches/bugfix/arm/kbuild-be-more-careful-about-matching-preprocessed-a.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From: Nicholas Piggin <npiggin at gmail.com>
-Date: Wed, 9 Nov 2016 15:34:05 +1100
-Subject: kbuild: be more careful about matching preprocessed asm ___EXPORT_SYMBOL
-Origin: https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/?id=cc6acc11cad1eb1ae39707a3a6e4a97fafbeeabd
-
-The CRC code for asm exports grabs the preprocessed asm, finds the
-___EXPORT_SYMBOL and turns those into EXPORT_SYMBOL in a C program
-that can be preprocessed and parsed to create the CRC signatures from
-the type.
-
-The existing regex matching and replacement is too strict, and doesn't
-deal well with whitespace among other things. The line
-" EXPORT_SYMBOL(sym)" in a .S file would not match due to initial
-whitespace, for example, which resulted in x86's ___preempt_schedule
-failing to get CRCs.
-
-Reported-by: Philip Müller <philm at manjaro.org>
-Signed-off-by: Nicholas Piggin <npiggin at gmail.com>
-Signed-off-by: Michal Marek <mmarek at suse.com>
----
- scripts/Makefile.build | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/scripts/Makefile.build b/scripts/Makefile.build
-index 3e223c264469..7675d11ee65e 100644
---- a/scripts/Makefile.build
-+++ b/scripts/Makefile.build
-@@ -332,8 +332,8 @@ cmd_gensymtypes_S = \
- (echo "\#include <linux/kernel.h>" ; \
- echo "\#include <asm/asm-prototypes.h>" ; \
- $(CPP) $(a_flags) $< | \
-- grep ^___EXPORT_SYMBOL | \
-- sed 's/___EXPORT_SYMBOL \([a-zA-Z0-9_]*\),.*/EXPORT_SYMBOL(\1);/' ) | \
-+ grep "\<___EXPORT_SYMBOL\>" | \
-+ sed 's/.*___EXPORT_SYMBOL[[:space:]]*\([a-zA-Z0-9_]*\)[[:space:]]*,.*/EXPORT_SYMBOL(\1);/' ) | \
- $(CPP) -D__GENKSYMS__ $(c_flags) -xc - | \
- $(GENKSYMS) $(if $(1), -T $(2)) \
- $(patsubst y,-s _,$(CONFIG_HAVE_UNDERSCORE_SYMBOL_PREFIX)) \
---
-2.10.2
-
diff --git a/debian/patches/bugfix/arm/kbuild-modversions-for-EXPORT_SYMBOL-for-asm.patch b/debian/patches/bugfix/arm/kbuild-modversions-for-EXPORT_SYMBOL-for-asm.patch
deleted file mode 100644
index f4c55fd..0000000
--- a/debian/patches/bugfix/arm/kbuild-modversions-for-EXPORT_SYMBOL-for-asm.patch
+++ /dev/null
@@ -1,149 +0,0 @@
-From: Nicholas Piggin <npiggin at gmail.com>
-Date: Tue, 1 Nov 2016 12:46:19 +1100
-Subject: [PATCH] kbuild: modversions for EXPORT_SYMBOL() for asm
-Origin: https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/?id=4efca4ed05cbdfd13ec3e8cb623fb77d6e4ab187
-
-Allow architectures to create asm/asm-prototypes.h file that
-provides C prototypes for exported asm functions, which enables
-proper CRC versions to be generated for them.
-
-Signed-off-by: Nicholas Piggin <npiggin at gmail.com>
-Signed-off-by: Michal Marek <mmarek at suse.com>
----
- scripts/Makefile.build | 78 ++++++++++++++++++++++++++++++++++++++++++++++----
- 1 file changed, 72 insertions(+), 6 deletions(-)
-
-diff --git a/scripts/Makefile.build b/scripts/Makefile.build
-index e1f25d6d132e..3e223c264469 100644
---- a/scripts/Makefile.build
-+++ b/scripts/Makefile.build
-@@ -159,7 +159,8 @@ cmd_cpp_i_c = $(CPP) $(c_flags) -o $@ $<
- $(obj)/%.i: $(src)/%.c FORCE
- $(call if_changed_dep,cpp_i_c)
-
--cmd_gensymtypes = \
-+# These mirror gensymtypes_S and co below, keep them in synch.
-+cmd_gensymtypes_c = \
- $(CPP) -D__GENKSYMS__ $(c_flags) $< | \
- $(GENKSYMS) $(if $(1), -T $(2)) \
- $(patsubst y,-s _,$(CONFIG_HAVE_UNDERSCORE_SYMBOL_PREFIX)) \
-@@ -169,7 +170,7 @@ cmd_gensymtypes = \
- quiet_cmd_cc_symtypes_c = SYM $(quiet_modtag) $@
- cmd_cc_symtypes_c = \
- set -e; \
-- $(call cmd_gensymtypes,true,$@) >/dev/null; \
-+ $(call cmd_gensymtypes_c,true,$@) >/dev/null; \
- test -s $@ || rm -f $@
-
- $(obj)/%.symtypes : $(src)/%.c FORCE
-@@ -198,9 +199,10 @@ else
- # the actual value of the checksum generated by genksyms
-
- cmd_cc_o_c = $(CC) $(c_flags) -c -o $(@D)/.tmp_$(@F) $<
--cmd_modversions = \
-+
-+cmd_modversions_c = \
- if $(OBJDUMP) -h $(@D)/.tmp_$(@F) | grep -q __ksymtab; then \
-- $(call cmd_gensymtypes,$(KBUILD_SYMTYPES),$(@:.o=.symtypes)) \
-+ $(call cmd_gensymtypes_c,$(KBUILD_SYMTYPES),$(@:.o=.symtypes)) \
- > $(@D)/.tmp_$(@F:.o=.ver); \
- \
- $(LD) $(LDFLAGS) -r -o $@ $(@D)/.tmp_$(@F) \
-@@ -268,13 +270,14 @@ endif # CONFIG_STACK_VALIDATION
- define rule_cc_o_c
- $(call echo-cmd,checksrc) $(cmd_checksrc) \
- $(call cmd_and_fixdep,cc_o_c) \
-- $(cmd_modversions) \
-+ $(cmd_modversions_c) \
- $(cmd_objtool) \
- $(call echo-cmd,record_mcount) $(cmd_record_mcount)
- endef
-
- define rule_as_o_S
- $(call cmd_and_fixdep,as_o_S) \
-+ $(cmd_modversions_S) \
- $(cmd_objtool)
- endef
-
-@@ -314,6 +317,39 @@ modkern_aflags := $(KBUILD_AFLAGS_KERNEL) $(AFLAGS_KERNEL)
- $(real-objs-m) : modkern_aflags := $(KBUILD_AFLAGS_MODULE) $(AFLAGS_MODULE)
- $(real-objs-m:.o=.s): modkern_aflags := $(KBUILD_AFLAGS_MODULE) $(AFLAGS_MODULE)
-
-+# .S file exports must have their C prototypes defined in asm/asm-prototypes.h
-+# or a file that it includes, in order to get versioned symbols. We build a
-+# dummy C file that includes asm-prototypes and the EXPORT_SYMBOL lines from
-+# the .S file (with trailing ';'), and run genksyms on that, to extract vers.
-+#
-+# This is convoluted. The .S file must first be preprocessed to run guards and
-+# expand names, then the resulting exports must be constructed into plain
-+# EXPORT_SYMBOL(symbol); to build our dummy C file, and that gets preprocessed
-+# to make the genksyms input.
-+#
-+# These mirror gensymtypes_c and co above, keep them in synch.
-+cmd_gensymtypes_S = \
-+ (echo "\#include <linux/kernel.h>" ; \
-+ echo "\#include <asm/asm-prototypes.h>" ; \
-+ $(CPP) $(a_flags) $< | \
-+ grep ^___EXPORT_SYMBOL | \
-+ sed 's/___EXPORT_SYMBOL \([a-zA-Z0-9_]*\),.*/EXPORT_SYMBOL(\1);/' ) | \
-+ $(CPP) -D__GENKSYMS__ $(c_flags) -xc - | \
-+ $(GENKSYMS) $(if $(1), -T $(2)) \
-+ $(patsubst y,-s _,$(CONFIG_HAVE_UNDERSCORE_SYMBOL_PREFIX)) \
-+ $(if $(KBUILD_PRESERVE),-p) \
-+ -r $(firstword $(wildcard $(2:.symtypes=.symref) /dev/null))
-+
-+quiet_cmd_cc_symtypes_S = SYM $(quiet_modtag) $@
-+cmd_cc_symtypes_S = \
-+ set -e; \
-+ $(call cmd_gensymtypes_S,true,$@) >/dev/null; \
-+ test -s $@ || rm -f $@
-+
-+$(obj)/%.symtypes : $(src)/%.S FORCE
-+ $(call cmd,cc_symtypes_S)
-+
-+
- quiet_cmd_cpp_s_S = CPP $(quiet_modtag) $@
- cmd_cpp_s_S = $(CPP) $(a_flags) -o $@ $<
-
-@@ -321,7 +357,37 @@ $(obj)/%.s: $(src)/%.S FORCE
- $(call if_changed_dep,cpp_s_S)
-
- quiet_cmd_as_o_S = AS $(quiet_modtag) $@
--cmd_as_o_S = $(CC) $(a_flags) -c -o $@ $<
-+
-+ifndef CONFIG_MODVERSIONS
-+cmd_as_o_S = $(CC) $(a_flags) -c -o $@ $<
-+
-+else
-+
-+ASM_PROTOTYPES := $(wildcard $(srctree)/arch/$(SRCARCH)/include/asm/asm-prototypes.h)
-+
-+ifeq ($(ASM_PROTOTYPES),)
-+cmd_as_o_S = $(CC) $(a_flags) -c -o $@ $<
-+
-+else
-+
-+# versioning matches the C process described above, with difference that
-+# we parse asm-prototypes.h C header to get function definitions.
-+
-+cmd_as_o_S = $(CC) $(a_flags) -c -o $(@D)/.tmp_$(@F) $<
-+
-+cmd_modversions_S = \
-+ if $(OBJDUMP) -h $(@D)/.tmp_$(@F) | grep -q __ksymtab; then \
-+ $(call cmd_gensymtypes_S,$(KBUILD_SYMTYPES),$(@:.o=.symtypes)) \
-+ > $(@D)/.tmp_$(@F:.o=.ver); \
-+ \
-+ $(LD) $(LDFLAGS) -r -o $@ $(@D)/.tmp_$(@F) \
-+ -T $(@D)/.tmp_$(@F:.o=.ver); \
-+ rm -f $(@D)/.tmp_$(@F) $(@D)/.tmp_$(@F:.o=.ver); \
-+ else \
-+ mv -f $(@D)/.tmp_$(@F) $@; \
-+ fi;
-+endif
-+endif
-
- $(obj)/%.o: $(src)/%.S $(objtool_obj) FORCE
- $(call if_changed_rule,as_o_S)
---
-2.10.2
-
diff --git a/debian/patches/bugfix/x86/scripts-has-stack-protector-add-fno-pie.patch b/debian/patches/bugfix/x86/scripts-has-stack-protector-add-fno-pie.patch
deleted file mode 100644
index 3763219..0000000
--- a/debian/patches/bugfix/x86/scripts-has-stack-protector-add-fno-pie.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
-Date: Fri, 4 Nov 2016 19:39:39 +0100
-Subject: scripts/has-stack-protector: add -fno-PIE
-Origin: https://git.kernel.org/cgit/linux/kernel/git/mmarek/kbuild.git/commit?id=82031ea29e454b574bc6f49a33683a693ca5d907
-Bug-Debian: https://bugs.debian.org/841368
-
-Adding -no-PIE to the fstack protector check. -no-PIE was introduced
-before -fstack-protector so there is no need for a runtime check.
-
-Without it the build stops:
-|Cannot use CONFIG_CC_STACKPROTECTOR_STRONG: -fstack-protector-strong available but compiler is broken
-
-due to -mcmodel=kernel + -fPIE if -fPIE is enabled by default.
-
-Tagging it stable so it is possible to compile recent stable kernels as
-well.
-
-Cc: stable at vger.kernel.org
-Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
-Signed-off-by: Michal Marek <mmarek at suse.com>
----
- scripts/gcc-x86_64-has-stack-protector.sh | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/scripts/gcc-x86_64-has-stack-protector.sh b/scripts/gcc-x86_64-has-stack-protector.sh
-index 973e8c141567..17867e723a51 100755
---- a/scripts/gcc-x86_64-has-stack-protector.sh
-+++ b/scripts/gcc-x86_64-has-stack-protector.sh
-@@ -1,6 +1,6 @@
- #!/bin/sh
-
--echo "int foo(void) { char X[200]; return 3; }" | $* -S -x c -c -O0 -mcmodel=kernel -fstack-protector - -o - 2> /dev/null | grep -q "%gs"
-+echo "int foo(void) { char X[200]; return 3; }" | $* -S -x c -c -O0 -mcmodel=kernel -fno-PIE -fstack-protector - -o - 2> /dev/null | grep -q "%gs"
- if [ "$?" -eq "0" ] ; then
- echo y
- else
diff --git a/debian/patches/bugfix/x86/x86-efi-prevent-mixed-mode-boot-corruption-with-conf.patch b/debian/patches/bugfix/x86/x86-efi-prevent-mixed-mode-boot-corruption-with-conf.patch
deleted file mode 100644
index 959912d..0000000
--- a/debian/patches/bugfix/x86/x86-efi-prevent-mixed-mode-boot-corruption-with-conf.patch
+++ /dev/null
@@ -1,212 +0,0 @@
-From: Matt Fleming <matt at codeblueprint.co.uk>
-Date: Sat, 12 Nov 2016 21:04:24 +0000
-Subject: x86/efi: Prevent mixed mode boot corruption with CONFIG_VMAP_STACK=y
-Origin: https://git.kernel.org/linus/f6697df36bdf0bf7fce984605c2918d4a7b4269f
-
-Booting an EFI mixed mode kernel has been crashing since commit:
-
- e37e43a497d5 ("x86/mm/64: Enable vmapped stacks (CONFIG_HAVE_ARCH_VMAP_STACK=y)")
-
-The user-visible effect in my test setup was the kernel being unable
-to find the root file system ramdisk. This was likely caused by silent
-memory or page table corruption.
-
-Enabling CONFIG_DEBUG_VIRTUAL=y immediately flagged the thunking code as
-abusing virt_to_phys() because it was passing addresses that were not
-part of the kernel direct mapping.
-
-Use the slow version instead, which correctly handles all memory
-regions by performing a page table walk.
-
-Suggested-by: Andy Lutomirski <luto at amacapital.net>
-Signed-off-by: Matt Fleming <matt at codeblueprint.co.uk>
-Cc: Andy Lutomirski <luto at kernel.org>
-Cc: Ard Biesheuvel <ard.biesheuvel at linaro.org>
-Cc: Borislav Petkov <bp at alien8.de>
-Cc: Brian Gerst <brgerst at gmail.com>
-Cc: Denys Vlasenko <dvlasenk at redhat.com>
-Cc: H. Peter Anvin <hpa at zytor.com>
-Cc: Josh Poimboeuf <jpoimboe at redhat.com>
-Cc: Linus Torvalds <torvalds at linux-foundation.org>
-Cc: Peter Zijlstra <peterz at infradead.org>
-Cc: Thomas Gleixner <tglx at linutronix.de>
-Cc: linux-efi at vger.kernel.org
-Link: http://lkml.kernel.org/r/20161112210424.5157-3-matt@codeblueprint.co.uk
-Signed-off-by: Ingo Molnar <mingo at kernel.org>
----
- arch/x86/platform/efi/efi_64.c | 80 ++++++++++++++++++++++++++++++------------
- 1 file changed, 57 insertions(+), 23 deletions(-)
-
---- a/arch/x86/platform/efi/efi_64.c
-+++ b/arch/x86/platform/efi/efi_64.c
-@@ -31,6 +31,7 @@
- #include <linux/io.h>
- #include <linux/reboot.h>
- #include <linux/slab.h>
-+#include <linux/ucs2_string.h>
-
- #include <asm/setup.h>
- #include <asm/page.h>
-@@ -211,6 +212,35 @@ void efi_sync_low_kernel_mappings(void)
- memcpy(pud_efi, pud_k, sizeof(pud_t) * num_entries);
- }
-
-+/*
-+ * Wrapper for slow_virt_to_phys() that handles NULL addresses.
-+ */
-+static inline phys_addr_t
-+virt_to_phys_or_null_size(void *va, unsigned long size)
-+{
-+ bool bad_size;
-+
-+ if (!va)
-+ return 0;
-+
-+ if (virt_addr_valid(va))
-+ return virt_to_phys(va);
-+
-+ /*
-+ * A fully aligned variable on the stack is guaranteed not to
-+ * cross a page bounary. Try to catch strings on the stack by
-+ * checking that 'size' is a power of two.
-+ */
-+ bad_size = size > PAGE_SIZE || !is_power_of_2(size);
-+
-+ WARN_ON(!IS_ALIGNED((unsigned long)va, size) || bad_size);
-+
-+ return slow_virt_to_phys(va);
-+}
-+
-+#define virt_to_phys_or_null(addr) \
-+ virt_to_phys_or_null_size((addr), sizeof(*(addr)))
-+
- int __init efi_setup_page_tables(unsigned long pa_memmap, unsigned num_pages)
- {
- unsigned long pfn, text;
-@@ -494,8 +524,8 @@ static efi_status_t efi_thunk_get_time(e
-
- spin_lock(&rtc_lock);
-
-- phys_tm = virt_to_phys(tm);
-- phys_tc = virt_to_phys(tc);
-+ phys_tm = virt_to_phys_or_null(tm);
-+ phys_tc = virt_to_phys_or_null(tc);
-
- status = efi_thunk(get_time, phys_tm, phys_tc);
-
-@@ -511,7 +541,7 @@ static efi_status_t efi_thunk_set_time(e
-
- spin_lock(&rtc_lock);
-
-- phys_tm = virt_to_phys(tm);
-+ phys_tm = virt_to_phys_or_null(tm);
-
- status = efi_thunk(set_time, phys_tm);
-
-@@ -529,9 +559,9 @@ efi_thunk_get_wakeup_time(efi_bool_t *en
-
- spin_lock(&rtc_lock);
-
-- phys_enabled = virt_to_phys(enabled);
-- phys_pending = virt_to_phys(pending);
-- phys_tm = virt_to_phys(tm);
-+ phys_enabled = virt_to_phys_or_null(enabled);
-+ phys_pending = virt_to_phys_or_null(pending);
-+ phys_tm = virt_to_phys_or_null(tm);
-
- status = efi_thunk(get_wakeup_time, phys_enabled,
- phys_pending, phys_tm);
-@@ -549,7 +579,7 @@ efi_thunk_set_wakeup_time(efi_bool_t ena
-
- spin_lock(&rtc_lock);
-
-- phys_tm = virt_to_phys(tm);
-+ phys_tm = virt_to_phys_or_null(tm);
-
- status = efi_thunk(set_wakeup_time, enabled, phys_tm);
-
-@@ -558,6 +588,10 @@ efi_thunk_set_wakeup_time(efi_bool_t ena
- return status;
- }
-
-+static unsigned long efi_name_size(efi_char16_t *name)
-+{
-+ return ucs2_strsize(name, EFI_VAR_NAME_LEN) + 1;
-+}
-
- static efi_status_t
- efi_thunk_get_variable(efi_char16_t *name, efi_guid_t *vendor,
-@@ -567,11 +601,11 @@ efi_thunk_get_variable(efi_char16_t *nam
- u32 phys_name, phys_vendor, phys_attr;
- u32 phys_data_size, phys_data;
-
-- phys_data_size = virt_to_phys(data_size);
-- phys_vendor = virt_to_phys(vendor);
-- phys_name = virt_to_phys(name);
-- phys_attr = virt_to_phys(attr);
-- phys_data = virt_to_phys(data);
-+ phys_data_size = virt_to_phys_or_null(data_size);
-+ phys_vendor = virt_to_phys_or_null(vendor);
-+ phys_name = virt_to_phys_or_null_size(name, efi_name_size(name));
-+ phys_attr = virt_to_phys_or_null(attr);
-+ phys_data = virt_to_phys_or_null_size(data, *data_size);
-
- status = efi_thunk(get_variable, phys_name, phys_vendor,
- phys_attr, phys_data_size, phys_data);
-@@ -586,9 +620,9 @@ efi_thunk_set_variable(efi_char16_t *nam
- u32 phys_name, phys_vendor, phys_data;
- efi_status_t status;
-
-- phys_name = virt_to_phys(name);
-- phys_vendor = virt_to_phys(vendor);
-- phys_data = virt_to_phys(data);
-+ phys_name = virt_to_phys_or_null_size(name, efi_name_size(name));
-+ phys_vendor = virt_to_phys_or_null(vendor);
-+ phys_data = virt_to_phys_or_null_size(data, data_size);
-
- /* If data_size is > sizeof(u32) we've got problems */
- status = efi_thunk(set_variable, phys_name, phys_vendor,
-@@ -605,9 +639,9 @@ efi_thunk_get_next_variable(unsigned lon
- efi_status_t status;
- u32 phys_name_size, phys_name, phys_vendor;
-
-- phys_name_size = virt_to_phys(name_size);
-- phys_vendor = virt_to_phys(vendor);
-- phys_name = virt_to_phys(name);
-+ phys_name_size = virt_to_phys_or_null(name_size);
-+ phys_vendor = virt_to_phys_or_null(vendor);
-+ phys_name = virt_to_phys_or_null_size(name, *name_size);
-
- status = efi_thunk(get_next_variable, phys_name_size,
- phys_name, phys_vendor);
-@@ -621,7 +655,7 @@ efi_thunk_get_next_high_mono_count(u32 *
- efi_status_t status;
- u32 phys_count;
-
-- phys_count = virt_to_phys(count);
-+ phys_count = virt_to_phys_or_null(count);
- status = efi_thunk(get_next_high_mono_count, phys_count);
-
- return status;
-@@ -633,7 +667,7 @@ efi_thunk_reset_system(int reset_type, e
- {
- u32 phys_data;
-
-- phys_data = virt_to_phys(data);
-+ phys_data = virt_to_phys_or_null_size(data, data_size);
-
- efi_thunk(reset_system, reset_type, status, data_size, phys_data);
- }
-@@ -661,9 +695,9 @@ efi_thunk_query_variable_info(u32 attr,
- if (efi.runtime_version < EFI_2_00_SYSTEM_TABLE_REVISION)
- return EFI_UNSUPPORTED;
-
-- phys_storage = virt_to_phys(storage_space);
-- phys_remaining = virt_to_phys(remaining_space);
-- phys_max = virt_to_phys(max_variable_size);
-+ phys_storage = virt_to_phys_or_null(storage_space);
-+ phys_remaining = virt_to_phys_or_null(remaining_space);
-+ phys_max = virt_to_phys_or_null(max_variable_size);
-
- status = efi_thunk(query_variable_info, attr, phys_storage,
- phys_remaining, phys_max);
diff --git a/debian/patches/bugfix/x86/x86-kexec-add-fno-pie.patch b/debian/patches/bugfix/x86/x86-kexec-add-fno-pie.patch
deleted file mode 100644
index 31412a2..0000000
--- a/debian/patches/bugfix/x86/x86-kexec-add-fno-pie.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
-Date: Fri, 4 Nov 2016 19:39:40 +0100
-Subject: x86/kexec: add -fno-PIE
-Origin: https://git.kernel.org/cgit/linux/kernel/git/mmarek/kbuild.git/commit?id=90944e40ba1838de4b2a9290cf273f9d76bd3bdd
-Bug-Debian: https://bugs.debian.org/841368
-
-If the gcc is configured to do -fPIE by default then the build aborts
-later with:
-| Unsupported relocation type: unknown type rel type name (29)
-
-Tagging it stable so it is possible to compile recent stable kernels as
-well.
-
-Cc: stable at vger.kernel.org
-Signed-off-by: Sebastian Andrzej Siewior <bigeasy at linutronix.de>
-Signed-off-by: Michal Marek <mmarek at suse.com>
----
- arch/x86/purgatory/Makefile | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/arch/x86/purgatory/Makefile b/arch/x86/purgatory/Makefile
-index ac58c1616408..555b9fa0ad43 100644
---- a/arch/x86/purgatory/Makefile
-+++ b/arch/x86/purgatory/Makefile
-@@ -16,6 +16,7 @@ KCOV_INSTRUMENT := n
-
- KBUILD_CFLAGS := -fno-strict-aliasing -Wall -Wstrict-prototypes -fno-zero-initialized-in-bss -fno-builtin -ffreestanding -c -MD -Os -mcmodel=large
- KBUILD_CFLAGS += -m$(BITS)
-+KBUILD_CFLAGS += $(call cc-option,-fno-PIE)
-
- $(obj)/purgatory.ro: $(PURGATORY_OBJS) FORCE
- $(call if_changed,ld)
diff --git a/debian/patches/series b/debian/patches/series
index a65130a..7b6eea5 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -47,9 +47,6 @@ debian/fanotify-taint-on-use-of-fanotify_access_permissions.patch
# Arch bug fixes
bugfix/arm64/arm64-mm-limit-task_size_64-for-compatibility.patch
-bugfix/x86/x86-efi-prevent-mixed-mode-boot-corruption-with-conf.patch
-bugfix/arm/kbuild-modversions-for-EXPORT_SYMBOL-for-asm.patch
-bugfix/arm/kbuild-be-more-careful-about-matching-preprocessed-a.patch
bugfix/arm/kbuild-provide-include-asm-asm-prototypes.h-for-ARM.patch
bugfix/arm/ARM-move-mmiocpy-mmioset-exports-to-io.c.patch
@@ -67,9 +64,6 @@ bugfix/all/fs-add-module_softdep-declarations-for-hard-coded-cr.patch
bugfix/all/kbuild-do-not-use-hyphen-in-exported-variable-name.patch
bugfix/all/ext4-fix-bug-838544.patch
bugfix/all/mm-memcontrol-use-special-workqueue-for-creating-per-memcg-caches.patch
-bugfix/all/kbuild-add-fno-pie.patch
-bugfix/x86/scripts-has-stack-protector-add-fno-pie.patch
-bugfix/x86/x86-kexec-add-fno-pie.patch
# Miscellaneous features
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/kernel/linux.git
More information about the Kernel-svn-changes
mailing list