Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Wed, 4 Oct 2023 22:43:16 -0400
From: Carl Chave <>
To: Rich Felker <>
Subject: Re: Hung processes with althttpd web server

> 1. What Alpine/musl version are you using? If it's older, it might be
>    something that would be different in current versions.

Alpine 3.18.3 with musl package musl-1.2.4-r1 x86_64

> 2. Can you attach gdb to the hung process and identify what lock
>    object it's waiting on?

I don't really know what I'm doing with gdb. This is probably not helpful:
(gdb) bt
#0  0x00007f5fb449c0dd in ?? () from /lib/
#1  0x0000000000000002 in ?? ()
#2  0x0000000000000000 in ?? ()

> 3. Is this stock althttpd from sqlite?

I have some patches applied which can be seen here:
I applied the same patches to the static glibc build.

> 4. Is the process multithreaded? I don't see where althttpd is doing
>    anything with threads but there could be library code I'm not aware
>    of.

>From the althttpd homepage:
Because each althttpd process only needs to service a single
connection, althttpd is single threaded. Furthermore, each process
only lives for the duration of a single connection, which means that
althttpd does not need to worry too much about memory leaks. These
design factors help keep the althttpd source code simple, which
facilitates security auditing and analysis.

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.