Hi, 2011/9/15 Jan Kiszka <jan.kis...@web.de>: > On 2011-09-15 15:20, Roy Tam wrote: >> 2011/9/15 Jan Kiszka <jan.kis...@web.de>: >>> 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=0x19f7380, ip_addr=4294967295, >>>> out_ethaddr=0x20af64a "") at slirp/arp_table.c:75 >>>> 75 // assert((ip_addr & htonl(~(0xf << 28))) != 0); >>>> (gdb) c >>>> Continuing. >>>> [New Thread 13840.0x31b8] >>>> [Switching to Thread 13840.0x3628] >>>> >>>> Breakpoint 1, arp_table_search (slirp=0x19f7380, ip_addr=0, >>>> out_ethaddr=0x22f642 "\"") at slirp/arp_table.c:75 >>>> 75 // assert((ip_addr & htonl(~(0xf << 28))) != 0); >>>> (gdb) bt >>>> #0 arp_table_search (slirp=0x19f7380, ip_addr=0, out_ethaddr=0x22f642 >>>> "\"") >>>> at slirp/arp_table.c:75 >>>> #1 0x004bafbd in if_encap (slirp=0x19f7488, ifm=0x2255978) >>>> at slirp/slirp.c:709 >>>> #2 0x004b8a73 in if_start (slirp=0x19f7380) at slirp/if.c:210 >>>> #3 0x004b9c9e in ip_output (so=0x2255978, m0=0x0) at slirp/ip_output.c:84 >>>> #4 0x004bf737 in tcp_output (tp=0x1cac848) at slirp/tcp_output.c:456 >>>> #5 0x004c09ad in tcp_drop (tp=0x1cac848, err=0) at slirp/tcp_subr.c:225 >>>> #6 0x004c1182 in tcp_timers (timer=<optimized out>, tp=<optimized out>) >>>> at slirp/tcp_timer.c:287 >>>> #7 tcp_slowtimo (slirp=0x0) at slirp/tcp_timer.c:88 >>>> #8 0x004bb6f1 in slirp_select_poll (readfds=0x22fae0, writefds=0x22f9dc, >>>> xfds=0x22f8d8, select_error=2291816) at slirp/slirp.c:433 >>>> #9 0x0048fb87 in main_loop_wait (nonblocking=0) >>>> 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=0, argv=0x19f5100, envp=0x0) >>>> at C:/msys/home/User/qemu/vl.c:3453 >>>> #12 0x0049322d in SDL_main (argc=17, argv=0x19f5100) >>>> 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 0x004bf737 in tcp_output (tp=0x1cac848) at slirp/tcp_output.c:456 >>>> 456 error = ip_output(so, m); >>>> (gdb) print *tp >>>> $1 = {seg_next = 0x1cac848, seg_prev = 0x1cac848, t_state = 0, t_timer = >>>> {0, >>>> 0, 0, 0}, t_rxtshift = 0, t_rxtcur = 12, t_dupacks = 0, t_maxseg = >>>> 1460, >>>> t_force = 0 '\000', t_flags = 0, t_template = {ti_i = {ih_mbuf = { >>>> mptr = 0x0, dummy = 0}, ih_x1 = 0 '\000', ih_pr = 0 '\000', >>>> ih_len = 0, ih_src = {S_un = {S_un_b = {s_b1 = 0 '\000', >>>> s_b2 = 0 '\000', s_b3 = 0 '\000', s_b4 = 0 '\000'}, S_un_w = { >>>> s_w1 = 0, s_w2 = 0}, S_addr = 0}}, ih_dst = {S_un = {S_un_b = { >>>> s_b1 = 0 '\000', s_b2 = 0 '\000', s_b3 = 0 '\000', >>>> s_b4 = 0 '\000'}, S_un_w = {s_w1 = 0, s_w2 = 0}, S_addr = 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 > >