Re: [PATCH liburing] examples/ucontext-cp.c: cope with variable SIGSTKSZ
From: Pavel Begunkov <asml.silence@gmail.com>
Date: 2021-04-23 14:13:32
Also in:
io-uring
On 4/22/21 3:22 PM, Stefano Garzarella wrote:
+Cc: io-uring@vger.kernel.org +Cc: Pavel Begunkov [off-list ref] Original message: https://www.spinics.net/lists/linux-block/msg67077.html On Thu, Apr 22, 2021 at 10:59:42AM +0100, Stefan Hajnoczi wrote:quoted
On Mon, Apr 19, 2021 at 11:38:07AM -0700, H.J. Lu wrote:quoted
On Mon, Apr 19, 2021 at 7:35 AM Stefan Hajnoczi [off-list ref] wrote:quoted
On Tue, Apr 13, 2021 at 04:03:19PM +0100, Stefan Hajnoczi wrote:quoted
The size of C arrays at file scope must be constant. The following compiler error occurs with recent upstream glibc (2.33.9000): CC ucontext-cp ucontext-cp.c:31:23: error: variably modified ‘stack_buf’ at file scope 31 | unsigned char stack_buf[SIGSTKSZ]; | ^~~~~~~~~ make[1]: *** [Makefile:26: ucontext-cp] Error 1 The following glibc commit changed SIGSTKSZ from a constant value to a variable: commit 6c57d320484988e87e446e2e60ce42816bf51d53 Author: H.J. Lu [off-list ref] Date: Mon Feb 1 11:00:38 2021 -0800 sysconf: Add _SC_MINSIGSTKSZ/_SC_SIGSTKSZ [BZ #20305] ... +# define SIGSTKSZ sysconf (_SC_SIGSTKSZ) Allocate the stack buffer explicitly to avoid declaring an array at file scope. Cc: H.J. Lu <redacted> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> --- Perhaps the glibc change needs to be revised before releasing glibc 2.34 since it might break applications. That's up to the glibc folks. It doesn't hurt for liburing to take a safer approach that copes with the SIGSTKSZ change in any case.glibc folks, please take a look. The commit referenced above broke compilation of liburing's tests. It's possible that applications will hit similar issues. Can you check whether the SIGSTKSZ change needs to be reverted/fixed before releasing glibc 2.34?It won't be changed for glibc 2.34.Thanks for the response, H.J. and Paul. In that case liburing needs this patch.I think so: Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>
Right, and there are already people complaining https://github.com/axboe/liburing/issues/320 -- Pavel Begunkov