musl - musl - an implementation of the standard library for Linux-based systems

index : musl
musl - an implementation of the standard library for Linux-based systems
summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorAlexey Izbyshev <izbyshev@ispras.ru>2022年10月07日 15:23:57 +0300
committerRich Felker <dalias@aerifal.cx>2022年10月19日 14:01:32 -0400
commit26c76a908b8613ea8a77d40f3bd51b02f984501c (patch)
tree14c3b07590672b8554ca50f246fe7b55a0283829 /src
parentaebd6a36449e91c06763a40121d558b6cea90d50 (diff)
downloadmusl-26c76a908b8613ea8a77d40f3bd51b02f984501c.tar.gz
fix use of uninitialized dummy_fut in aio_suspend
aio_suspend waits on a dummy futex in the corner case when the array of requests contains NULL pointers only. But the value of this futex was left uninitialized, so if it happens to be non-zero, aio_suspend degrades to spinning instead of blocking.
Diffstat (limited to 'src')
-rw-r--r--src/aio/aio_suspend.c 2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/aio/aio_suspend.c b/src/aio/aio_suspend.c
index 95def796..1f0c9aaa 100644
--- a/src/aio/aio_suspend.c
+++ b/src/aio/aio_suspend.c
@@ -9,7 +9,7 @@ int aio_suspend(const struct aiocb *const cbs[], int cnt, const struct timespec
{
int i, tid = 0, ret, expect = 0;
struct timespec at;
- volatile int dummy_fut, *pfut;
+ volatile int dummy_fut = 0, *pfut;
int nzcnt = 0;
const struct aiocb *cb = 0;
generated by cgit v1.2.1 (git 2.18.0) at 2025年09月10日 09:36:38 +0000

AltStyle によって変換されたページ (->オリジナル) /