<div style="line-height:1.7;color:#000000;font-size:14px;font-family:arial"><div><br> </div><div id="isForwardContent"><div style="color: rgb(0, 0, 0); line-height: 1.7; font-family: arial; font-size: 14px;"><div>hi,all</div><div>1.it seems that there are many racing condition  between channels.</div><div>for example  all channels of a vm connect to just only one client, if the client down, a variable shared between channels should be set.</div><div>let see my problem.</div><div> </div><div>1.server is aware of client is down (reset),</div><div>2.snd_receive still compare the numbers of data , why?  why assert?</div><div>each thread  do not communicate with each other.</div><div> </div><div> </div><div>---log-------------</div><div>handle_dev_display_connect: connect<br>handle_new_display_channel: add display channel client<br>handle_new_display_channel: add display channel client<br>handle_new_display_channel: New display (client 0x7fe2408720f0) dcc 0x7fe1d899bc20 stream 0x7fe240cebbe0<br>handle_new_display_channel: jpeg disabled<br>handle_new_display_channel:
  zlib-over-glz disabled<br>listen_to_new_client_channel: NEW ID = 0<br>handle_new_display_channel: zlib-over-glz disabled<br>listen_to_new_client_channel: NEW ID = 0<br>reds_show_new_channel: channel 9:2, connected successfully, over Secure link<br>reds_handle_auth_mechanism: Auth method: 1<br>reds_show_new_channel: channel 9:3, connected successfully, over Secure link<br>reds_handle_auth_mechanism: Auth method: 1<br>reds_show_new_channel: channel 9:1, connected successfully, over Secure link<br>display_channel_client_wait_for_init: creating encoder with id == 0<br>red_channel_client_disconnect: 0x7fe240e09030 (channel 0x7fe2407cd2f0 type 3 id 0)<br>red_peer_receive: Connection reset by peer<br>red_channel_client_disconnect: 0x7fe1d899bc20 (channel 0x7fe1d80458d0 type 2 id 0)<br>display_channel_client_on_disconnect: <br>red_channel_client_disconnect: 0x7fe1d80c8890 (channel 0x7fe1d8045e90 type 4 id 0)<br>snd_channel_put: sound channel freed</div><div>snd_receive: ASSERT n fa
 iled<br>/usr/lib64/libspice-server.so.1(+0xbf465)[0x7fe23d176465]<br>/usr/lib64/libspice-server.so.1(+0x45d2a)[0x7fe23d0fcd2a]<br>/usr/lib64/libspice-server.so.1(+0x45d80)[0x7fe23d0fcd80]<br>/usr/libexec/qemu-kvm(+0x625df)[0x7fe23ef315df]<br>/usr/libexec/qemu-kvm(+0x8428a)[0x7fe23ef5328a]<br>/usr/libexec/qemu-kvm(main+0x154c)[0x7fe23ef3412c]<br>/lib64/libc.so.6(__libc_start_main+0xfd)[0x7fe23c8a8cdd]<br>/usr/libexec/qemu-kvm(+0x5f149)[0x7fe23ef2e149]<br>2013-05-10 05:55:38.945+0000: shutting down</div></div><br><br><span title="neteasefooter"><span id="netease_mail_footer"></span></span></div></div><br><br><span title="neteasefooter"><span id="netease_mail_footer"></span></span>