Re: decruft the early init / initrd / initramfs code v2

From: Guoqing Jiang
Date: Thu Jul 16 2020 - 11:57:19 EST


On 7/15/20 8:51 AM, Christoph Hellwig wrote:
On Tue, Jul 14, 2020 at 12:34:45PM -0700, Linus Torvalds wrote:
On Tue, Jul 14, 2020 at 12:06 PM Christoph Hellwig <hch@xxxxxx> wrote:
this series starts to move the early init code away from requiring
KERNEL_DS to be implicitly set during early startup. It does so by
first removing legacy unused cruft, and the switches away the code
from struct file based APIs to our more usual in-kernel APIs.
Looks good to me, with the added note on the utimes cruft too as a
further cleanup (separate patch).

So you can add my acked-by.

I _would_ like the md parts to get a few more acks. I see the one from
Song Liu, anybody else in md land willing to go through those patches?
They were the bulk of it, and the least obvious to me because I don't
know that code at all?
Song is the maintainer. Neil is the only person I could think of
that also knows the old md code pretty well. Guoqing has contributed
a lot lately, but the code touched here is rather historic (and not
used very much at all these days as people use modular md and initramfÑ
based detection).

Hi Christoph,

I just cloned the tree, seems there is compile issue that you need to resolve.

hch-misc$ make -j8
 DESCEND objtool
 CALL scripts/atomic/check-atomics.sh
 CALL scripts/checksyscalls.sh
 CHK include/generated/compile.h
 CC drivers/md/md.o
 CC drivers/md/md-bitmap.o
 CC drivers/md/md-autodetect.o
 AR drivers/perf/built-in.a
 CC drivers/md/dm.o
 AR drivers/hwtracing/intel_th/built-in.a
 CC drivers/nvmem/core.o
drivers/md/md.c:7809:45: error: static declaration of âmd_fopsâ follows non-static declaration
Âstatic const struct block_device_operations md_fops =
ÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ ^~~~~~~
drivers/md/md.c:329:38: note: previous declaration of âmd_fopsâ was here
Âconst struct block_device_operations md_fops;
ÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ ^~~~~~~
scripts/Makefile.build:280: recipe for target 'drivers/md/md.o' failed
make[2]: *** [drivers/md/md.o] Error 1
make[2]: *** Waiting for unfinished jobs....

And for the changes of md, feel free to add my Acked-by if it could help.

Thanks,
Guoqing