Commit f552a27a authored by Hao Xu's avatar Hao Xu Committed by Jens Axboe

io_uring: remove files pointer in cancellation functions

When doing cancellation, we use a parameter to indicate where it's from
do_exit or exec. So a boolean value is good enough for this, remove the
struct files* as it is not necessary.
Signed-off-by: default avatarHao Xu <haoxu@linux.alibaba.com>
[axboe: fixup io_uring_files_cancel for !CONFIG_IO_URING]
Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent a4aadd11
...@@ -9213,9 +9213,9 @@ static void io_uring_cancel_generic(bool cancel_all, struct io_sq_data *sqd) ...@@ -9213,9 +9213,9 @@ static void io_uring_cancel_generic(bool cancel_all, struct io_sq_data *sqd)
} }
} }
void __io_uring_cancel(struct files_struct *files) void __io_uring_cancel(bool cancel_all)
{ {
io_uring_cancel_generic(!files, NULL); io_uring_cancel_generic(cancel_all, NULL);
} }
static void *io_uring_validate_mmap_request(struct file *file, static void *io_uring_validate_mmap_request(struct file *file,
......
...@@ -7,18 +7,18 @@ ...@@ -7,18 +7,18 @@
#if defined(CONFIG_IO_URING) #if defined(CONFIG_IO_URING)
struct sock *io_uring_get_socket(struct file *file); struct sock *io_uring_get_socket(struct file *file);
void __io_uring_cancel(struct files_struct *files); void __io_uring_cancel(bool cancel_all);
void __io_uring_free(struct task_struct *tsk); void __io_uring_free(struct task_struct *tsk);
static inline void io_uring_files_cancel(struct files_struct *files) static inline void io_uring_files_cancel(void)
{ {
if (current->io_uring) if (current->io_uring)
__io_uring_cancel(files); __io_uring_cancel(false);
} }
static inline void io_uring_task_cancel(void) static inline void io_uring_task_cancel(void)
{ {
if (current->io_uring) if (current->io_uring)
__io_uring_cancel(NULL); __io_uring_cancel(true);
} }
static inline void io_uring_free(struct task_struct *tsk) static inline void io_uring_free(struct task_struct *tsk)
{ {
...@@ -33,7 +33,7 @@ static inline struct sock *io_uring_get_socket(struct file *file) ...@@ -33,7 +33,7 @@ static inline struct sock *io_uring_get_socket(struct file *file)
static inline void io_uring_task_cancel(void) static inline void io_uring_task_cancel(void)
{ {
} }
static inline void io_uring_files_cancel(struct files_struct *files) static inline void io_uring_files_cancel(void)
{ {
} }
static inline void io_uring_free(struct task_struct *tsk) static inline void io_uring_free(struct task_struct *tsk)
......
...@@ -777,7 +777,7 @@ void __noreturn do_exit(long code) ...@@ -777,7 +777,7 @@ void __noreturn do_exit(long code)
schedule(); schedule();
} }
io_uring_files_cancel(tsk->files); io_uring_files_cancel();
exit_signals(tsk); /* sets PF_EXITING */ exit_signals(tsk); /* sets PF_EXITING */
/* sync mm's RSS info before statistics gathering */ /* sync mm's RSS info before statistics gathering */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment