From abab8ee062538b3f16bbb3254e83d35a957793fd Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Mon, 22 Nov 2021 12:33:49 +0100 Subject: [PATCH] 5.4-stable patches added patches: arm64-vdso32-suppress-error-message-for-make-mrproper.patch tun-fix-bonding-active-backup-with-arp-monitoring.patch --- ...ress-error-message-for-make-mrproper.patch | 48 +++++++++++++++++++ .../s390-kexec-fix-return-code-handling.patch | 21 +++----- queue-5.4/series | 2 + ...ng-active-backup-with-arp-monitoring.patch | 45 +++++++++++++++++ 4 files changed, 102 insertions(+), 14 deletions(-) create mode 100644 queue-5.4/arm64-vdso32-suppress-error-message-for-make-mrproper.patch create mode 100644 queue-5.4/tun-fix-bonding-active-backup-with-arp-monitoring.patch diff --git a/queue-5.4/arm64-vdso32-suppress-error-message-for-make-mrproper.patch b/queue-5.4/arm64-vdso32-suppress-error-message-for-make-mrproper.patch new file mode 100644 index 00000000000..7e76b03ca1a --- /dev/null +++ b/queue-5.4/arm64-vdso32-suppress-error-message-for-make-mrproper.patch @@ -0,0 +1,48 @@ +From 14831fad73f5ac30ac61760487d95a538e6ab3cb Mon Sep 17 00:00:00 2001 +From: Nick Desaulniers +Date: Tue, 19 Oct 2021 15:36:45 -0700 +Subject: arm64: vdso32: suppress error message for 'make mrproper' + +From: Nick Desaulniers + +commit 14831fad73f5ac30ac61760487d95a538e6ab3cb upstream. + +When running the following command without arm-linux-gnueabi-gcc in +one's $PATH, the following warning is observed: + +$ ARCH=arm64 CROSS_COMPILE_COMPAT=arm-linux-gnueabi- make -j72 LLVM=1 mrproper +make[1]: arm-linux-gnueabi-gcc: No such file or directory + +This is because KCONFIG is not run for mrproper, so CONFIG_CC_IS_CLANG +is not set, and we end up eagerly evaluating various variables that try +to invoke CC_COMPAT. + +This is a similar problem to what was observed in +commit dc960bfeedb0 ("h8300: suppress error messages for 'make clean'") + +Reported-by: Lucas Henneman +Suggested-by: Masahiro Yamada +Signed-off-by: Nick Desaulniers +Reviewed-by: Vincenzo Frascino +Reviewed-by: Nathan Chancellor +Tested-by: Nathan Chancellor +Link: https://lore.kernel.org/r/20211019223646.1146945-4-ndesaulniers@google.com +Signed-off-by: Will Deacon +Signed-off-by: Greg Kroah-Hartman + +--- + arch/arm64/kernel/vdso32/Makefile | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +--- a/arch/arm64/kernel/vdso32/Makefile ++++ b/arch/arm64/kernel/vdso32/Makefile +@@ -32,7 +32,8 @@ cc32-as-instr = $(call try-run,\ + # As a result we set our own flags here. + + # KBUILD_CPPFLAGS and NOSTDINC_FLAGS from top-level Makefile +-VDSO_CPPFLAGS := -D__KERNEL__ -nostdinc -isystem $(shell $(CC_COMPAT) -print-file-name=include) ++VDSO_CPPFLAGS := -D__KERNEL__ -nostdinc ++VDSO_CPPFLAGS += -isystem $(shell $(CC_COMPAT) -print-file-name=include 2>/dev/null) + VDSO_CPPFLAGS += $(LINUXINCLUDE) + + # Common C and assembly flags diff --git a/queue-5.4/s390-kexec-fix-return-code-handling.patch b/queue-5.4/s390-kexec-fix-return-code-handling.patch index 0083853b5fd..83b2d6661b4 100644 --- a/queue-5.4/s390-kexec-fix-return-code-handling.patch +++ b/queue-5.4/s390-kexec-fix-return-code-handling.patch @@ -16,15 +16,13 @@ Fixes: 99feaa717e55 ("s390/kexec_file: Create ipl report and pass to next kernel Signed-off-by: Heiko Carstens Signed-off-by: Sasha Levin --- - arch/s390/kernel/ipl.c | 3 ++- - arch/s390/kernel/machine_kexec_file.c | 8 +++++++- + arch/s390/kernel/ipl.c | 3 ++- + arch/s390/kernel/machine_kexec_file.c | 8 +++++++- 2 files changed, 9 insertions(+), 2 deletions(-) -diff --git a/arch/s390/kernel/ipl.c b/arch/s390/kernel/ipl.c -index 6837affc19e81..7795cdee6427d 100644 --- a/arch/s390/kernel/ipl.c +++ b/arch/s390/kernel/ipl.c -@@ -1783,7 +1783,7 @@ void *ipl_report_finish(struct ipl_report *report) +@@ -1783,7 +1783,7 @@ void *ipl_report_finish(struct ipl_repor buf = vzalloc(report->size); if (!buf) @@ -33,7 +31,7 @@ index 6837affc19e81..7795cdee6427d 100644 ptr = buf; memcpy(ptr, report->ipib, report->ipib->hdr.len); -@@ -1822,6 +1822,7 @@ void *ipl_report_finish(struct ipl_report *report) +@@ -1822,6 +1822,7 @@ void *ipl_report_finish(struct ipl_repor } BUG_ON(ptr > buf + report->size); @@ -41,11 +39,9 @@ index 6837affc19e81..7795cdee6427d 100644 return buf; } -diff --git a/arch/s390/kernel/machine_kexec_file.c b/arch/s390/kernel/machine_kexec_file.c -index f9e4baa64b675..c1090f0b1f6a6 100644 --- a/arch/s390/kernel/machine_kexec_file.c +++ b/arch/s390/kernel/machine_kexec_file.c -@@ -170,6 +170,7 @@ static int kexec_file_add_ipl_report(struct kimage *image, +@@ -170,6 +170,7 @@ static int kexec_file_add_ipl_report(str struct kexec_buf buf; unsigned long addr; void *ptr, *end; @@ -53,7 +49,7 @@ index f9e4baa64b675..c1090f0b1f6a6 100644 buf.image = image; -@@ -199,7 +200,10 @@ static int kexec_file_add_ipl_report(struct kimage *image, +@@ -199,7 +200,10 @@ static int kexec_file_add_ipl_report(str ptr += len; } @@ -64,7 +60,7 @@ index f9e4baa64b675..c1090f0b1f6a6 100644 buf.bufsz = data->report->size; buf.memsz = buf.bufsz; -@@ -209,7 +213,9 @@ static int kexec_file_add_ipl_report(struct kimage *image, +@@ -209,7 +213,9 @@ static int kexec_file_add_ipl_report(str data->kernel_buf + offsetof(struct lowcore, ipl_parmblock_ptr); *lc_ipl_parmblock_ptr = (__u32)buf.mem; @@ -75,6 +71,3 @@ index f9e4baa64b675..c1090f0b1f6a6 100644 } void *kexec_file_add_components(struct kimage *image, --- -2.33.0 - diff --git a/queue-5.4/series b/queue-5.4/series index 6250e3b8bf1..8614496bc61 100644 --- a/queue-5.4/series +++ b/queue-5.4/series @@ -73,3 +73,5 @@ kvm-ppc-book3s-hv-use-global_toc-for-kvmppc_h_set_da.patch perf-x86-intel-uncore-fix-filter_tid-mask-for-cha-ev.patch perf-x86-intel-uncore-fix-iio-event-constraints-for-.patch s390-kexec-fix-return-code-handling.patch +arm64-vdso32-suppress-error-message-for-make-mrproper.patch +tun-fix-bonding-active-backup-with-arp-monitoring.patch diff --git a/queue-5.4/tun-fix-bonding-active-backup-with-arp-monitoring.patch b/queue-5.4/tun-fix-bonding-active-backup-with-arp-monitoring.patch new file mode 100644 index 00000000000..1118f4bd119 --- /dev/null +++ b/queue-5.4/tun-fix-bonding-active-backup-with-arp-monitoring.patch @@ -0,0 +1,45 @@ +From a31d27fbed5d518734cb60956303eb15089a7634 Mon Sep 17 00:00:00 2001 +From: Nicolas Dichtel +Date: Fri, 12 Nov 2021 08:56:03 +0100 +Subject: tun: fix bonding active backup with arp monitoring + +From: Nicolas Dichtel + +commit a31d27fbed5d518734cb60956303eb15089a7634 upstream. + +As stated in the bonding doc, trans_start must be set manually for drivers +using NETIF_F_LLTX: + Drivers that use NETIF_F_LLTX flag must also update + netdev_queue->trans_start. If they do not, then the ARP monitor will + immediately fail any slaves using that driver, and those slaves will stay + down. + +Link: https://www.kernel.org/doc/html/v5.15/networking/bonding.html#arp-monitor-operation +Signed-off-by: Nicolas Dichtel +Signed-off-by: David S. Miller +Signed-off-by: Greg Kroah-Hartman +--- + drivers/net/tun.c | 5 +++++ + 1 file changed, 5 insertions(+) + +--- a/drivers/net/tun.c ++++ b/drivers/net/tun.c +@@ -1071,6 +1071,7 @@ static netdev_tx_t tun_net_xmit(struct s + { + struct tun_struct *tun = netdev_priv(dev); + int txq = skb->queue_mapping; ++ struct netdev_queue *queue; + struct tun_file *tfile; + int len = skb->len; + +@@ -1117,6 +1118,10 @@ static netdev_tx_t tun_net_xmit(struct s + if (ptr_ring_produce(&tfile->tx_ring, skb)) + goto drop; + ++ /* NETIF_F_LLTX requires to do our own update of trans_start */ ++ queue = netdev_get_tx_queue(dev, txq); ++ queue->trans_start = jiffies; ++ + /* Notify and wake up reader process */ + if (tfile->flags & TUN_FASYNC) + kill_fasync(&tfile->fasync, SIGIO, POLL_IN); -- 2.47.2