Re: [PATCH 5.18 112/181] vmcore: convert copy_oldmem_page() to take an iov_iter

From: Greg Kroah-Hartman
Date: Tue Jun 28 2022 - 03:09:18 EST


On Mon, Jun 27, 2022 at 06:27:12PM +0200, Heiko Carstens wrote:
> On Mon, Jun 27, 2022 at 01:21:25PM +0200, Greg Kroah-Hartman wrote:
> > From: Matthew Wilcox (Oracle) <willy@xxxxxxxxxxxxx>
> >
> > [ Upstream commit 5d8de293c224896a4da99763fce4f9794308caf4 ]
> >
> > Patch series "Convert vmcore to use an iov_iter", v5.
> >
> > For some reason several people have been sending bad patches to fix
> > compiler warnings in vmcore recently. Here's how it should be done.
> > Compile-tested only on x86. As noted in the first patch, s390 should take
> > this conversion a bit further, but I'm not inclined to do that work
> > myself.
> >
> > This patch (of 3):
> >
> > Instead of passing in a 'buf' and 'userbuf' argument, pass in an iov_iter.
> > s390 needs more work to pass the iov_iter down further, or refactor, but
> > I'd be more comfortable if someone who can test on s390 did that work.
> >
> > It's more convenient to convert the whole of read_from_oldmem() to take an
> > iov_iter at the same time, so rename it to read_from_oldmem_iter() and add
> > a temporary read_from_oldmem() wrapper that creates an iov_iter.
> >
> > Link: https://lkml.kernel.org/r/20220408090636.560886-1-bhe@xxxxxxxxxx
> > Link: https://lkml.kernel.org/r/20220408090636.560886-2-bhe@xxxxxxxxxx
> > Signed-off-by: Matthew Wilcox (Oracle) <willy@xxxxxxxxxxxxx>
> > Signed-off-by: Baoquan He <bhe@xxxxxxxxxx>
> > Reviewed-by: Christoph Hellwig <hch@xxxxxx>
> > Cc: Heiko Carstens <hca@xxxxxxxxxxxxx>
> > Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
> > Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>
> > ---
> > arch/arm/kernel/crash_dump.c | 27 +++-------------
> > arch/arm64/kernel/crash_dump.c | 29 +++--------------
> > arch/ia64/kernel/crash_dump.c | 32 +++----------------
> > arch/mips/kernel/crash_dump.c | 27 +++-------------
> > arch/powerpc/kernel/crash_dump.c | 35 +++------------------
> > arch/riscv/kernel/crash_dump.c | 26 +++------------
> > arch/s390/kernel/crash_dump.c | 13 +++++---
> > arch/sh/kernel/crash_dump.c | 29 +++--------------
> > arch/x86/kernel/crash_dump_32.c | 29 +++--------------
> > arch/x86/kernel/crash_dump_64.c | 41 +++++++-----------------
> > fs/proc/vmcore.c | 54 ++++++++++++++++++++------------
> > include/linux/crash_dump.h | 9 +++---
> > 12 files changed, 91 insertions(+), 260 deletions(-)
>
> This one breaks s390. You would also need to apply the following two commits:
>
> cc02e6e21aa5 ("s390/crash: add missing iterator advance in copy_oldmem_page()")
> af2debd58bd7 ("s390/crash: make copy_oldmem_page() return number of bytes copied")

Both of them are also in the 5.18-rc queue here, right?

thanks,

greg k-h