public inbox for gentoo-kernel@lists.gentoo.org
 help / color / mirror / Atom feed
From: mpagano@gentoo.org
To: gentoo-kernel@lists.gentoo.org
Cc: Mike Pagano <mpagano@gentoo.org>
Subject: [gentoo-kernel] [PATCH] Transitional changes to the kernel-2 eclass to support future CPU OPT
Date: Wed, 28 Apr 2021 16:07:16 -0400	[thread overview]
Message-ID: <20210428200716.510449-1-mpagano@gentoo.org> (raw)

From: Mike Pagano <mpagano@gentoo.org>

The CPU OPT patch now contains gcc ver checks within
the patch itself. This transitional change is to start support
just that patch while trying not to break the older versions.

The target state will *only* need the gcc version check.
We should be able to slowly remove the legacy code as we
stabilize kernels and remove old ones from the tree.

---
 eclass/kernel-2.eclass | 29 +++++++++++++++++++++++++++--
 1 file changed, 27 insertions(+), 2 deletions(-)

diff --git a/eclass/kernel-2.eclass b/eclass/kernel-2.eclass
index 67ad4acc1..f676e8421 100644
--- a/eclass/kernel-2.eclass
+++ b/eclass/kernel-2.eclass
@@ -1241,8 +1241,32 @@ unipatch() {
 			local GCC_MAJOR_VER=$(gcc-major-version)
 			local GCC_MINOR_VER=$(gcc-minor-version)
 
-			# optimization patch for gcc < 8.X and kernel > 4.13
-			if kernel_is ge 4 13 ; then 
+			# this section should be the target state to handle the cpu opt
+			# patch for kernels > 4.19.189, 5.4.115, 5.10.33 and 5.11.17,
+			# 5.12.0 and gcc >= 9  The patch now handles the
+			# gcc version enabled on the system through the Kconfig file as
+			# 'depends'. The legacy section can hopefully be retired in the future
+			# Note the patch for 4.19-5.8 version are the same and the path for 
+			# 5.8+ version is the same
+			# eventually we can remove everything except the gcc ver <9 check
+			# based on stablization, time, kernel removals or a combo of all three
+			if ((kernel_is eq 4 19 && kernel_is gt 4 19 189) ||
+				(kernel_is eq 5 4 && kernel_is gt 5 4 115) ||
+				(kernel_is eq 5 10 && kernel_is gt 5 10 33) ||
+				(kernel_is eq 5 11 && kernel_is gt 5 11 17) ||
+				(kernel_is eq 5 12 && kernel_is gt 5 12 0)); then
+				UNIPATCH_DROP+=" 5010_enable-additional-cpu-optimizations-for-gcc.patch"
+				UNIPATCH_DROP+=" 5010_enable-additional-cpu-optimizations-for-gcc-4.9.patch"
+				UNIPATCH_DROP+=" 5011_enable-cpu-optimizations-for-gcc8.patch"
+				UNIPATCH_DROP+=" 5012_enable-cpu-optimizations-for-gcc91.patch"
+				UNIPATCH_DROP+=" 5013_enable-cpu-optimizations-for-gcc10.patch"
+				if [[ ${GCC_MAJOR_VER} -lt 9 ]]; then
+					UNIPATCH_DROP+=" 5010_enable-cpu-optimizations-universal.patch"
+				fi
+				# this legacy section should be targeted for removal
+				# optimization patch for gcc < 8.X and kernel > 4.13 and <  4.19
+			elif kernel_is ge 4 13; then
+				UNIPATCH_DROP+=" 5010_enable-cpu-optimizations-universal.patch"
 				if [[ ${GCC_MAJOR_VER} -lt 8 ]] && [[ ${GCC_MAJOR_VER} -gt 4 ]]; then
 					UNIPATCH_DROP+=" 5011_enable-cpu-optimizations-for-gcc8.patch"
 					UNIPATCH_DROP+=" 5012_enable-cpu-optimizations-for-gcc91.patch"
@@ -1272,6 +1296,7 @@ unipatch() {
 					UNIPATCH_DROP+=" 5013_enable-cpu-optimizations-for-gcc10.patch"
 				fi
 			else
+				UNIPATCH_DROP+=" 5010_enable-cpu-optimizations-universal.patch"
 				UNIPATCH_DROP+=" 5010_enable-additional-cpu-optimizations-for-gcc.patch"
 				UNIPATCH_DROP+=" 5010_enable-additional-cpu-optimizations-for-gcc-4.9.patch"
 				UNIPATCH_DROP+=" 5011_enable-cpu-optimizations-for-gcc8.patch"
-- 
2.26.3



                 reply	other threads:[~2021-04-28 20:07 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210428200716.510449-1-mpagano@gentoo.org \
    --to=mpagano@gentoo.org \
    --cc=gentoo-kernel@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox