2024-05-20 09:10:22

by Fedor Pchelkin

[permalink] [raw]
Subject: [PATCH 1/2] signalfd: fix error return code

If anon_inode_getfile() fails, return appropriate error code. This looks
like a single typo: the similar code changes in timerfd and userfaultfd
are okay.

Found by Linux Verification Center (linuxtesting.org).

Fixes: fbe38120eb1d ("signalfd: convert to ->read_iter()")
Signed-off-by: Fedor Pchelkin <[email protected]>
---
fs/signalfd.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/signalfd.c b/fs/signalfd.c
index 4a5614442dbf..65fe5eed0be4 100644
--- a/fs/signalfd.c
+++ b/fs/signalfd.c
@@ -282,7 +282,7 @@ static int do_signalfd4(int ufd, sigset_t *mask, int flags)
if (IS_ERR(file)) {
put_unused_fd(ufd);
kfree(ctx);
- return ufd;
+ return PTR_ERR(file);
}
file->f_mode |= FMODE_NOWAIT;

--
2.39.2



2024-05-20 09:10:32

by Fedor Pchelkin

[permalink] [raw]
Subject: [PATCH 2/2] signalfd: drop an obsolete comment

Commit fbe38120eb1d ("signalfd: convert to ->read_iter()") removed the
call to anon_inode_getfd() by splitting fd setup into two parts. Drop the
comment referencing the internal details of that function.

Signed-off-by: Fedor Pchelkin <[email protected]>
---
fs/signalfd.c | 4 ----
1 file changed, 4 deletions(-)

diff --git a/fs/signalfd.c b/fs/signalfd.c
index 65fe5eed0be4..ec7b2da2477a 100644
--- a/fs/signalfd.c
+++ b/fs/signalfd.c
@@ -286,10 +286,6 @@ static int do_signalfd4(int ufd, sigset_t *mask, int flags)
}
file->f_mode |= FMODE_NOWAIT;

- /*
- * When we call this, the initialization must be complete, since
- * anon_inode_getfd() will install the fd.
- */
fd_install(ufd, file);
} else {
struct fd f = fdget(ufd);
--
2.39.2


2024-05-20 12:40:52

by Jens Axboe

[permalink] [raw]
Subject: Re: [PATCH 1/2] signalfd: fix error return code

On 5/20/24 3:08 AM, Fedor Pchelkin wrote:
> If anon_inode_getfile() fails, return appropriate error code. This looks
> like a single typo: the similar code changes in timerfd and userfaultfd
> are okay.

Oops yes, that's my bad.

Reviewed-by: Jens Axboe <[email protected]>

--
Jens Axboe


2024-05-20 12:52:22

by Jens Axboe

[permalink] [raw]
Subject: Re: [PATCH 2/2] signalfd: drop an obsolete comment

On 5/20/24 3:08 AM, Fedor Pchelkin wrote:
> Commit fbe38120eb1d ("signalfd: convert to ->read_iter()") removed the
> call to anon_inode_getfd() by splitting fd setup into two parts. Drop the
> comment referencing the internal details of that function.

Reviewed-by: Jens Axboe <[email protected]>

--
Jens Axboe



2024-05-21 14:24:58

by Christian Brauner

[permalink] [raw]
Subject: Re: [PATCH 1/2] signalfd: fix error return code

On Mon, 20 May 2024 12:08:18 +0300, Fedor Pchelkin wrote:
> If anon_inode_getfile() fails, return appropriate error code. This looks
> like a single typo: the similar code changes in timerfd and userfaultfd
> are okay.
>
> Found by Linux Verification Center (linuxtesting.org).
>
>
> [...]

Applied to the vfs.fixes branch of the vfs/vfs.git tree.
Patches in the vfs.fixes branch should appear in linux-next soon.

Please report any outstanding bugs that were missed during review in a
new review to the original patch series allowing us to drop it.

It's encouraged to provide Acked-bys and Reviewed-bys even though the
patch has now been applied. If possible patch trailers will be updated.

Note that commit hashes shown below are subject to change due to rebase,
trailer updates or similar. If in doubt, please check the listed branch.

tree: https://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs.git
branch: vfs.fixes

[1/2] signalfd: fix error return code
https://git.kernel.org/vfs/vfs/c/e8df0c67191f
[2/2] signalfd: drop an obsolete comment
https://git.kernel.org/vfs/vfs/c/0dda1466f355