Re: kernel/src/arch/amd64/init32.cc
"Adrian Ratnapala" <[email protected]>
| Newsgroups | gmane.comp.micro-kernel.l4.l4ka.general |
|---|---|
| Message-ID | <[email protected]> |
First of all, I'm cc'ing this back to the list, because I only sent this thread
into private mail by accident. Since I think it might as well be on
the archives
I will give a summary of the thread so far:
> I complained that Kickstart hangs on an AMD64 machine, oh and by the way
the kernel doesn't compile unless I have the KDB options just so.
< Jan explained to me that I was using the wrong qemu, I should use the amd64
one (qemu-system-x86_64) :), ohh and by the way could he have more
information about my compiler,
setup because his kernel compiles just fine.
< I told him that I was indeed using the wrong qemu, and using the right one
will boot pingpoing, which hangs. On the other hand I had a look at the
kernel compilation issue, and could offer a fix/hack.
> Jan thanked me for the hack and asked if he could have some more information
about my compiler setup please. Also he suggested the pingpoing hanging
thing could be worked around by switching off KDB breaking.
Now to the conversation itself.
On 29/11/06, Adrian Ratnapala <[email protected]> wrote:
> > kdebug_check_breakin() in kernel/kdb/platform/pc99/io.cc). I'm not too
> > familiar with serial IO logic, but my guess is that in qemu, characters
> > somehow disappear from the IO register after having been read by the
> > kernel. As a result, a polling user space application (pingpong) will
> > spin forever.
>
I thought that seemed right, bit it turns out I get the hang even without
kernel break in. I will see what happens on real hardware when I get
the chance.
> > Thanks, I'll have a look on that. Could you tell me which compiler and
> > preprocessor you used? Was it a toolchain or a standard compiler? I
> > didn't have any problems compiling without the debugger or keyboard, but
> > I'll double-check that.
It is the system compiler, gcc 3.4.6 (& hence cpp accordingly).
Here is the output of of gcc -v
---------------------------------------------------
Reading specs from /usr/lib/gcc/x86_64-pc-linux-gnu/3.4.6/specs
Configured with:
/var/tmp/portage/gcc-3.4.6-r1/work/gcc-3.4.6/configure --prefix=/usr
--bindir=/usr/x86_64-pc-linux-gnu/gcc-bin/3.4.6
--includedir=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.6/include
--datadir=/usr/share/gcc-data/x86_64-pc-linux-gnu/3.4.6
--mandir=/usr/share/gcc-data/x86_64-pc-linux-gnu/3.4.6/man
--infodir=/usr/share/gcc-data/x86_64-pc-linux-gnu/3.4.6/info
--with-gxx-include-dir=/usr/lib/gcc/x86_64-pc-linux-gnu/3.4.6/include/g++-v3
--host=x86_64-pc-linux-gnu --build=x86_64-pc-linux-gnu
--disable-altivec --enable-nls --without-included-gettext
--with-system-zlib --disable-checking --disable-werror
--disable-libunwind-exceptions --enable-multilib --disable-libgcj
--enable-languages=c,c++,f77 --enable-shared --enable-threads=posix
--enable-__cxa_atexit --enable-clocale=gnu
Thread model: posix
gcc version 3.4.6 (Gentoo 3.4.6-r1, ssp-3.4.5-1.0, pie-8.7.9)
----------------------------------------------------------------------------