qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [Qemu-devel] qemu/target-ppc cpu.h exec.h helper.c op.c op_h...


From: Wessel, Jason
Subject: RE: [Qemu-devel] qemu/target-ppc cpu.h exec.h helper.c op.c op_h...
Date: Sat, 17 Mar 2007 07:53:55 -0700

Hi Jocelyn,

Previously it was mentioned that there is a regression that was
introduced by your original merge on March 8, 2007.  I tested this
latest code and it is still there.  The nature of the problem is that
the networking does not work when booting QEMU and using the built in
slirp networking.  A dhcp packet will work but the udp and tcp packets
do not appear to send.

It appears that the packet check sum computed by the Linux network stack
is incorrect.  When the code in slirp/ip_input.c checks the checksum of
the udp or tcp packet it throws the packet away because the checksum was
invalid.  I took the code from March 7, 2007 in cvs for target-ppc/* and
used it with the latest of everything else and the packet checksums are
computed correct and the target boots with networking.  

This points to the problem being what ever instructions the kernel is
using to compute the checksum are not being translated correctly by your
latest changes.  The next step will be to take a closer look at which
instructions are used to compute the checksum.  I thought I might send
out some further analysis of the original stated problem in case you had
an idea of where to look to fix the problem off the top of your head.
If you have any ideas, please drop me some e-mail.

Also with regard to the 2.6.21 kernel and the ppc-prep machine, I
patched the kernel to make it send PCI interrupts the same way the prior
kernels did.  It seems there is a regression there inside the kernel in
the way that the IRQ acknowledgements are handled.  It could be that the
emulation is not right in QEMU, but I figure that mystery is one for
another day.  If you need a kernel that boots on the ppc-prep please let
me know.  I also patched the prep loader in the linux kernel so I could
boot an image that was larger than 4 megs.

Thanks,
Jason.

> -----Original Message-----
> From: 
> address@hidden 
> [mailto:address@hidden
> rg] On Behalf Of Jocelyn Mayer
> Sent: Saturday, March 17, 2007 9:02 AM
> To: address@hidden
> Subject: [Qemu-devel] qemu/target-ppc cpu.h exec.h helper.c 
> op.c op_h...
> 
> CVSROOT:      /sources/qemu
> Module name:  qemu
> Changes by:   Jocelyn Mayer <j_mayer> 07/03/17 14:02:15
> 
> Modified files:
>       target-ppc     : cpu.h exec.h helper.c op.c op_helper.c 
>                        op_helper.h op_helper_mem.h op_mem.h 
>                        translate.c 
> 
> Log message:
>       Make it safe to use 64 bits GPR and/or 64 bits host registers.
>       For "symetry", add 64 bits versions of all modified functions.
>       As a side effect, add a lot of code provision for 
> PowerPC 64 support.
>       Move overflow and carry checks in common routines for 
> simple cases.
>       Add isel and popcntb instructions from PowerPC 2.03 
> specification.
>       Remove remaining micro-operations helpers prototypes from op.c.
>       Fix XER_BC field to be 7 bits long.
>       Add power management support for PowerPC 603 & 604.
>       Fix compilation warnings.
> 
> CVSWeb URLs:
> http://cvs.savannah.gnu.org/viewcvs/qemu/target-ppc/cpu.h?cvsr
> oot=qemu&r1=1.26&r2=1.27
> http://cvs.savannah.gnu.org/viewcvs/qemu/target-ppc/exec.h?cvs
> root=qemu&r1=1.15&r2=1.16
> http://cvs.savannah.gnu.org/viewcvs/qemu/target-ppc/helper.c?c
> vsroot=qemu&r1=1.32&r2=1.33
> http://cvs.savannah.gnu.org/viewcvs/qemu/target-ppc/op.c?cvsro
> ot=qemu&r1=1.23&r2=1.24
> http://cvs.savannah.gnu.org/viewcvs/qemu/target-ppc/op_helper.
> c?cvsroot=qemu&r1=1.18&r2=1.19
> http://cvs.savannah.gnu.org/viewcvs/qemu/target-ppc/op_helper.
> h?cvsroot=qemu&r1=1.1&r2=1.2
> http://cvs.savannah.gnu.org/viewcvs/qemu/target-ppc/op_helper_
> mem.h?cvsroot=qemu&r1=1.7&r2=1.8
> http://cvs.savannah.gnu.org/viewcvs/qemu/target-ppc/op_mem.h?c
> vsroot=qemu&r1=1.8&r2=1.9
> http://cvs.savannah.gnu.org/viewcvs/qemu/target-ppc/translate.
> c?cvsroot=qemu&r1=1.44&r2=1.45
> 
> 
> _______________________________________________
> Qemu-devel mailing list
> address@hidden
> http://lists.nongnu.org/mailman/listinfo/qemu-devel
> 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]