One of our PyQt app throwa an error about ICEAuthority as below and exit -<br />
<br />
ICE default IO error handler doing an exit(), pid = 11281, errno = 4<br />
<br />
On looking at trace, we see the following -<br />
<br />
write(25, "\1\0\3\200\3\0\0\0\3\0\0\0\t\0\0\0\10\0\0\0\1\0\0\0\377rtStyle", 32) = 32<br />
read(25, 0x16a67f0, 8) = ? ERESTARTSYS (To be restarted)<br />
— SIGCHLD (Child exited) @ 0 (0) —<br />
write(6, "\0", 1) = 1<br />
rt_sigreturn(0x2) = -1 EINTR (Interrupted system call)<br />
write(2, "ICE default IO error handler doi"..., 69) = 69<br />
<br />
This looks like the ICEAuthority file read operation fail to restart after handling the SIGCHLD for one of the process we spawn from PyQt app. On googling, there are lot of reports about ICEAuthority file failure and people either suggest to restart the system, delete the .ICEAuthority file or unset SESSION_MANAGER. We inclined to unset SESSION_MANAGER in our PyQt app for now. But I like to understand why the operation fail to restart the read operation of ICEAuthority file. Is this a bug in gnome-session code? Is anyone aware of it?<br />
<br />
Also I like to mention that I tried setting SA_RESTART to false for SIGCHLD handle to restart the operation. This failed to work.<br />
<br />
Please find below our system detail -<br />
<br />
Linux nyc-nx-l01.schrodinger.com 2.6.32-358.23.2.el6.x86_64 <a href="http://bugs.centos.org/view.php?id=1">0000001</a> SMP Wed Oct 16 18:37:12 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux<br />
<br />
CentOS release 6.4 (Final)<br />
<br />
and libICE library version is libICE.so.6.3.0<br />
<br />
-Karthik
↧