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

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

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • 1.0.0
    • 1.6.1
    • guacd
    • 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

        1. GUACAMOLE-663.patch.txt
          0.7 kB
          Roman Shaposhnik

        Activity

          People

            vnick Nick Couchman
            rvs Roman Shaposhnik
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: