Uploaded image for project: 'Guacamole'
  1. Guacamole
  2. GUACAMOLE-663

guacd SEGVs intermittently on systems with small(er) thread stack sizes

    Details

    • Type: Bug
    • Status: Open
    • Priority: Minor
    • Resolution: Unresolved
    • Affects Version/s: 1.0.0
    • Fix Version/s: None
    • Component/s: guacd
    • Labels:
      None

      Description

      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

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              rvs Roman Shaposhnik
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated: