Thanks Paolo, that's helped a lot. We now have a kernel compiled and doing exactly what we want. Most of the time.

Unfortunately it crashes the host at seemingly random intervals. The most I've been able to get out of it was a CPU stack/register dump (attached).

I understand this is a lot harder to diagnose but if you have any pointers that could help, we'd appreciate it! We're trying to get help from Redhat too but we don't have a support contract during development...

Many thanks,

Simon

Blaisorblade wrote:
On Monday 23 May 2005 18:54, Simon Hall wrote:

Hi,

I'm trying to build UML on x86_64 and have run into a compile problem.

Host: Sun v40z, dual Opteron running Redhat Enterprise Linux 4, kernel
2.6.9-5.0.3.ELsmp, gcc version 3.4.3, binutils 2.15.92.

I'm trying to build a UML kernel version 2.6.12-rc4-mm2 with patches
from http://user-mode-linux.sourceforge.net/patches.html and keep
hitting the following:

  CC      init/main.o
In file included from include/linux/dcache.h:10,
                 from include/linux/fs.h:208,
                 from include/linux/proc_fs.h:6,
                 from init/main.c:17:
include/linux/rcupdate.h: In function `rcu_qsctr_inc':
include/linux/rcupdate.h:118: error: `cpu_pda' undeclared (first use in
this function)
include/linux/rcupdate.h:118: error: (Each undeclared identifier is
reported only once
include/linux/rcupdate.h:118: error: for each function it appears in.)
include/linux/rcupdate.h:118: error: invalid type argument of `unary *'
include/linux/rcupdate.h: In function `rcu_bh_qsctr_inc':
include/linux/rcupdate.h:123: error: `cpu_pda' undeclared (first use in
this function)
include/linux/rcupdate.h:123: error: invalid type argument of `unary *'
include/linux/rcupdate.h: In function `rcu_pending':
include/linux/rcupdate.h:154: error: `cpu_pda' undeclared (first use in
this function)
include/linux/rcupdate.h:154: error: invalid type argument of `unary *'
include/linux/rcupdate.h:155: error: invalid type argument of `unary *'
In file included from init/main.c:35:
include/linux/kernel_stat.h: In function `kstat_irqs':
include/linux/kernel_stat.h:50: error: `cpu_pda' undeclared (first use
in this function)
include/linux/kernel_stat.h:50: error: invalid type argument of `unary *'
make[1]: *** [init/main.o] Error 1
make: *** [init] Error 2

I'm using the default .config (ie make menuconfig ARCH=um and then save
without changing anything) as a starting point.

1) do a make mrproper ARCH=um before anything else. The above seems to come from include/asm pointing to the wrong place...
2) Use make defconfig ARCH=um, the way above can read the /boot/* config.
3) remove include/asm-um/elf.h which should be either a symlink or a 0 length file.


This e-mail and any attachment is for authorised use by the intended 
recipient(s) only. It may contain proprietary material, confidential 
information and/or be subject to legal privilege. It should not be copied, 
disclosed to, retained or used by, any other party. If you are not an intended 
recipient then please promptly delete this e-mail and any attachment and all 
copies and inform the sender. Thank you.

Attachment: lockup.gz
Description: GNU Zip compressed data

Reply via email to