I thought I'd give it a try.
I guess that these aren't bugs (since switching to non-hardened gcc
fixes most problems) but maybe this is useful to someone?
Otherwise just ignore most issues in this email.
- the configs are available at http://uml.nagafix.co.uk/kernels
- GCC 3.4.5 hardened

First, the good old ASM errors are still here (IIRC there is no easy way
to solve this):
wget
ftp://ftp.kernel.org/pub/linux/kernel/v2.6/testing/linux-2.6.17-rc1.tar.bz2
tar -jxf linux-2.6.17-rc1.tar.bz2
mv linux-2.6.17-rc1 linux-2.6.17-rc1-x86
cd linux-2.6.17-rc1-x86
cp ../linux-2.6.16.1-bb1-x86/.config ./
make ARCH=um SUBARCH=i386 oldconfig
make ARCH=um SUBARCH=i386
(...)
CC      arch/um/kernel/skas/clone.o
arch/um/kernel/skas/clone.c: In function `stub_clone_handler':
arch/um/include/sysdep/stub.h:45: error: can't find a register in class
`BREG' while reloading `asm'
arch/um/include/sysdep/stub.h:66: error: can't find a register in class
`BREG' while reloading `asm'
arch/um/include/sysdep/stub.h:55: error: can't find a register in class
`BREG' while reloading `asm'
arch/um/include/sysdep/stub.h:90: error: can't find a register in class
`BREG' while reloading `asm'
make[2]: *** [arch/um/kernel/skas/clone.o] Error 1
make[1]: *** [arch/um/kernel/skas] Error 2
make: *** [arch/um/kernel] Error 2


AMD64 works fully, but there are some warnings during the build:
  CC      arch/um/kernel/uaccess.o
In file included from include/asm/processor-generic.h:14,
                 from include/asm/processor.h:51,
                 from include/linux/prefetch.h:14,
                 from include/linux/list.h:7,
                 from include/linux/wait.h:23,
                 from include/asm/arch/semaphore.h:42,
                 from include/asm/semaphore.h:4,
                 from include/asm/ldt.h:11,
                 from arch/um/include/sysdep/tls.h:25,
                 from arch/um/include/os.h:16,
                 from arch/um/kernel/uaccess.c:12:
include/asm/ptrace.h:82: warning: static declaration of
'arch_switch_to_tt' follows non-static declaration
arch/um/include/kern_util.h:120: warning: previous declaration of
'arch_switch_to_tt' was here
include/asm/ptrace.h:87: warning: static declaration of
'arch_switch_to_skas' follows non-static declaration
arch/um/include/kern_util.h:122: warning: previous declaration of
'arch_switch_to_skas' was here
  CC      arch/um/kernel/um_arch.o
  CC      arch/um/kernel/umid.o
In file included from include/asm/processor-generic.h:14,
                 from include/asm/processor.h:51,
                 from include/linux/prefetch.h:14,
                 from include/linux/list.h:7,
                 from include/linux/wait.h:23,
                 from include/asm/arch/semaphore.h:42,
                 from include/asm/semaphore.h:4,
                 from include/asm/ldt.h:11,
                 from arch/um/include/sysdep/tls.h:25,
                 from arch/um/include/os.h:16,
                 from arch/um/kernel/umid.c:8:
include/asm/ptrace.h:82: warning: static declaration of
'arch_switch_to_tt' follows non-static declaration
arch/um/include/kern_util.h:120: warning: previous declaration of
'arch_switch_to_tt' was here
include/asm/ptrace.h:87: warning: static declaration of
'arch_switch_to_skas' follows non-static declaration
arch/um/include/kern_util.h:122: warning: previous declaration of
'arch_switch_to_skas' was here
  CC      arch/um/kernel/initrd.o
  CC      arch/um/kernel/skas/clone.o
  CC      arch/um/kernel/skas/exec_kern.o
  CC      arch/um/kernel/skas/mem.o
  CC      arch/um/kernel/skas/mmu.o
  CC      arch/um/kernel/skas/process_kern.o
arch/um/kernel/skas/process_kern.c:191:2: warning: #warning Need to look
up userspace_pid by cpu
arch/um/kernel/skas/process_kern.c:197:2: warning: #warning Need to look
up userspace_pid by cpu
arch/um/kernel/skas/process_kern.c:204:2: warning: #warning need to loop
over userspace_pids in kill_off_processes_skas
  CC      arch/um/kernel/skas/syscall.o
(...)
  CC      fs/select.o
fs/select.c: In function `core_sys_select':
fs/select.c:339: warning: assignment from incompatible pointer type
fs/select.c:376: warning: comparison of distinct pointer types lacks a
cast
  CC      fs/fifo.o


Something else I've noticed is that some kernels fail if TT is compiled
in, even though it boots into skas0 or skas3 mode. I guess this isn't
really that important since TT is going to go away.

Finally, congratulations! all the images I have built now work - even
fedora (4 and 5) and opensuse.

Antoine

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to