<div dir="ltr"><div><div><div>OK, I'm confused.  Why don't I see the keep alives in the wireshark dump?  I'm happy to upload my pcap file to <a href="http://dropbox.redhat.com" target="_blank">dropbox.redhat.com</a> for analysis<br>

<br></div>Apologies for harping on about this but the users are getting annoyed with their sessions freezing or terminating.  Also, we've confirmed that the exact timing is 30 minutes not 15 minutes<br><br></div>I had a fairly long and productive chat with one of the guys that manage the other firewall cluster.  I gave him the src and dst addresses and dst port and he was able to advise on the session state on the firewall.  If I opened a spice session to a RHEL server (no X) and minimised it, all 4 sessions on the 'odd' port started counting down from 1800.  If we leave the session minimised for then we get the "Could not connect to graphic server" or similar, can't remember exact wording.  However, if I start a spice session  to a RHEL server (no X) and minimise/un-minimise it every few minutes (but no keyboard interaction) only 3 of the 4 sessions on the odd port continue counting down from 1800.  Once they hit zero, the screen is still visible but nothing I type appears on the screen and sending a keystroke with 'Send Key' does noting.<br>

<br>While I've been writing this, I've had an strace running on a remote-viewer session.<br>---<br>[colin@fedora18 ~]$ strace -e trace=setsockopt -p 15504<br>Process 15504 attached<br>---<br></div>From another terminal session,<br>

---<br>  <div> [colin@fedora18 ~]$ ps -ef | grep strace<br>colin     15534  7107  0 06:00 pts/11   00:00:00 strace -e trace=setsockopt -p 15504<br>colin     16799 19435  0 06:34 pts/5    00:00:00 grep --color=auto strace<br>

[colin@fedora18 ~]$<br>---<br></div><div>So the strace has been running for about 35 minutes now, and strace has not shown a single 'setsockopt'.  <br><br></div><div>Thanks<br><br></div><div>CC<br><br></div><div>
PS: Just killed the remote-viewer session and got <br> ---<br>[colin@fedora18 ~]$ strace -e trace=setsockopt -p 15504<br>Process 15504 attached<br>setsockopt(30, SOL_SOCKET, SO_ATTACH_FILTER, "\10\0\0\0\0\0\0\0\360\354\310\r\377\177\0\0", 16) = 0<br>
setsockopt(30, SOL_SOCKET, SO_PASSCRED, [1], 4) = 0<br>+++ exited with 0 +++<br>[colin@fedora18 ~]$<br>---<br></div><div><br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Sep 17, 2013 at 8:43 PM, Marc-André Lureau <span dir="ltr"><<a href="mailto:mlureau@redhat.com" target="_blank">mlureau@redhat.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im"><br>
<br>
----- Original Message -----<br>
> Just downloaded spice-gtk3 source. When I grep 'setsockopt', the only<br>
> instance I see is setting TCP_NODELAY. It seems that while spice-gtk may [1]<br>
> set SO_KEEPALIVE, spice-gtk3 does not.<br>
<br>
</div>spice-gtk uses glib, g_socket_set_keepalive(), it was added in 0.10:<br>
<a href="http://cgit.freedesktop.org/spice/spice-gtk/commit/?id=8fe6547b6181fb7acbabedcd6ed95caf263dd8cc" target="_blank">http://cgit.freedesktop.org/spice/spice-gtk/commit/?id=8fe6547b6181fb7acbabedcd6ed95caf263dd8cc</a><br>

<br>
This can be verified with strace:<br>
<br>
elmarco@anakao:~$ strace -e trace=setsockopt -- spicy -p 5900<br>
setsockopt(7, SOL_SOCKET, SO_ATTACH_FILTER, "\10\0\0\0\0\0\0\0\240\202J\5\377\177\0\0", 16) = 0<br>
setsockopt(7, SOL_SOCKET, SO_PASSCRED, [1], 4) = 0<br>
setsockopt(15, SOL_SOCKET, SO_KEEPALIVE, [1], 4) = 0<br>
setsockopt(15, SOL_TCP, TCP_NODELAY, [1], 4) = 0<br>
setsockopt(18, SOL_SOCKET, SO_PRIORITY, [6], 4) = 0<br>
setsockopt(18, SOL_SOCKET, SO_RCVBUF, [65472], 4) = 0<br>
setsockopt(18, SOL_SOCKET, SO_SNDBUF, [65472], 4) = 0<br>
setsockopt(18, SOL_SOCKET, SO_PASSCRED, [1], 4) = 0<br>
setsockopt(19, SOL_SOCKET, SO_KEEPALIVE, [1], 4) = 0<br>
setsockopt(19, SOL_TCP, TCP_NODELAY, [1], 4) = 0<br>
setsockopt(20, SOL_SOCKET, SO_KEEPALIVE, [1], 4) = 0<br>
setsockopt(20, SOL_TCP, TCP_NODELAY, [1], 4) = 0<br>
setsockopt(21, SOL_SOCKET, SO_KEEPALIVE, [1], 4) = 0<br>
setsockopt(21, SOL_TCP, TCP_NODELAY, [1], 4) = 0<br>
setsockopt(22, SOL_SOCKET, SO_KEEPALIVE, [1], 4) = 0<br>
setsockopt(22, SOL_TCP, TCP_NODELAY, [1], 4) = 0<br>
setsockopt(23, SOL_SOCKET, SO_KEEPALIVE, [1], 4) = 0<br>
setsockopt(23, SOL_TCP, TCP_NODELAY, [1], 4) = 0<br>
<br>
</blockquote></div><br><br clear="all"><br>-- <br>RHCE#805007969328369
</div>