[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAJqdLrotSo_3gdq-eQhiBiA6Y76DV_Vi9x1sTZNjz97PZc=6PA@mail.gmail.com>
Date: Fri, 9 May 2025 18:36:11 +0200
From: Alexander Mikhalitsyn <alexander@...alicyn.com>
To: Christian Brauner <brauner@...nel.org>
Cc: linux-fsdevel@...r.kernel.org, Jann Horn <jannh@...gle.com>,
Daniel Borkmann <daniel@...earbox.net>, Kuniyuki Iwashima <kuniyu@...zon.com>,
Eric Dumazet <edumazet@...gle.com>, Oleg Nesterov <oleg@...hat.com>,
"David S. Miller" <davem@...emloft.net>, Alexander Viro <viro@...iv.linux.org.uk>,
Daan De Meyer <daan.j.demeyer@...il.com>, David Rheinsberg <david@...dahead.eu>,
Jakub Kicinski <kuba@...nel.org>, Jan Kara <jack@...e.cz>,
Lennart Poettering <lennart@...ttering.net>, Luca Boccassi <bluca@...ian.org>, Mike Yuan <me@...dnzj.com>,
Paolo Abeni <pabeni@...hat.com>, Simon Horman <horms@...nel.org>,
Zbigniew Jędrzejewski-Szmek <zbyszek@...waw.pl>,
linux-kernel@...r.kernel.org, netdev@...r.kernel.org,
linux-security-module@...r.kernel.org
Subject: Re: [PATCH v5 3/9] coredump: reflow dump helpers a little
Am Fr., 9. Mai 2025 um 12:26 Uhr schrieb Christian Brauner <brauner@...nel.org>:
>
> They look rather messy right now.
>
> Signed-off-by: Christian Brauner <brauner@...nel.org>
Reviewed-by: Alexander Mikhalitsyn <aleksandr.mikhalitsyn@...onical.com>
> ---
> fs/coredump.c | 22 +++++++++++-----------
> 1 file changed, 11 insertions(+), 11 deletions(-)
>
> diff --git a/fs/coredump.c b/fs/coredump.c
> index 41491dbfafdf..b2eda7b176e4 100644
> --- a/fs/coredump.c
> +++ b/fs/coredump.c
> @@ -867,10 +867,9 @@ static int __dump_emit(struct coredump_params *cprm, const void *addr, int nr)
> struct file *file = cprm->file;
> loff_t pos = file->f_pos;
> ssize_t n;
> +
> if (cprm->written + nr > cprm->limit)
> return 0;
> -
> -
> if (dump_interrupted())
> return 0;
> n = __kernel_write(file, addr, nr, &pos);
> @@ -887,20 +886,21 @@ static int __dump_skip(struct coredump_params *cprm, size_t nr)
> {
> static char zeroes[PAGE_SIZE];
> struct file *file = cprm->file;
> +
> if (file->f_mode & FMODE_LSEEK) {
> - if (dump_interrupted() ||
> - vfs_llseek(file, nr, SEEK_CUR) < 0)
> + if (dump_interrupted() || vfs_llseek(file, nr, SEEK_CUR) < 0)
> return 0;
> cprm->pos += nr;
> return 1;
> - } else {
> - while (nr > PAGE_SIZE) {
> - if (!__dump_emit(cprm, zeroes, PAGE_SIZE))
> - return 0;
> - nr -= PAGE_SIZE;
> - }
> - return __dump_emit(cprm, zeroes, nr);
> }
> +
> + while (nr > PAGE_SIZE) {
> + if (!__dump_emit(cprm, zeroes, PAGE_SIZE))
> + return 0;
> + nr -= PAGE_SIZE;
> + }
> +
> + return __dump_emit(cprm, zeroes, nr);
> }
>
> int dump_emit(struct coredump_params *cprm, const void *addr, int nr)
>
> --
> 2.47.2
>
Powered by blists - more mailing lists