I use the src.rpm from rawhide kernels to build a kernel custom configured for my hardware in F31, and with a local patch, using the old rpmbuild method. For rc5 this worked, when I tried rc7 it didn't. And rc8 is failing with the same error. The error message is this: scripts/gen_compile_commands.py: updating Processing /home/stan/rpmbuild/BUILD/kernel-5.3.fc31/linux-5.4.0-0.rc8.git1.2.20191124.fc31.x86_64/configs/kernel-5.4.0-aarch64.config ... done Processing /home/stan/rpmbuild/BUILD/kernel-5.3.fc31/linux-5.4.0-0.rc8.git1.2.20191124.fc31.x86_64/configs/kernel-5.4.0-armv7hl-lpae.config ... done Processing /home/stan/rpmbuild/BUILD/kernel-5.3.fc31/linux-5.4.0-0.rc8.git1.2.20191124.fc31.x86_64/configs/kernel-5.4.0-armv7hl.config ... done Processing /home/stan/rpmbuild/BUILD/kernel-5.3.fc31/linux-5.4.0-0.rc8.git1.2.20191124.fc31.x86_64/configs/kernel-5.4.0-i686.config ... done Processing /home/stan/rpmbuild/BUILD/kernel-5.3.fc31/linux-5.4.0-0.rc8.git1.2.20191124.fc31.x86_64/configs/kernel-5.4.0-ppc64le.config ... done Processing /home/stan/rpmbuild/BUILD/kernel-5.3.fc31/linux-5.4.0-0.rc8.git1.2.20191124.fc31.x86_64/configs/kernel-5.4.0-s390x.config ... done Processing /home/stan/rpmbuild/BUILD/kernel-5.3.fc31/linux-5.4.0-0.rc8.git1.2.20191124.fc31.x86_64/configs/kernel-5.4.0-x86_64.config ... Found misconfigured config items, please set them to an appropriate value /home/stan/rpmbuild/BUILD/kernel-5.3.fc31/linux-5.4.0-0.rc8.git1.2.20191124.fc31.x86_64/configs/kernel-5.4.0-x86_64.config.orig:4359:warning: override: PSTORE_LZ4HC_COMPRESS_DEFAULT changes choice state
So, kernel-local is not overriding the default kernel configuration. I think it should; so whatever is checking the configuration consistency has a bug, I think.
Here is where it happens in the build process: + ./process_configs.sh -w -n -c kernel 5.4.0 error: Bad exit status from /var/tmp/rpm-tmp.sEsDIh (%prep) extra tokens at the end of %else directive in line 618: %else # released_kernel
extra tokens at the end of %endif directive in line 627: %endif # released_kernel
Macro expanded in comment on line 701: %{rpmversion}-%{distro_build}.tar.bz2
Macro expanded in comment on line 702: %{rpmversion}-%{distro_build}.tar.bz2
Macro expanded in comment on line 710: %{rpmversion}-redhat.patch
Bad exit status from /var/tmp/rpm-tmp.sEsDIh (%prep)
Should I open a bugzilla for this?
Thanks.
I made some notes about building a custom kernel [1] that might help you . I recommend use mock, not rpmbuild to build a kernel
[1] https://www.serjux.com/build_kernel/build_kernel.txt
On Sun, 2019-11-24 at 11:00 -0700, stan wrote:
I use the src.rpm from rawhide kernels to build a kernel custom configured for my hardware in F31, and with a local patch, using the old rpmbuild method. For rc5 this worked, when I tried rc7 it didn't. And rc8 is failing with the same error. The error message is this: scripts/gen_compile_commands.py: updating Processing /home/stan/rpmbuild/BUILD/kernel-5.3.fc31/linux-5.4.0- 0.rc8.git1.2.20191124.fc31.x86_64/configs/kernel-5.4.0-aarch64.config ... done Processing /home/stan/rpmbuild/BUILD/kernel-5.3.fc31/linux-5.4.0- 0.rc8.git1.2.20191124.fc31.x86_64/configs/kernel-5.4.0-armv7hl- lpae.config ... done Processing /home/stan/rpmbuild/BUILD/kernel-5.3.fc31/linux-5.4.0- 0.rc8.git1.2.20191124.fc31.x86_64/configs/kernel-5.4.0-armv7hl.config ... done Processing /home/stan/rpmbuild/BUILD/kernel-5.3.fc31/linux-5.4.0- 0.rc8.git1.2.20191124.fc31.x86_64/configs/kernel-5.4.0-i686.config ... done Processing /home/stan/rpmbuild/BUILD/kernel-5.3.fc31/linux-5.4.0- 0.rc8.git1.2.20191124.fc31.x86_64/configs/kernel-5.4.0-ppc64le.config ... done Processing /home/stan/rpmbuild/BUILD/kernel-5.3.fc31/linux-5.4.0- 0.rc8.git1.2.20191124.fc31.x86_64/configs/kernel-5.4.0-s390x.config ... done Processing /home/stan/rpmbuild/BUILD/kernel-5.3.fc31/linux-5.4.0- 0.rc8.git1.2.20191124.fc31.x86_64/configs/kernel-5.4.0-x86_64.config ... Found misconfigured config items, please set them to an appropriate value /home/stan/rpmbuild/BUILD/kernel-5.3.fc31/linux-5.4.0- 0.rc8.git1.2.20191124.fc31.x86_64/configs/kernel-5.4.0- x86_64.config.orig:4359:warning: override: PSTORE_LZ4HC_COMPRESS_DEFAULT changes choice state
So, kernel-local is not overriding the default kernel configuration. I think it should; so whatever is checking the configuration consistency has a bug, I think.
Here is where it happens in the build process:
- ./process_configs.sh -w -n -c kernel 5.4.0
error: Bad exit status from /var/tmp/rpm-tmp.sEsDIh (%prep) extra tokens at the end of %else directive in line 618: %else # released_kernel
extra tokens at the end of %endif directive in line 627: %endif
# released_kernel
Macro expanded in comment on line 701: %{rpmversion}-
%{distro_build}.tar.bz2
Macro expanded in comment on line 702: %{rpmversion}-
%{distro_build}.tar.bz2
Macro expanded in comment on line 710: %{rpmversion}-redhat.patch Bad exit status from /var/tmp/rpm-tmp.sEsDIh (%prep)
Should I open a bugzilla for this?
Thanks. _______________________________________________ kernel mailing list -- kernel@lists.fedoraproject.org To unsubscribe send an email to kernel-leave@lists.fedoraproject.org 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/kernel@lists.fedoraproject.org
On Mon, 25 Nov 2019 01:39:24 +0000 Sérgio Basto sergio@serjux.com wrote:
I made some notes about building a custom kernel [1] that might help you . I recommend use mock, not rpmbuild to build a kernel
Thanks, I'll keep that for future reference. There's also this:
https://fedoraproject.org/wiki/Building_a_custom_kernel
But I've been building custom kernels for so long using rpmbuild, I can almost do it on autopilot. I suppose it will eventually go away and I'll have to learn another method, but for now it's easier to keep using the process I know.
On 11/24/19 1:00 PM, stan wrote:
I use the src.rpm from rawhide kernels to build a kernel custom configured for my hardware in F31, and with a local patch, using the old rpmbuild method. For rc5 this worked, when I tried rc7 it didn't. And rc8 is failing with the same error. The error message is this: scripts/gen_compile_commands.py: updating Processing /home/stan/rpmbuild/BUILD/kernel-5.3.fc31/linux-5.4.0-0.rc8.git1.2.20191124.fc31.x86_64/configs/kernel-5.4.0-aarch64.config ... done Processing /home/stan/rpmbuild/BUILD/kernel-5.3.fc31/linux-5.4.0-0.rc8.git1.2.20191124.fc31.x86_64/configs/kernel-5.4.0-armv7hl-lpae.config ... done Processing /home/stan/rpmbuild/BUILD/kernel-5.3.fc31/linux-5.4.0-0.rc8.git1.2.20191124.fc31.x86_64/configs/kernel-5.4.0-armv7hl.config ... done Processing /home/stan/rpmbuild/BUILD/kernel-5.3.fc31/linux-5.4.0-0.rc8.git1.2.20191124.fc31.x86_64/configs/kernel-5.4.0-i686.config ... done Processing /home/stan/rpmbuild/BUILD/kernel-5.3.fc31/linux-5.4.0-0.rc8.git1.2.20191124.fc31.x86_64/configs/kernel-5.4.0-ppc64le.config ... done Processing /home/stan/rpmbuild/BUILD/kernel-5.3.fc31/linux-5.4.0-0.rc8.git1.2.20191124.fc31.x86_64/configs/kernel-5.4.0-s390x.config ... done Processing /home/stan/rpmbuild/BUILD/kernel-5.3.fc31/linux-5.4.0-0.rc8.git1.2.20191124.fc31.x86_64/configs/kernel-5.4.0-x86_64.config ... Found misconfigured config items, please set them to an appropriate value /home/stan/rpmbuild/BUILD/kernel-5.3.fc31/linux-5.4.0-0.rc8.git1.2.20191124.fc31.x86_64/configs/kernel-5.4.0-x86_64.config.orig:4359:warning: override: PSTORE_LZ4HC_COMPRESS_DEFAULT changes choice state
So, kernel-local is not overriding the default kernel configuration. I think it should; so whatever is checking the configuration consistency has a bug, I think.
The process_configs.sh checks are designed to catch values changing unexpecedtly the message
override: PSTORE_LZ4HC_COMPRESS_DEFAULT changes choice state
This indicates that some value set are now changed. This looks like process_configs doing its job and not an actual error. It's also a little hard to tell without seeing the full build log and what changes you are actually making. I see two options:
1) Update the set of options you are setting to set all appropriate dependencies 2) Turn off the checking by building --without configchecks
On Mon, 25 Nov 2019 08:15:46 -0500 Laura Abbott labbott@redhat.com wrote:
The process_configs.sh checks are designed to catch values changing unexpecedtly the message
override: PSTORE_LZ4HC_COMPRESS_DEFAULT changes choice state
This indicates that some value set are now changed. This looks like process_configs doing its job and not an actual error. It's also a little hard to tell without seeing the full build log and what changes you are actually making. I see two options:
Then this makes the kernel-local obsolete, because the point of having a kernel-local file is to change config options from the default state.
I'm making extensive changes to the config file to customize it for my system exclusively. File systems I don't use are gone. Graphics devices I don't use are gone. Ditto audio devices. Ditto network cards. etc.
When I use the custom config file with make oldconfig, there are no complaints.
I notice that this is a warning rather than an actual error, even though the configcheck is treating it as an error. Could configcheck be changed to allow warnings to pass? Is there already a switch I can pass to configcheck that does so?
- Update the set of options you are setting to set all appropriate
dependencies
I tried this by setting various values in both kernel-local and in the rpmbuild/SOURCES/kernel*.config file. No dice. Next kernel I build, I'll do it in make menuconfig to see if it makes a difference.
- Turn off the checking by building --without configchecks
It looks like this is what I'll have to do, though I don't like bypassing consistency checks. Heh, my kernels have been building and running fine for years without this, so maybe it's OK. :-)
Thanks.
On 11/25/19 11:02 AM, stan wrote:
On Mon, 25 Nov 2019 08:15:46 -0500 Laura Abbott labbott@redhat.com wrote:
The process_configs.sh checks are designed to catch values changing unexpecedtly the message
override: PSTORE_LZ4HC_COMPRESS_DEFAULT changes choice state
This indicates that some value set are now changed. This looks like process_configs doing its job and not an actual error. It's also a little hard to tell without seeing the full build log and what changes you are actually making. I see two options:
Then this makes the kernel-local obsolete, because the point of having a kernel-local file is to change config options from the default state.
I'm making extensive changes to the config file to customize it for my system exclusively. File systems I don't use are gone. Graphics devices I don't use are gone. Ditto audio devices. Ditto network cards. etc.
When I use the custom config file with make oldconfig, there are no complaints.
I notice that this is a warning rather than an actual error, even though the configcheck is treating it as an error. Could configcheck be changed to allow warnings to pass? Is there already a switch I can pass to configcheck that does so?
Your changes to kernel-local should still be going through when you build, if not that is absolutely a bug that needs to get fixed. The message "override" is coming from the kernel tree not the Fedora kernel tree
What process_configs.sh is doing is checking to make sure all of the settings you have given will not get changed. Kconfig will silently switch the settings of options if you set things incorrectly, (switching from =y to =m or just turning options off completely) which can be confusing. The goal of these checks is to be pedantic and make sure all the values are set to what you expect. We actually want to treat all warnings as errors because even if Kconfig thinks this is a warning, the actual issue is that CONFIG_PSTORE_LZ4HC_COMPRESS_DEFAULT may not be what you expect.
- Update the set of options you are setting to set all appropriate
dependencies
I tried this by setting various values in both kernel-local and in the rpmbuild/SOURCES/kernel*.config file. No dice. Next kernel I build, I'll do it in make menuconfig to see if it makes a difference.
- Turn off the checking by building --without configchecks
It looks like this is what I'll have to do, though I don't like bypassing consistency checks. Heh, my kernels have been building and running fine for years without this, so maybe it's OK. :-)
If the options you've been using are working, it's probably fine to turn the checks.
On Mon, 25 Nov 2019 13:48:28 -0500 Laura Abbott labbott@redhat.com wrote:
Your changes to kernel-local should still be going through when you build, if not that is absolutely a bug that needs to get fixed. The message "override" is coming from the kernel tree not the Fedora kernel tree
What process_configs.sh is doing is checking to make sure all of the settings you have given will not get changed. Kconfig will silently switch the settings of options if you set things incorrectly, (switching from =y to =m or just turning options off completely) which can be confusing. The goal of these checks is to be pedantic and make sure all the values are set to what you expect. We actually want to treat all warnings as errors because even if Kconfig thinks this is a warning, the actual issue is that CONFIG_PSTORE_LZ4HC_COMPRESS_DEFAULT may not be what you expect.
Thanks for the explanation.
- Turn off the checking by building --without configchecks
It looks like this is what I'll have to do, though I don't like bypassing consistency checks. Heh, my kernels have been building and running fine for years without this, so maybe it's OK. :-)
If the options you've been using are working, it's probably fine to turn the checks.
Yeah, I'll go with this. With your explanation I feel a lot better about it. Thanks.
kernel@lists.fedoraproject.org