2006-01-31 03:10:44

by L A Walsh

[permalink] [raw]
Subject: i386 requires x86_64?

Generating a new kernel and wanted to delete the unrelated architectures.

Is the i386 supposed to depend on the the x86_64 architecture?

In file included from arch/i386/kernel/acpi/earlyquirk.c:8:
include/asm/pci-direct.h:1:35: asm-x86_64/pci-direct.h: No such file or
directory
arch/i386/kernel/acpi/earlyquirk.c: In function `check_acpi_pci':
arch/i386/kernel/acpi/earlyquirk.c:34: warning: implicit declaration of
function `read_pci_config'
make[2]: *** [arch/i386/kernel/acpi/earlyquirk.o] Error 1
make[1]: *** [arch/i386/kernel/acpi] Error 2
make: *** [arch/i386/kernel] Error 2
make: *** Waiting for unfinished jobs....

I'm generating for a pentium-3 based computer. Should that
include x86_64 bits?

Thanks,
Linda


2006-01-31 03:31:06

by Randy Dunlap

[permalink] [raw]
Subject: Re: i386 requires x86_64?

On Mon, 30 Jan 2006 19:10:42 -0800 L. A. Walsh wrote:

> Generating a new kernel and wanted to delete the unrelated architectures.
>
> Is the i386 supposed to depend on the the x86_64 architecture?
>
> In file included from arch/i386/kernel/acpi/earlyquirk.c:8:
> include/asm/pci-direct.h:1:35: asm-x86_64/pci-direct.h: No such file or
> directory
> arch/i386/kernel/acpi/earlyquirk.c: In function `check_acpi_pci':
> arch/i386/kernel/acpi/earlyquirk.c:34: warning: implicit declaration of
> function `read_pci_config'
> make[2]: *** [arch/i386/kernel/acpi/earlyquirk.o] Error 1
> make[1]: *** [arch/i386/kernel/acpi] Error 2
> make: *** [arch/i386/kernel] Error 2
> make: *** Waiting for unfinished jobs....
>
> I'm generating for a pentium-3 based computer. Should that
> include x86_64 bits?

Yes, there are bits in i386 that use x86_64 and there are
bits in x86_64 that use i386 code, so that the source code
won't have to be duplicated.


---
~Randy

2006-01-31 03:34:23

by Nish Aravamudan

[permalink] [raw]
Subject: Re: i386 requires x86_64?

On 1/30/06, L. A. Walsh <[email protected]> wrote:
> Generating a new kernel and wanted to delete the unrelated architectures.
>
> Is the i386 supposed to depend on the the x86_64 architecture?
>
> In file included from arch/i386/kernel/acpi/earlyquirk.c:8:
> include/asm/pci-direct.h:1:35: asm-x86_64/pci-direct.h: No such file or
> directory

You didn't say which kernel, but it looks like you didn't do a make
clean/mrproper before trying to build just an i386 kernel? Did you
build an x86_64 kernel at some point from the same tree?

I think that include/asm is pointing to asm-x86_64, which, if you
removed it, is why the compiler can't find said file.

Thanks,
Nish

2006-01-31 08:54:27

by Jesper Juhl

[permalink] [raw]
Subject: Re: i386 requires x86_64?

On 1/31/06, L. A. Walsh <[email protected]> wrote:
> Generating a new kernel and wanted to delete the unrelated architectures.
>

Why bother deleting parts of the code?
The kernel you build will only contain code for the architecture you
build for anyway. Sure, the extra source takes up a little space on
disk but if that bothers you you could just delete (or tar+bzip2) the
entire source tree after you build and install your new kernel.

--
Jesper Juhl <[email protected]>
Don't top-post http://www.catb.org/~esr/jargon/html/T/top-post.html
Plain text mails only, please http://www.expita.com/nomime.html

2006-01-31 13:02:36

by Steven Rostedt

[permalink] [raw]
Subject: Re: i386 requires x86_64?

On Mon, 2006-01-30 at 19:31 -0800, Randy.Dunlap wrote:

>
> Yes, there are bits in i386 that use x86_64 and there are
> bits in x86_64 that use i386 code, so that the source code
> won't have to be duplicated.

Perhaps we need an arch/x86_common that has this code. Not just to help
those that like to delete other archs, but also to make it easier for us
that might modify the code and know that this code is shared. It's
better design to have a arch/x86_common that is compiled with i386 and
x86_64 than to have code with - #include "../../x86_64/kernel/blah.c" -
in it.

-- Steve


2006-01-31 13:17:53

by Steven Rostedt

[permalink] [raw]
Subject: Re: i386 requires x86_64?

On Tue, 2006-01-31 at 09:54 +0100, Jesper Juhl wrote:
> On 1/31/06, L. A. Walsh <[email protected]> wrote:
> > Generating a new kernel and wanted to delete the unrelated architectures.
> >
>
> Why bother deleting parts of the code?
> The kernel you build will only contain code for the architecture you
> build for anyway. Sure, the extra source takes up a little space on
> disk but if that bothers you you could just delete (or tar+bzip2) the
> entire source tree after you build and install your new kernel.

I still have 1G boxes (and even an 800Meg) HD boxes that I sometimes
develop on. And these things are not very fast either, so doing the tar
bzip2 is also slow. So I have deleted not only archs, but drivers that
I don't need to work on these and to keep the code there.

Now, I mainly do the development on a bigger and faster machine, and
only do the make install via nfs. But that wasn't always an option.

-- Steve


2006-02-01 02:56:09

by L A Walsh

[permalink] [raw]
Subject: Re: i386 requires x86_64?

Steven Rostedt wrote:
> On Mon, 2006-01-30 at 19:31 -0800, Randy.Dunlap wrote:
>
>> Yes, there are bits in i386 that use x86_64 and there are
>> bits in x86_64 that use i386 code, so that the source code
>> won't have to be duplicated.
>>
> Perhaps we need an arch/x86_common that has this code. Not just to help
> those that like to delete other archs, but also to make it easier for us
> that might modify the code and know that this code is shared. It's
> better design to have a arch/x86_common that is compiled with i386 and
> x86_64 than to have code with - #include "../../x86_64/kernel/blah.c" -
> in it.
>
>
I'd tend to agree (unless it is a big problem).
It seems an unsound design principle to manually be
including code via direct references to a different architecture
tree.

Linda