io_uring: inline io_req_task_work_add()
authorPavel Begunkov <asml.silence@gmail.com>
Fri, 11 Nov 2022 16:54:08 +0000 (16:54 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 1 Feb 2023 07:34:41 +0000 (08:34 +0100)
commitbfd4d1884065f0cc1e739c2170551543c9e0e287
treefbc64395ec4c5993df5730d0fa5ad124ef21589a
parentaf8e87f72f9ea4c6915506098e506c4e08d3d49c
io_uring: inline io_req_task_work_add()

[ Upstream commit e52d2e583e4ad1d5d0b804d79c2b8752eb0e5ceb ]

__io_req_task_work_add() is huge but marked inline, that makes compilers
to generate lots of garbage. Inline the wrapper caller
io_req_task_work_add() instead.

before and after:
   text    data     bss     dec     hex filename
  47347   16248       8   63603    f873 io_uring/io_uring.o
   text    data     bss     dec     hex filename
  45303   16248       8   61559    f077 io_uring/io_uring.o

Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
Link: https://lore.kernel.org/r/26dc8c28ca0160e3269ef3e55c5a8b917c4d4450.1668162751.git.asml.silence@gmail.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Stable-dep-of: ef5c600adb1d ("io_uring: always prep_async for drain requests")
Signed-off-by: Sasha Levin <sashal@kernel.org>
io_uring/io_uring.c
io_uring/io_uring.h