From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:53821) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RIyTD-0007YU-06 for qemu-devel@nongnu.org; Wed, 26 Oct 2011 04:04:23 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1RIyTB-0000kT-Vg for qemu-devel@nongnu.org; Wed, 26 Oct 2011 04:04:18 -0400 Received: from mail-wy0-f173.google.com ([74.125.82.173]:63872) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1RIyTB-0000kL-QP for qemu-devel@nongnu.org; Wed, 26 Oct 2011 04:04:17 -0400 Received: by wyh15 with SMTP id 15so1506750wyh.4 for ; Wed, 26 Oct 2011 01:04:16 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: <4E72015C.7070709@web.de> 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> From: Roy Tam Date: Wed, 26 Oct 2011 16:03:55 +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/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=3D429496729= 5, >>>> =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=3D= 0x22f642 "\"") >>>> =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_o= utput.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_su= br.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=3D= 0x22f9dc, >>>> =A0 =A0 xfds=3D0x22f8d8, select_error=3D2291816) at slirp/slirp.c:433 >>>> #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 {ih_= mbuf =3D { >>>> =A0 =A0 =A0 =A0 mptr =3D 0x0, dummy =3D 0}, ih_x1 =3D 0 '\000', ih_pr = =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_ds= t =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. > Jan > >