From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:43766) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RJFJw-0003K1-PQ for qemu-devel@nongnu.org; Wed, 26 Oct 2011 22:03:56 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RJFJu-0005nY-RZ for qemu-devel@nongnu.org; Wed, 26 Oct 2011 22:03:52 -0400 Received: from mail-ww0-f53.google.com ([74.125.82.53]:46765) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RJFJu-0005nP-IU for qemu-devel@nongnu.org; Wed, 26 Oct 2011 22:03:50 -0400 Received: by wwi36 with SMTP id 36so3102984wwi.10 for ; Wed, 26 Oct 2011 19:03:49 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: <4EA7CD1B.2070106@siemens.com> References: <20110811164621.32220.49907.malonedeb@chaenomeles.canonical.com> <4E719C36.8030903@web.de> <4E71D72F.1020401@web.de> <4E71E784.9010209@web.de> <4E71F873.5020700@web.de> <4E72015C.7070709@web.de> <4EA7CD1B.2070106@siemens.com> From: Roy Tam Date: Thu, 27 Oct 2011 10:03:28 +0800 Message-ID: Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [Bug 824650] [NEW] Latest GIT assert error in arp_table.c List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Jan Kiszka Cc: Bug 824650 <824650@bugs.launchpad.net>, qemu-devel@nongnu.org Hi, 2011/10/26 Jan Kiszka : > On 2011-10-26 10:03, Roy Tam wrote: >> Hi, >> >> 2011/9/15 Jan Kiszka : >>> On 2011-09-15 15:20, Roy Tam wrote: >>>> 2011/9/15 Jan Kiszka : >>>>> On 2011-09-15 14:05, Roy Tam wrote: >>>>>> Here you go. >>>>>> >>>>>> sb16: warning: command 0xf,1 is not truly understood yet >>>>>> sb16: warning: command 0xe,2 is not truly understood yet >>>>>> [Switching to Thread 13840.0x3140] >>>>>> >>>>>> Breakpoint 1, arp_table_search (slirp=3D0x19f7380, ip_addr=3D4294967= 295, >>>>>> =A0 =A0 out_ethaddr=3D0x20af64a "") at slirp/arp_table.c:75 >>>>>> 75 =A0 =A0 =A0// =A0 =A0assert((ip_addr & htonl(~(0xf << 28))) !=3D = 0); >>>>>> (gdb) c >>>>>> Continuing. >>>>>> [New Thread 13840.0x31b8] >>>>>> [Switching to Thread 13840.0x3628] >>>>>> >>>>>> Breakpoint 1, arp_table_search (slirp=3D0x19f7380, ip_addr=3D0, >>>>>> =A0 =A0 out_ethaddr=3D0x22f642 "\"") at slirp/arp_table.c:75 >>>>>> 75 =A0 =A0 =A0// =A0 =A0assert((ip_addr & htonl(~(0xf << 28))) !=3D = 0); >>>>>> (gdb) bt >>>>>> #0 =A0arp_table_search (slirp=3D0x19f7380, ip_addr=3D0, out_ethaddr= =3D0x22f642 "\"") >>>>>> =A0 =A0 at slirp/arp_table.c:75 >>>>>> #1 =A00x004bafbd in if_encap (slirp=3D0x19f7488, ifm=3D0x2255978) >>>>>> =A0 =A0 at slirp/slirp.c:709 >>>>>> #2 =A00x004b8a73 in if_start (slirp=3D0x19f7380) at slirp/if.c:210 >>>>>> #3 =A00x004b9c9e in ip_output (so=3D0x2255978, m0=3D0x0) at slirp/ip= _output.c:84 >>>>>> #4 =A00x004bf737 in tcp_output (tp=3D0x1cac848) at slirp/tcp_output.= c:456 >>>>>> #5 =A00x004c09ad in tcp_drop (tp=3D0x1cac848, err=3D0) at slirp/tcp_= subr.c:225 >>>>>> #6 =A00x004c1182 in tcp_timers (timer=3D, tp=3D) >>>>>> =A0 =A0 at slirp/tcp_timer.c:287 >>>>>> #7 =A0tcp_slowtimo (slirp=3D0x0) at slirp/tcp_timer.c:88 >>>>>> #8 =A00x004bb6f1 in slirp_select_poll (readfds=3D0x22fae0, writefds= =3D0x22f9dc, >>>>>> =A0 =A0 xfds=3D0x22f8d8, select_error=3D2291816) at slirp/slirp.c:43= 3 >>>>>> #9 =A00x0048fb87 in main_loop_wait (nonblocking=3D0) >>>>>> =A0 =A0 at C:/msys/home/User/qemu/vl.c:1436 >>>>>> #10 0x00490d10 in main_loop () at C:/msys/home/User/qemu/vl.c:1466 >>>>>> #11 qemu_main (argc=3D0, argv=3D0x19f5100, envp=3D0x0) >>>>>> =A0 =A0 at C:/msys/home/User/qemu/vl.c:3453 >>>>>> #12 0x0049322d in SDL_main (argc=3D17, argv=3D0x19f5100) >>>>>> =A0 =A0 at C:/msys/home/User/qemu/vl.c:102 >>>>>> #13 0x005eb784 in console_main () >>>>>> #14 0x005eb844 in WinMain@16 () >>>>>> #15 0x005eb068 in main () >>>>>> (gdb) frame 4 >>>>>> #4 =A00x004bf737 in tcp_output (tp=3D0x1cac848) at slirp/tcp_output.= c:456 >>>>>> 456 =A0 =A0 =A0 =A0 =A0 =A0 error =3D ip_output(so, m); >>>>>> (gdb) print *tp >>>>>> $1 =3D {seg_next =3D 0x1cac848, seg_prev =3D 0x1cac848, t_state =3D = 0, t_timer =3D {0, >>>>>> =A0 =A0 0, 0, 0}, t_rxtshift =3D 0, t_rxtcur =3D 12, t_dupacks =3D 0= , t_maxseg =3D 1460, >>>>>> =A0 t_force =3D 0 '\000', t_flags =3D 0, t_template =3D {ti_i =3D {i= h_mbuf =3D { >>>>>> =A0 =A0 =A0 =A0 mptr =3D 0x0, dummy =3D 0}, ih_x1 =3D 0 '\000', ih_p= r =3D 0 '\000', >>>>>> =A0 =A0 =A0 ih_len =3D 0, ih_src =3D {S_un =3D {S_un_b =3D {s_b1 =3D= 0 '\000', >>>>>> =A0 =A0 =A0 =A0 =A0 =A0 s_b2 =3D 0 '\000', s_b3 =3D 0 '\000', s_b4 = =3D 0 '\000'}, S_un_w =3D { >>>>>> =A0 =A0 =A0 =A0 =A0 =A0 s_w1 =3D 0, s_w2 =3D 0}, S_addr =3D 0}}, ih_= dst =3D {S_un =3D {S_un_b =3D { >>>>>> =A0 =A0 =A0 =A0 =A0 =A0 s_b1 =3D 0 '\000', s_b2 =3D 0 '\000', s_b3 = =3D 0 '\000', >>>>>> =A0 =A0 =A0 =A0 =A0 =A0 s_b4 =3D 0 '\000'}, S_un_w =3D {s_w1 =3D 0, = s_w2 =3D 0}, S_addr =3D 0}}}, >>>>> >>>>> That confirms my theory: the template is not yet initialized. >>>>> >>>>> A shot from the hips: does this patch help? >>>>> >>>> >>>> Yeah the assertion doesn't fail anymore. Thanks. >>> >>> Now I just need to invent some good "why this is correct"... ;) >>> >>> Thanks for testing, >> >> I just have time now to make some tests about -net user. >> And I found that the User mode networking doesn't work anymore after >> your slirp patch series. > > Can you be more verbose? What precisely does not work? Same setup as > before (host, guest, command line, steps to reproduce)? I'm not facing > problems here ATM. > QEMU Revision: 2011-10-12 (latest git give me an Assertion failed: alarm_has_dynticks(t), file qemu-timer.c, line 139. Since there is no change in slirp directory, it should apply to latest git) gcc version:$ gcc -v Target: mingw32 Configured with: ../gcc-4.3.3/configure --prefix=3D/mingw --build=3Dmingw32 --enable-languages=3Dc,ada,c++,fortran,objc,obj-c++ --with-bugurl=3Dhttp://www.tdragon.net/recentgcc/bugs.php --disable-nls --disable-win32-registry --enable-libgomp --disable-werror --enable-threads --disable-symvers --enable-cxx-flags=3D'-fno-function-sections -fno-data-sections' --enable-fully-dynamic-string --enable-version-specific-runtime-libs --enable-sjlj-exceptions --with-pkgversion=3D'4.3.3-tdm-1 mingw32' Thread model: win32 gcc version 4.3.3 (4.3.3-tdm-1 mingw32) configure commandline: ./configure --target-list=3D"i386-softmmu x86_64-softmmu mips64el-softmmu" --audio-drv-list=3Dsdl --audio-card-list=3Dac97,sb16,adlib --disable-linux-aio --enable-vnc-thread --disable-vnc-jpeg --extra-ldflags=3D-s QEMU Host: Windows XP SP3 QEMU Guest: Windows XP SP3, Linux 2.6.38 (NIC: ne2k-pci, e1000) commandline: qemu-system-i386 -hda xp.vmdk -soundhw sb16 -m 320 -localtime -usb -usbdevice tablet -net user -net nic,model=3Dne2k_pci Symptoms: Guest can lease IP from QEMU Virtual DHCP Server, but the outgoing traffic are not working: - 10.0.2.3 Virtual DNS Server doesn't respond any DNS query ("nslookup www.google.com" fails with timeout message, "nslookup www.google.com " and "nslookup www.google.com 8.8.8.8" are also failed) - 10.0.2.2 Virtual Gateway is also unable to connect, only reply pings. Other connections are timeout. - 10.0.2.4 Virtual Samba Server is also unconnectable My last worked build is 2011-9-09 build and it starts to fail since 2011-9-10 build. > Thanks, > Jan > > -- > Siemens AG, Corporate Technology, CT T DE IT 1 > Corporate Competence Center Embedded Linux >