Hello Orion,
We can't wait forever in ssh_select, we must perform other tasks in loop, for example accepting forwarded connections. However, I have already increased a select timeout and made a lot of other changes in ssh code of X2Go Client. The changes are not yet in master GIT because they depend on reverse forwarding fixes, that I made to libssh. As soon as we have libssh packages ready, I'll push my local commits to GIT.
regards, Alex
Am 22.01.2014 22:36, schrieb Orion Poplawski:
With libssh 0.6.0, x2goclient consumes 100% cpu on connection. The trigger for this is that ssh_select() was rewritten to use poll() instead of select(). poll() has a timeout in milliseconds, select() in microseconds. x2goclient requests a timeout of 500 microseconds which is getting rounded down to a timeout of 0 milliseconds for poll().
However, this still seems to point to some poor coding on the part of x2goclient that we're using such short timeouts. Why can't we just wait forever in ssh_select() in SshMasterConnection::channelLoop() ?
Oleksandr Shneyder | Email: o.shneyder@phoca-gmbh.de phoca GmbH | Tel. : 0911 - 14870374 0 Bräuhausgasse 9 | Fax. : 0911 - 14870374 9 D-82205 Gilching | Mobil: 0163 - 49 64 461
Geschäftsführung: Dipl.-Inf. Oleksandr Shneyder