Bug 163112

Summary: nonint_oldconfig breaks when altering kernel config
Product: [Fedora] Fedora Reporter: Armijn Hemel <armijn>
Component: kernelAssignee: Kernel Maintainer List <kernel-maint>
Status: CLOSED NOTABUG QA Contact: Brian Brock <bbrock>
Severity: medium Docs Contact:
Priority: medium    
Version: 3CC: wtogami
Target Milestone: ---   
Target Release: ---   
Hardware: i686   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2005-07-13 00:20:19 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Armijn Hemel 2005-07-12 23:17:31 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.8) Gecko/20050513 Fedora/1.0.4-1.3.1 Firefox/1.0.4

Description of problem:
I'm trying to rebuild the kernel RPM for a non-SMP system, with DEBUG_SPINLOCK
en REGPARM disabled. I installed the source RPM, edited the kernel configuration
and undefined the two options. However, a kernel recompile fails, because nonint_oldconfig barfs.

Version-Release number of selected component (if applicable):
kernel-2.6.11.-1.35_FC3

How reproducible:
Always

Steps to Reproduce:
1. install kernel source RPM
2. edit the kernel configuration (delete an option which is currently set to "y")
3. rpmbuild -bb kernel-2.6.spec
  

Actual Results:  kernel rebuild failed

Expected Results:  kernel rebuild should have succeeded.

Additional info:

Inside the failed build tree (/usr/src/redhat/BUILD) I reran a "make nonint_oldconfig", and I saw it succeed. Wondering what happened I copied my
original edited kernelconfig to .config, reran "make nonint_oldconfig" and it
failed as expected.

It seems the first time it checks against the kernel config the machine is running, the second time against the modified kernel config. The error from
rpmbuild is:

+ for i in '*.config'
+ mv kernel-2.6.11-i686.config .config
++ head -1 .config
++ cut -b 3-
+ Arch=i386
+ make ARCH=i386 nonint_oldconfig
CONFIG_REGPARM
CONFIG_DEBUG_SPINLOCK
make[1]: *** [nonint_oldconfig] Error 2
make: *** [nonint_oldconfig] Error 2
error: Bad exit status from /var/tmp/rpm-tmp.88168 (%prep)


RPM build errors:
    Bad exit status from /var/tmp/rpm-tmp.88168 (%prep)

If I enter the buildtree:

# cp /usr/src/redhat/SOURCES/kernel-2.6.11-i686.config .config
cp: overwrite `.config'? y
# make ARCH=i386 nonint_oldconfig > /dev/null
CONFIG_REGPARM
CONFIG_DEBUG_SPINLOCK
make[1]: *** [nonint_oldconfig] Error 2
make: *** [nonint_oldconfig] Error 2
# make ARCH=i386 nonint_oldconfig > /dev/null
#

The second time no errors are reported. I don't know how to fix this...

Comment 1 Pete Zaitcev 2005-07-13 00:14:22 UTC
It's not specific to nohint_oldconfig in any way, regular oldconfig
will break too. In order to unset variables, you what to use this

# CONFIG_FOO is not defined

Yes, just like that - with whole "is not defined" string.


Comment 2 Armijn Hemel 2005-07-13 00:20:19 UTC
When I change it to "#CONFIG_FOO is not set" it works as expected. I think this
bug can be closed as not being a bug at all. Thanks for the quick response, I
can finally go to bed now :)