From: "Steven Rostedt (VMware)" Date: Fri, 20 Sep 2019 17:50:53 -0400 Subject: [PATCH 278/353] revert-aio Origin: https://git.kernel.org/cgit/linux/kernel/git/rt/linux-stable-rt.git/commit?id=6fe31f853eb820787f9cb92c68cf3cc1a3e9aa98 revert: fs/aio: simple simple work Signed-off-by: Steven Rostedt (VMware) --- fs/aio.c | 15 ++------------- 1 file changed, 2 insertions(+), 13 deletions(-) diff --git a/fs/aio.c b/fs/aio.c index ab1bb9260056..1bd934eccbf6 100644 --- a/fs/aio.c +++ b/fs/aio.c @@ -42,7 +42,6 @@ #include #include #include -#include #include #include @@ -122,7 +121,6 @@ struct kioctx { long nr_pages; struct rcu_work free_rwork; /* see free_ioctx() */ - struct swork_event free_swork; /* see free_ioctx() */ /* * signals when all in-flight requests are done @@ -269,7 +267,6 @@ static int __init aio_setup(void) .mount = aio_mount, .kill_sb = kill_anon_super, }; - BUG_ON(swork_get()); aio_mnt = kern_mount(&aio_fs); if (IS_ERR(aio_mnt)) panic("Failed to create aio fs mount."); @@ -615,9 +612,9 @@ static void free_ioctx_reqs(struct percpu_ref *ref) * and ctx->users has dropped to 0, so we know no more kiocbs can be submitted - * now it's safe to cancel any that need to be. */ -static void free_ioctx_users_work(struct swork_event *sev) +static void free_ioctx_users(struct percpu_ref *ref) { - struct kioctx *ctx = container_of(sev, struct kioctx, free_swork); + struct kioctx *ctx = container_of(ref, struct kioctx, users); struct aio_kiocb *req; spin_lock_irq(&ctx->ctx_lock); @@ -635,14 +632,6 @@ static void free_ioctx_users_work(struct swork_event *sev) percpu_ref_put(&ctx->reqs); } -static void free_ioctx_users(struct percpu_ref *ref) -{ - struct kioctx *ctx = container_of(ref, struct kioctx, users); - - INIT_SWORK(&ctx->free_swork, free_ioctx_users_work); - swork_queue(&ctx->free_swork); -} - static int ioctx_add_table(struct kioctx *ctx, struct mm_struct *mm) { unsigned i, new_nr;