Skip to content

Commit

Permalink
tools/io_uring: fix compile breakage
Browse files Browse the repository at this point in the history
[ Upstream commit 72f04da ]

It would seem none of the kernel continuous integration does this:
    $ cd tools/io_uring
    $ make

Otherwise it may have noticed:
   cc -Wall -Wextra -g -D_GNU_SOURCE   -c -o io_uring-bench.o
	 io_uring-bench.c
io_uring-bench.c:133:12: error: static declaration of ‘gettid’
	 follows non-static declaration
  133 | static int gettid(void)
      |            ^~~~~~
In file included from /usr/include/unistd.h:1170,
                 from io_uring-bench.c:27:
/usr/include/x86_64-linux-gnu/bits/unistd_ext.h:34:16: note:
	 previous declaration of ‘gettid’ was here
   34 | extern __pid_t gettid (void) __THROW;
      |                ^~~~~~
make: *** [<builtin>: io_uring-bench.o] Error 1

The problem on Ubuntu 20.04 (with lk 5.9.0-rc5) is that unistd.h
already defines gettid(). So prefix the local definition with
"lk_".

Signed-off-by: Douglas Gilbert <dgilbert@interlog.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Sasha Levin <sashal@kernel.org>
  • Loading branch information
doug-gilbert authored and gregkh committed Oct 7, 2020
1 parent 4e4646c commit 8cc5eb8
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions tools/io_uring/io_uring-bench.c
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,7 @@ static int io_uring_register_files(struct submitter *s)
s->nr_files);
}

static int gettid(void)
static int lk_gettid(void)
{
return syscall(__NR_gettid);
}
Expand Down Expand Up @@ -281,7 +281,7 @@ static void *submitter_fn(void *data)
struct io_sq_ring *ring = &s->sq_ring;
int ret, prepped;

printf("submitter=%d\n", gettid());
printf("submitter=%d\n", lk_gettid());

srand48_r(pthread_self(), &s->rand);

Expand Down

0 comments on commit 8cc5eb8

Please sign in to comment.