Roman Shaposhnik created GUACAMOLE-663:
------------------------------------------

             Summary: guacd SEGVs intermittently on systems with small(er) 
thread stack sizes
                 Key: GUACAMOLE-663
                 URL: https://issues.apache.org/jira/browse/GUACAMOLE-663
             Project: Guacamole
          Issue Type: Bug
          Components: guacd
    Affects Versions: 1.0.0
            Reporter: Roman Shaposhnik


I've observed at least guacd VNC plugin to run out of stack space when deployed 
on Alpine Linux with musl libc. This is not limited to Alpine since quite a few 
distributions are using musl these days (Void, Bedrock, etc.) and the list is 
growing. musl libc is especially popular for distributions meant to be the base 
for Docker containers. Hence, I believe addressing this will be quite important 
for enabling use of guacd in modern containerized environments.

The issue itself is well know to Alpine folks: 
[https://github.com/voidlinux/void-packages/issues/4147] and they feel (perhaps 
for right reasons) that applications requiring large(r) thread stacksizes 
should explicitly declare their requirement. There are currently two ways of 
accomplishing this: either via a global pthread_setattr_default_np call 
[https://www.openwall.com/lists/musl/2017/01/03/1] or via per-pthread_create 
setting of defaults e.g. 
[https://github.com/voidlinux/void-packages/commit/5d65448221af12296f7ef2339ced92771bb465b4]
 

 

I feel that the first option is a better choice for guacd. Attaching a 
preliminary patch that makes guacd work fine on Alpine 3.8.x



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to