From: Prarit Bhargava <[email protected]>

The 'process_configs.sh -n -w -c' command on the fedora configs terminates with

Processing 
/home/prarit/git-kernel/kernel-ark/redhat/configs/kernel-5.8.0-aarch64-debug.config
 ... Error: Mismatches found in configuration files
Found CONFIG_FORCE_MAX_ZONEORDER=11 after generation, had 
CONFIG_FORCE_MAX_ZONEORDER=13 in Source tree
make: *** [Makefile:149: fedora-configs] Error 1

The fedora aarch64 CONFIG entry for CONFIG_FORCE_MAX_ZONEORDER notes that
the warning can only be fixed through an out-of-tree patch.   Unfortunately
this means that the process_configs checkoptions check cannot be run on
fedora aarch64 configs.

To work around this problem, add a special tag
"process_configs_known_broken" which can be added as a comment to a known
broken CONFIG file.  Adding the tag will result in process_configs
checkoptions skipping the CONFIG's error.

Add the process_configs_known_broken flag to process_config.sh and fix
'make fedora-configs' by adding process_configs_known_broken to
CONFIG_FORCE_MAX_ZONEORDER.

Signed-off-by: Prarit Bhargava <[email protected]>
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
---
 .../arm/aarch64/CONFIG_FORCE_MAX_ZONEORDER    |  3 ++-
 redhat/configs/process_configs.sh             | 20 +++++++++++++++++++
 2 files changed, 22 insertions(+), 1 deletion(-)

diff --git 
a/redhat/configs/fedora/generic/arm/aarch64/CONFIG_FORCE_MAX_ZONEORDER 
b/redhat/configs/fedora/generic/arm/aarch64/CONFIG_FORCE_MAX_ZONEORDER
index b730690db048..03d2ae718172 100644
--- a/redhat/configs/fedora/generic/arm/aarch64/CONFIG_FORCE_MAX_ZONEORDER
+++ b/redhat/configs/fedora/generic/arm/aarch64/CONFIG_FORCE_MAX_ZONEORDER
@@ -1,4 +1,5 @@
 # We technically want this to be 13 for Fedora with 4K pages but that's only
 # an option with an out of tree patch. Keep this 11 for compatibility until
-# we figure out what we want here
+# we figure out what we want here.
+# process_configs_known_broken
 CONFIG_FORCE_MAX_ZONEORDER=13
diff --git a/redhat/configs/process_configs.sh 
b/redhat/configs/process_configs.sh
index 14773fef2410..6e36965843a5 100755
--- a/redhat/configs/process_configs.sh
+++ b/redhat/configs/process_configs.sh
@@ -15,6 +15,11 @@ usage()
        echo "     -t: test run, do not overwrite original config"
        echo "     -w: error on misconfigured config options"
        echo "     -z: commit new configs to pending directory"
+       echo ""
+       echo "     A special CONFIG file tag, process_configs_known_broken can 
be added as a"
+       echo "     comment to any CONFIG file.  This tag indicates that there 
is no way to "
+       echo "     fix a CONFIG's entry.  This tag should only be used in 
extreme cases"
+       echo "     and is not to be used as a workaround to solve CONFIG 
problems."
        exit 1
 }
 
@@ -67,8 +72,23 @@ checkoptions()
                }
        ' $1 $2 > .mismatches
 
+       checkoptions_error=false
        if test -s .mismatches
        then
+               while read LINE
+               do
+                       if find ./ -name $(echo $LINE | awk -F "=" ' { print $1 
} ' | awk ' { print $2 }') | xargs grep ^ | grep -q 
"process_configs_known_broken"; then
+                               # This is a known broken config.
+                               # See script help warning.
+                               checkoptions_error=false
+                       else
+                               checkoptions_error=true
+                               break
+                       fi
+               done < .mismatches
+
+               ! $checkoptions_error && return
+
                echo "Error: Mismatches found in configuration files"
                cat .mismatches
                RETURNCODE=1
-- 
GitLab
_______________________________________________
kernel mailing list -- [email protected]
To unsubscribe send an email to [email protected]
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/[email protected]

Reply via email to