* Re: [Linux-ia64] Error compiling 2.4.20 for i386
2003-01-17 0:42 [Linux-ia64] Error compiling 2.4.20 for i386 Bahnsen, Bruce
@ 2003-01-17 16:05 ` Bjorn Helgaas
2003-01-17 17:51 ` Bahnsen, Bruce
` (5 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: Bjorn Helgaas @ 2003-01-17 16:05 UTC (permalink / raw)
To: linux-ia64
On Thursday 16 January 2003 5:42 pm, Bahnsen, Bruce wrote:
> I applied the ia64 patch to the 2.4.20 kernel (all from kernel.org). If I
> try to compile i386 using the default config, I get the following compile
> error:
If you want an i386 kernel, there is no reason to use the ia64 patch.
I'll look at this for the 2.4.21 patch, but in general, I do not pay
any attention to the i386 kernel when producing the ia64 patch.
2.4.20 has very old ACPI bits in it, so the ia64 patch contains a
large ACPI update. The ia64-specific ACPI bits match, of course,
but I don't bother to update the i386-specific ACPI bits. So it's
likely that this is a result of that mismatch.
> setup.c: In function `parse_cmdline_early':
> setup.c:792: `enable_acpi_smp_table' undeclared (first use in this function)
> I am getting errors compiling ia64 as well, such as:
> ...
> smpboot.c:92: conflicting types for `smp_threads_ready'
Hmm... Obviously I don't see this error, but I'm using an old (2.96)
gcc. Maybe newer ones are pickier. In any case, I've removed
the "volatile" declaration of smp_threads_ready in smpboot.c, so
this won't be an issue for 2.4.21.
Bjorn
^ permalink raw reply [flat|nested] 8+ messages in thread* RE: [Linux-ia64] Error compiling 2.4.20 for i386
2003-01-17 0:42 [Linux-ia64] Error compiling 2.4.20 for i386 Bahnsen, Bruce
2003-01-17 16:05 ` Bjorn Helgaas
@ 2003-01-17 17:51 ` Bahnsen, Bruce
2003-01-17 21:19 ` Bjorn Helgaas
` (4 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: Bahnsen, Bruce @ 2003-01-17 17:51 UTC (permalink / raw)
To: linux-ia64
Thanks Bjorn
I was under the mistaken impression that the ia64 patch for 2.4.18 and
beyond would not break ia32. I am looking for a way to support both ia32 and
ia64 from a single kernel source. Is there a plan for the ia64 patch to
support this model?
The smp_threads_ready error is just gcc-3 being more picky about matching
volatile qualifiers. I can get ia64 to compile now. However, I'm getting
this link error now...
net/network.o(.debug_info+0x6f4b26): undefined reference to `L5661'
Bruce
-----Original Message-----
From: Bjorn Helgaas [mailto:bjorn_helgaas@hp.com]
Sent: Friday, January 17, 2003 8:06 AM
To: Bahnsen, Bruce; 'linux-ia64@linuxia64.org'
Subject: Re: [Linux-ia64] Error compiling 2.4.20 for i386
On Thursday 16 January 2003 5:42 pm, Bahnsen, Bruce wrote:
> I applied the ia64 patch to the 2.4.20 kernel (all from kernel.org). If I
> try to compile i386 using the default config, I get the following compile
> error:
If you want an i386 kernel, there is no reason to use the ia64 patch.
I'll look at this for the 2.4.21 patch, but in general, I do not pay
any attention to the i386 kernel when producing the ia64 patch.
2.4.20 has very old ACPI bits in it, so the ia64 patch contains a
large ACPI update. The ia64-specific ACPI bits match, of course,
but I don't bother to update the i386-specific ACPI bits. So it's
likely that this is a result of that mismatch.
> setup.c: In function `parse_cmdline_early':
> setup.c:792: `enable_acpi_smp_table' undeclared (first use in this
function)
> I am getting errors compiling ia64 as well, such as:
> ...
> smpboot.c:92: conflicting types for `smp_threads_ready'
Hmm... Obviously I don't see this error, but I'm using an old (2.96)
gcc. Maybe newer ones are pickier. In any case, I've removed
the "volatile" declaration of smp_threads_ready in smpboot.c, so
this won't be an issue for 2.4.21.
Bjorn
^ permalink raw reply [flat|nested] 8+ messages in thread* Re: [Linux-ia64] Error compiling 2.4.20 for i386
2003-01-17 0:42 [Linux-ia64] Error compiling 2.4.20 for i386 Bahnsen, Bruce
2003-01-17 16:05 ` Bjorn Helgaas
2003-01-17 17:51 ` Bahnsen, Bruce
@ 2003-01-17 21:19 ` Bjorn Helgaas
2003-01-17 22:01 ` Bahnsen, Bruce
` (3 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: Bjorn Helgaas @ 2003-01-17 21:19 UTC (permalink / raw)
To: linux-ia64
> I was under the mistaken impression that the ia64 patch for 2.4.18 and
> beyond would not break ia32. I am looking for a way to support both ia32 and
> ia64 from a single kernel source. Is there a plan for the ia64 patch to
> support this model?
No, I don't have a plan to support both ia32 and ia64 with the ia64
patch. I just don't have the time, equipment, or knowledge to maintain
the ia32 side of that equation. The ACPI update I mentioned is one
big issue. Another is the PCI BAR sizing problem -- ia64 requires
an approach that is unsafe on i386.
Of course, I do try to reduce the size of the ia64 patch by pushing
things upstream, and if it were ever reduced to zero, or to only
arch/ia64 things, then i386 should Just Work. That's not likely to
happen anytime soon, though.
> However, I'm getting
> this link error now...
>
> net/network.o(.debug_info+0x6f4b26): undefined reference to `L5661'
I don't have a clue on this one. I'd try a clean build from scratch
to make sure everything was built by the same toolchain, with the same
options, etc.
Bjorn
^ permalink raw reply [flat|nested] 8+ messages in thread* RE: [Linux-ia64] Error compiling 2.4.20 for i386
2003-01-17 0:42 [Linux-ia64] Error compiling 2.4.20 for i386 Bahnsen, Bruce
` (2 preceding siblings ...)
2003-01-17 21:19 ` Bjorn Helgaas
@ 2003-01-17 22:01 ` Bahnsen, Bruce
2003-01-21 17:39 ` Bjorn Helgaas
` (2 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: Bahnsen, Bruce @ 2003-01-17 22:01 UTC (permalink / raw)
To: linux-ia64
Ok, so no common kernel source anytime soon. The undefined reference went
away after a clean build.
Thanks,
Bruce
-----Original Message-----
From: Bjorn Helgaas [mailto:bjorn_helgaas@hp.com]
Sent: Friday, January 17, 2003 1:20 PM
To: Bahnsen, Bruce; 'linux-ia64@linuxia64.org'
Subject: Re: [Linux-ia64] Error compiling 2.4.20 for i386
> I was under the mistaken impression that the ia64 patch for 2.4.18 and
> beyond would not break ia32. I am looking for a way to support both ia32
and
> ia64 from a single kernel source. Is there a plan for the ia64 patch to
> support this model?
No, I don't have a plan to support both ia32 and ia64 with the ia64
patch. I just don't have the time, equipment, or knowledge to maintain
the ia32 side of that equation. The ACPI update I mentioned is one
big issue. Another is the PCI BAR sizing problem -- ia64 requires
an approach that is unsafe on i386.
Of course, I do try to reduce the size of the ia64 patch by pushing
things upstream, and if it were ever reduced to zero, or to only
arch/ia64 things, then i386 should Just Work. That's not likely to
happen anytime soon, though.
> However, I'm getting
> this link error now...
>
> net/network.o(.debug_info+0x6f4b26): undefined reference to `L5661'
I don't have a clue on this one. I'd try a clean build from scratch
to make sure everything was built by the same toolchain, with the same
options, etc.
Bjorn
^ permalink raw reply [flat|nested] 8+ messages in thread* Re: [Linux-ia64] Error compiling 2.4.20 for i386
2003-01-17 0:42 [Linux-ia64] Error compiling 2.4.20 for i386 Bahnsen, Bruce
` (3 preceding siblings ...)
2003-01-17 22:01 ` Bahnsen, Bruce
@ 2003-01-21 17:39 ` Bjorn Helgaas
2003-01-21 18:52 ` Bahnsen, Bruce
2003-01-21 19:11 ` Bjorn Helgaas
6 siblings, 0 replies; 8+ messages in thread
From: Bjorn Helgaas @ 2003-01-21 17:39 UTC (permalink / raw)
To: linux-ia64
On Thursday 16 January 2003 5:42 pm, Bahnsen, Bruce wrote:
> I applied the ia64 patch to the 2.4.20 kernel (all from kernel.org). If I
> try to compile i386 using the default config, I get the following compile
> error:
>
> setup.c:792: `enable_acpi_smp_table' undeclared (first use in this function)
I seem to have mistakenly removed the declaration. With the attached
patch on top of 2.4.20-ia64-021210, I was able to build an i386 image
(I didn't test it, though).
I try not to gratuitously break other architectures, but when I
do, I'm happy to include fixes like this if people are interested
in doing them.
Bjorn
# This is a BitKeeper generated patch for the following project:
# Project Name: Linux kernel tree
# This patch format is intended for GNU patch command version 2.5 or higher.
# This patch includes the following deltas:
# ChangeSet 1.994 -> 1.995
# arch/i386/kernel/setup.c 1.59 -> 1.60
#
# The following is the BitKeeper ChangeSet Log
# --------------------------------------------
# 03/01/21 bjorn_helgaas@hp.com 1.995
# i386: Fix enable_acpi_smp_table merge botch.
# --------------------------------------------
#
diff -Nru a/arch/i386/kernel/setup.c b/arch/i386/kernel/setup.c
--- a/arch/i386/kernel/setup.c Tue Jan 21 10:19:48 2003
+++ b/arch/i386/kernel/setup.c Tue Jan 21 10:19:48 2003
@@ -175,6 +175,8 @@
static u32 disabled_x86_caps[NCAPINTS] __initdata = { 0 };
extern int blk_nohighio;
+int enable_acpi_smp_table;
+
/*
* This is set up by the setup-routine at boot-time
*/
^ permalink raw reply [flat|nested] 8+ messages in thread* RE: [Linux-ia64] Error compiling 2.4.20 for i386
2003-01-17 0:42 [Linux-ia64] Error compiling 2.4.20 for i386 Bahnsen, Bruce
` (4 preceding siblings ...)
2003-01-21 17:39 ` Bjorn Helgaas
@ 2003-01-21 18:52 ` Bahnsen, Bruce
2003-01-21 19:11 ` Bjorn Helgaas
6 siblings, 0 replies; 8+ messages in thread
From: Bahnsen, Bruce @ 2003-01-21 18:52 UTC (permalink / raw)
To: linux-ia64
I applied the patch, and it booted just fine on i386. Maybe we are not too
far from common source after all?
Thanks,
Bruce
I seem to have mistakenly removed the declaration. With the attached
patch on top of 2.4.20-ia64-021210, I was able to build an i386 image
(I didn't test it, though).
I try not to gratuitously break other architectures, but when I
do, I'm happy to include fixes like this if people are interested
in doing them.
Bjorn
# This is a BitKeeper generated patch for the following project:
# Project Name: Linux kernel tree
# This patch format is intended for GNU patch command version 2.5 or higher.
# This patch includes the following deltas:
# ChangeSet 1.994 -> 1.995
# arch/i386/kernel/setup.c 1.59 -> 1.60
#
# The following is the BitKeeper ChangeSet Log
# --------------------------------------------
# 03/01/21 bjorn_helgaas@hp.com 1.995
# i386: Fix enable_acpi_smp_table merge botch.
# --------------------------------------------
#
diff -Nru a/arch/i386/kernel/setup.c b/arch/i386/kernel/setup.c
--- a/arch/i386/kernel/setup.c Tue Jan 21 10:19:48 2003
+++ b/arch/i386/kernel/setup.c Tue Jan 21 10:19:48 2003
@@ -175,6 +175,8 @@
static u32 disabled_x86_caps[NCAPINTS] __initdata = { 0 };
extern int blk_nohighio;
+int enable_acpi_smp_table;
+
/*
* This is set up by the setup-routine at boot-time
*/
^ permalink raw reply [flat|nested] 8+ messages in thread* Re: [Linux-ia64] Error compiling 2.4.20 for i386
2003-01-17 0:42 [Linux-ia64] Error compiling 2.4.20 for i386 Bahnsen, Bruce
` (5 preceding siblings ...)
2003-01-21 18:52 ` Bahnsen, Bruce
@ 2003-01-21 19:11 ` Bjorn Helgaas
6 siblings, 0 replies; 8+ messages in thread
From: Bjorn Helgaas @ 2003-01-21 19:11 UTC (permalink / raw)
To: linux-ia64
> I applied the patch, and it booted just fine on i386. Maybe we are not too
> far from common source after all?
Well, the ia64 patch doesn't change *too* many generic things, but
there are things like the PCI BAR sizing change. This is required
for some ia64 boxes, but is known to break some old i386 boxes.
So most things should work most of the time, but just be aware that
there may be some gotchas.
Bjorn
^ permalink raw reply [flat|nested] 8+ messages in thread