[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20221130034059.GA2246@bytedance>
Date: Tue, 29 Nov 2022 19:40:59 -0800
From: Peilin Ye <yepeilin.cs@...il.com>
To: Al Viro <viro@...iv.linux.org.uk>
Cc: Peilin Ye <peilin.ye@...edance.com>,
Cong Wang <cong.wang@...edance.com>,
linux-fsdevel@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2] coredump: Use vmsplice_to_pipe() for pipes in
dump_emit_page()
On Sat, Nov 19, 2022 at 04:46:17AM +0000, Al Viro wrote:
> On Mon, Oct 31, 2022 at 02:03:49PM -0700, Peilin Ye wrote:
>
> > + n = vmsplice_to_pipe(file, &iter, 0);
> > + if (n == -EBADF)
> > + n = __kernel_write_iter(cprm->file, &iter, &pos);
>
> Yuck. If anything, I would rather put a flag into coredump_params
> and check it instead; this check for -EBADF is both unidiomatic and
> brittle. Suppose someday somebody looks at vmsplice(2) and
> decides that it would make sense to lift the "is it a pipe" check
> into e.g. vmsplice_type(). There's no obvious reasons not to,
> unless one happens to know that coredump relies upon that check done
> in vmsplice_to_pipe(). It's asking for trouble several years down
> the road.
>
> Make it explicit and independent from details of error checking
> in vmsplice(2).
Thanks for the review! I was a bit hesitant about introducing a new
field to coredump_params for this optimization. Will do it in v3.
Peilin Ye
Powered by blists - more mailing lists