On Sat, 2007-03-17 at 07:53 -0700, Wessel, Jason wrote: > 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. Hi, My concern is I cannot reproduce your problem for the following reasons: - the PREP machine (and the heathrow too...) is broken and cannot even boot. PCI and/or IRQ are broken, so the Linux kernel hangs. - when using the "known to work" Linux distributions on the mac99 machine (please take a look at the STATUS file), I am able to download a kernel from www.kernel.org, which makes me think TCP packets are sent and received correctly, with valid checksums. Then, it would be a great thing if you could isolate the failing routine and, for example, make a test case usable with linux-user emulation. This would be a great help to solve this issue. Thanks by advance. -- J. Mayer <[EMAIL PROTECTED]> Never organized _______________________________________________ Qemu-devel mailing list Qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel