From: Greg Kroah-Hartman Date: Thu, 30 Dec 2021 10:44:14 +0000 (+0100) Subject: 4.4-stable patches X-Git-Tag: v4.4.298~28 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=cad359fd932edba5ede113b8d45bf53b94ce79fb;p=thirdparty%2Fkernel%2Fstable-queue.git 4.4-stable patches added patches: recordmcount.pl-fix-typo-in-s390-mcount-regex.patch selinux-initialize-proto-variable-in-selinux_ip_postroute_compat.patch --- diff --git a/queue-4.4/recordmcount.pl-fix-typo-in-s390-mcount-regex.patch b/queue-4.4/recordmcount.pl-fix-typo-in-s390-mcount-regex.patch new file mode 100644 index 00000000000..15f34b77e1a --- /dev/null +++ b/queue-4.4/recordmcount.pl-fix-typo-in-s390-mcount-regex.patch @@ -0,0 +1,40 @@ +From 4eb1782eaa9fa1c224ad1fa0d13a9f09c3ab2d80 Mon Sep 17 00:00:00 2001 +From: Heiko Carstens +Date: Thu, 23 Dec 2021 17:43:14 +0100 +Subject: recordmcount.pl: fix typo in s390 mcount regex + +From: Heiko Carstens + +commit 4eb1782eaa9fa1c224ad1fa0d13a9f09c3ab2d80 upstream. + +Commit 85bf17b28f97 ("recordmcount.pl: look for jgnop instruction as well +as bcrl on s390") added a new alternative mnemonic for the existing brcl +instruction. This is required for the combination old gcc version (pre 9.0) +and binutils since version 2.37. +However at the same time this commit introduced a typo, replacing brcl with +bcrl. As a result no mcount locations are detected anymore with old gcc +versions (pre 9.0) and binutils before version 2.37. +Fix this by using the correct mnemonic again. + +Reported-by: Miroslav Benes +Cc: Jerome Marchand +Cc: +Fixes: 85bf17b28f97 ("recordmcount.pl: look for jgnop instruction as well as bcrl on s390") +Link: https://lore.kernel.org/r/alpine.LSU.2.21.2112230949520.19849@pobox.suse.cz +Signed-off-by: Heiko Carstens +Signed-off-by: Greg Kroah-Hartman +--- + scripts/recordmcount.pl | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/scripts/recordmcount.pl ++++ b/scripts/recordmcount.pl +@@ -248,7 +248,7 @@ if ($arch eq "x86_64") { + + } elsif ($arch eq "s390" && $bits == 64) { + if ($cc =~ /-DCC_USING_HOTPATCH/) { +- $mcount_regex = "^\\s*([0-9a-fA-F]+):\\s*c0 04 00 00 00 00\\s*(bcrl\\s*0,|jgnop\\s*)[0-9a-f]+ <([^\+]*)>\$"; ++ $mcount_regex = "^\\s*([0-9a-fA-F]+):\\s*c0 04 00 00 00 00\\s*(brcl\\s*0,|jgnop\\s*)[0-9a-f]+ <([^\+]*)>\$"; + $mcount_adjust = 0; + } else { + $mcount_regex = "^\\s*([0-9a-fA-F]+):\\s*R_390_(PC|PLT)32DBL\\s+_mcount\\+0x2\$"; diff --git a/queue-4.4/selinux-initialize-proto-variable-in-selinux_ip_postroute_compat.patch b/queue-4.4/selinux-initialize-proto-variable-in-selinux_ip_postroute_compat.patch new file mode 100644 index 00000000000..091250fb5d8 --- /dev/null +++ b/queue-4.4/selinux-initialize-proto-variable-in-selinux_ip_postroute_compat.patch @@ -0,0 +1,41 @@ +From 732bc2ff080c447f8524f40c970c481f5da6eed3 Mon Sep 17 00:00:00 2001 +From: Tom Rix +Date: Fri, 24 Dec 2021 07:07:39 -0800 +Subject: selinux: initialize proto variable in selinux_ip_postroute_compat() + +From: Tom Rix + +commit 732bc2ff080c447f8524f40c970c481f5da6eed3 upstream. + +Clang static analysis reports this warning + +hooks.c:5765:6: warning: 4th function call argument is an uninitialized + value + if (selinux_xfrm_postroute_last(sksec->sid, skb, &ad, proto)) + ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +selinux_parse_skb() can return ok without setting proto. The later call +to selinux_xfrm_postroute_last() does an early check of proto and can +return ok if the garbage proto value matches. So initialize proto. + +Cc: stable@vger.kernel.org +Fixes: eef9b41622f2 ("selinux: cleanup selinux_xfrm_sock_rcv_skb() and selinux_xfrm_postroute_last()") +Signed-off-by: Tom Rix +[PM: typo/spelling and checkpatch.pl description fixes] +Signed-off-by: Paul Moore +Signed-off-by: Greg Kroah-Hartman +--- + security/selinux/hooks.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/security/selinux/hooks.c ++++ b/security/selinux/hooks.c +@@ -4974,7 +4974,7 @@ static unsigned int selinux_ip_postroute + struct common_audit_data ad; + struct lsm_network_audit net = {0,}; + char *addrp; +- u8 proto; ++ u8 proto = 0; + + if (sk == NULL) + return NF_ACCEPT; diff --git a/queue-4.4/series b/queue-4.4/series index b5e34deb28b..fbc05a16533 100644 --- a/queue-4.4/series +++ b/queue-4.4/series @@ -1 +1,3 @@ platform-x86-apple-gmux-use-resource_size-with-res.patch +recordmcount.pl-fix-typo-in-s390-mcount-regex.patch +selinux-initialize-proto-variable-in-selinux_ip_postroute_compat.patch