Unverified Commit 09471758 authored by Mike Christie's avatar Mike Christie Committed by Christian Brauner (Microsoft)
Browse files

fork: Add kernel_clone_args flag to ignore signals



Since:

commit 10ab825b ("change kernel threads to ignore signals instead of
blocking them")

kthreads have been ignoring signals by default, and the vhost layer has
never had a need to change that. This patch adds an option flag,
USER_WORKER_SIG_IGN, handled in copy_process() after copy_sighand()
and copy_signals() so vhost_tasks added in the next patches can continue
to ignore singals.

Signed-off-by: default avatarChristian Brauner <brauner@kernel.org>
Signed-off-by: default avatarMike Christie <michael.christie@oracle.com>
Acked-by: default avatarMichael S. Tsirkin <mst@redhat.com>
Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
Signed-off-by: default avatarChristian Brauner (Microsoft) <brauner@kernel.org>
parent 11f3f500
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -29,6 +29,7 @@ struct kernel_clone_args {
	u32 io_thread:1;
	u32 user_worker:1;
	u32 no_files:1;
	u32 ignore_signals:1;
	unsigned long stack;
	unsigned long stack_size;
	unsigned long tls;
+3 −0
Original line number Diff line number Diff line
@@ -2290,6 +2290,9 @@ static __latent_entropy struct task_struct *copy_process(
	if (retval)
		goto bad_fork_cleanup_io;

	if (args->ignore_signals)
		ignore_signals(p);

	stackleak_task_init(p);

	if (pid != &init_struct_pid) {