[GIT PULL] thread fixes
From: Christian Brauner
Date: Thu Nov 21 2019 - 09:31:46 EST
Hi Linus,
This contains a simple fix for the pidfd poll method. In the original patchset
pidfd_poll() was made to return an unsigned int. However, the poll method is
defined to return a __poll_t. While the unsigned int is not a huge deal it's
just nicer to return a __poll_t.
I've decided to send it right before the 5.4 release mainly so that stable
doesn't need to backport it to both 5.4 and 5.3.
The following changes since commit af42d3466bdc8f39806b26f593604fdc54140bcb:
Linux 5.4-rc8 (2019-11-17 14:47:30 -0800)
are available in the Git repository at:
git@xxxxxxxxxxxxxxxxxxx:pub/scm/linux/kernel/git/brauner/linux tags/for-linus-2019-11-21
for you to fetch changes up to 9e77716a75bc6cf54965e5ec069ba7c02b32251c:
fork: fix pidfd_poll()'s return type (2019-11-20 11:48:50 +0100)
/* Testing */
All patches have seen exposure in linux-next and are based on v5.4-rc8.
All pidfd selftests passed.
/* Conflicts */
At the time of creating this PR no merge conflicts were reported from
linux-next.
Please consider pulling these changes from the signed for-linus-2019-11-21 tag.
Thanks!
Christian
----------------------------------------------------------------
for-linus-2019-11-21
----------------------------------------------------------------
Luc Van Oostenryck (1):
fork: fix pidfd_poll()'s return type
kernel/fork.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/kernel/fork.c b/kernel/fork.c
index 55af6931c6ec..13b38794efb5 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
@@ -1708,11 +1708,11 @@ static void pidfd_show_fdinfo(struct seq_file *m, struct file *f)
/*
* Poll support for process exit notification.
*/
-static unsigned int pidfd_poll(struct file *file, struct poll_table_struct *pts)
+static __poll_t pidfd_poll(struct file *file, struct poll_table_struct *pts)
{
struct task_struct *task;
struct pid *pid = file->private_data;
- int poll_flags = 0;
+ __poll_t poll_flags = 0;
poll_wait(file, &pid->wait_pidfd, pts);
@@ -1724,7 +1724,7 @@ static unsigned int pidfd_poll(struct file *file, struct poll_table_struct *pts)
* group, then poll(2) should block, similar to the wait(2) family.
*/
if (!task || (task->exit_state && thread_group_empty(task)))
- poll_flags = POLLIN | POLLRDNORM;
+ poll_flags = EPOLLIN | EPOLLRDNORM;
rcu_read_unlock();
return poll_flags;