blob: 766b1fe274fe180200a07eb8879c9618c09f2ccd [file] [log] [blame]
Patrick Williams92b42cb2022-09-03 06:53:57 -05001From 269164337e0168b93661bb95c6a4e462ae6d8b61 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Wed, 24 Aug 2022 18:08:53 -0700
4Subject: [PATCH] io_uring: Replace pthread_self with s->tid
5
6__init_rand64 takes 64bit value and srand48 takes unsigned 32bit value,
7pthread_t is opaque type and some libcs ( e.g. musl ) do not define them
8in plain old data types and ends up with errors
9
10| t/io_uring.c:809:32: error: incompatible pointer to integer conversion passing 'pthread_t' (aka 'struct __pthread *') to parameter of type 'uint64_t' (aka 'unsigned long') [-Wint-conver
11sion]
12| __init_rand64(&s->rand_state, pthread_self());
13| ^~~~~~~~~~~~~~
14
15Upstream-Status: Submitted [https://github.com/axboe/fio/pull/1455]
16Signed-off-by: Khem Raj <raj.khem@gmail.com>
17---
18 t/io_uring.c | 5 ++---
19 1 file changed, 2 insertions(+), 3 deletions(-)
20
21diff --git a/t/io_uring.c b/t/io_uring.c
22index 35bf1956..f34a3554 100644
23--- a/t/io_uring.c
24+++ b/t/io_uring.c
25@@ -799,15 +799,14 @@ static int submitter_init(struct submitter *s)
26 int i, nr_batch, err;
27 static int init_printed;
28 char buf[80];
29-
30 s->tid = gettid();
31 printf("submitter=%d, tid=%d, file=%s, node=%d\n", s->index, s->tid,
32 s->filename, s->numa_node);
33
34 set_affinity(s);
35
36- __init_rand64(&s->rand_state, pthread_self());
37- srand48(pthread_self());
38+ __init_rand64(&s->rand_state, s->tid);
39+ srand48(s->tid);
40
41 for (i = 0; i < MAX_FDS; i++)
42 s->files[i].fileno = i;
43--
442.37.2
45