Bug 150445

Summary: Failed to compile kernel with 8K stacks
Product: [Fedora] Fedora Reporter: Robert de Vries <rhdv>
Component: kernelAssignee: Dave Jones <davej>
Status: CLOSED DUPLICATE QA Contact: Brian Brock <bbrock>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: pfrields, 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: 2006-02-21 19:08:15 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 Robert de Vries 2005-03-06 19:34:38 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (compatible; Konqueror/3.3; Linux) (KHTML, like Gecko)

Description of problem:
When I manually configure the kernel for my personal setup using the kernel source package with the 8K kernel stack option, I get link errors saying that it cannot find irq_ctx_init().
I have traced this to some weird #ifdef/#ifndef CONFIG_XEN statements in include/asm-i386/irq.h.
The #ifdefs may help in compiling the XEN kernels, but if you configure 8K stacks you can't link normal kernels.
The patch introducing the change is called: linux-2.6.9-xen-compile.patch



Version-Release number of selected component (if applicable):
kernel-2.6.11-1.1170_FC4

How reproducible:
Always

Steps to Reproduce:
1. Configure 8K stack with menu config or any config tool
2. Build kernel
3.
    

Actual Results:  Link failure on missing symbol: irq_ctx_init

Expected Results:  Linked linux kernel

Additional info:

After reverting the part of the patch below, the kernel compiles and links fine.
--- linux-2.6.9/include/asm-i386/irq.h~ 2004-12-24 01:46:10.908739264 -0500
+++ linux-2.6.9/include/asm-i386/irq.h  2004-12-24 01:48:25.183326424 -0500
@@ -28,10 +28,14 @@ extern void release_vm86_irqs(struct tas
 #endif

 #ifdef CONFIG_4KSTACKS
+ #ifndef CONFIG_XEN
   extern void irq_ctx_init(int cpu);
 # define __ARCH_HAS_DO_SOFTIRQ
+ #endif
 #else
+ #ifdef CONFIG_XEN
 # define irq_ctx_init(cpu) do { } while (0)
+ #endif
 #endif

 #ifdef CONFIG_IRQBALANCE

Comment 1 Dave Jones 2005-03-06 22:07:56 UTC

*** This bug has been marked as a duplicate of 126342 ***

Comment 2 Red Hat Bugzilla 2006-02-21 19:08:15 UTC
Changed to 'CLOSED' state since 'RESOLVED' has been deprecated.