Signed-off-by: Jens Axboe <axboe@kernel.dk>
        audit_ptrace(task);
 
        retval = -EPERM;
-       if (unlikely(task->flags & PF_KTHREAD))
+       if (unlikely(task->flags & (PF_KTHREAD | PF_IO_WORKER)))
                goto out;
        if (same_thread_group(task, current))
                goto out;
 
                return true;
 
        /* Only allow kernel generated signals to this kthread */
-       if (unlikely((t->flags & PF_KTHREAD) &&
+       if (unlikely((t->flags & (PF_KTHREAD | PF_IO_WORKER)) &&
                     (handler == SIG_KTHREAD_KERNEL) && !force))
                return true;
 
        /*
         * Skip useless siginfo allocation for SIGKILL and kernel threads.
         */
-       if ((sig == SIGKILL) || (t->flags & PF_KTHREAD))
+       if ((sig == SIGKILL) || (t->flags & (PF_KTHREAD | PF_IO_WORKER)))
                goto out_set;
 
        /*