Re: [PATCH v1 07/11] fs/proc/vmcore: introduce PROC_VMCORE_DEVICE_RAM to detect device RAM ranges in 2nd kernel

Baoquan He
2024-11-22T07:52:09Z

On 11/21/24 at 08:47pm, David Hildenbrand wrote:
> > >
> > > That would work, but I don't completely like it.
> > >
> > > (a) I want s390x to select NEED_PROC_VMCORE_DEVICE_RAM instead. Staring at a
> > > bunch of similar cases (git grep "config NEED" | grep Kconfig, git grep
> > > "config ARCH_WANTS" | grep Kconfig), "select" is the common way to do it.
> > >
> > > So unless there is a pretty good reason, I'll keep
> > > NEED_PROC_VMCORE_DEVICE_RAM as is.
> >
> > That's easy to satify, see below:
>
> Yes, this is mostly what I have right now, except
>
> >
> > ============simple version=====
> > fs/proc/Kconfig:
> > config NEED_PROC_VMCORE_DEVICE_RAM
> > def n
>
> using "bool" here like other code. (I assume you meant "def_bool n", "bool"
> seems to achieve the same thing)

Yes, you are right. I didn't check it carefully.

>
> >
......
> > ===================
> > fs/proc/Kconfig:
> > config PROVIDE_PROC_VMCORE_DEVICE_RAM
> > def_bool n
> >
> > config NEED_PROC_VMCORE_DEVICE_RAM
> > def_bool n
> >
> > config PROC_VMCORE_DEVICE_RAM
> > def_bool y
> > depends on PROC_VMCORE
> > depends on NEED_PROC_VMCORE_DEVICE_RAM
> > depends on PROVIDE_PROC_VMCORE_DEVICE_RAM
> >
> > drivers/virtio/Kconfig:
> > config VIRTIO_MEM
> > select PROVIDE_PROC_VMCORE_DEVICE_RAM if PROC_VMCORE
> > ~~~~~~~~~~~~~~
> >
> > arch/s390/Kconfig:
> > config S390
> > select NEED_PROC_VMCORE_DEVICE_RAM if PROC_VMCORE
> > ~~~~~~~~~~~~~~
> > ========================
> >
> > One last thing I haven't got well, If PROC_VMCORE_DEVICE_RAM has had
> > dependency on PROC_VMCORE, can we take off the ' if PROC_VMCORE' when
> > select PROVIDE_PROC_VMCORE_DEVICE_RAM and NEED_PROC_VMCORE_DEVICE_RAM?
>
> We could; it would mean that in a .config file you would end up with
> "NEED_PROC_VMCORE_DEVICE_RAM=y" with "#PROC_VMCORE" and no notion of
> "PROC_VMCORE_DEVICE_RAM".

Fair enough. I didn't think of this. Then keeping it is obvisouly
better. Thanks.

>
> I don't particularly like that -- needing something that apparently does not
> exist. Not sure if there is a best practice here, staring at some examples I
> don't seem to find a consistent rule. I can just drop it, not the end of the
> world.
>
>
> Did you get to look at the other code changes in this patch set? Your
> feedback would be highly appreciated!

Will try. While I may not have valuable input about virtio-mem code.