2021-04-28 08:26:52

by Thomas Huth

[permalink] [raw]
Subject: [PATCH] arch/s390/configs: Change CONFIG_VIRTIO_CONSOLE to "m"

In former times, the virtio-console code had to be compiled into
the kernel since the old guest virtio transport had some hard de-
pendencies. But since the old virtio transport has been removed in
commit 7fb2b2d51244 ("s390/virtio: remove the old KVM virtio transport"),
we do not have this limitation anymore.
Commit bb533ec8bacd ("s390/config: do not select VIRTIO_CONSOLE via
Kconfig") then also lifted the hard setting in the Kconfig system, so
we can finally switch the CONFIG_VIRTIO_CONSOLE knob to compile this
driver as a module now, making it more flexible for the user to only
load it if it is really required.

Signed-off-by: Thomas Huth <[email protected]>
---
arch/s390/configs/debug_defconfig | 2 +-
arch/s390/configs/defconfig | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/s390/configs/debug_defconfig b/arch/s390/configs/debug_defconfig
index dc0b69058ac4..04ce0edd0b31 100644
--- a/arch/s390/configs/debug_defconfig
+++ b/arch/s390/configs/debug_defconfig
@@ -548,7 +548,7 @@ CONFIG_INPUT_EVDEV=y
# CONFIG_INPUT_MOUSE is not set
# CONFIG_SERIO is not set
CONFIG_LEGACY_PTY_COUNT=0
-CONFIG_VIRTIO_CONSOLE=y
+CONFIG_VIRTIO_CONSOLE=m
CONFIG_HW_RANDOM_VIRTIO=m
CONFIG_RAW_DRIVER=m
CONFIG_HANGCHECK_TIMER=m
diff --git a/arch/s390/configs/defconfig b/arch/s390/configs/defconfig
index 320379da96d9..e448711eff8d 100644
--- a/arch/s390/configs/defconfig
+++ b/arch/s390/configs/defconfig
@@ -540,7 +540,7 @@ CONFIG_INPUT_EVDEV=y
# CONFIG_INPUT_MOUSE is not set
# CONFIG_SERIO is not set
CONFIG_LEGACY_PTY_COUNT=0
-CONFIG_VIRTIO_CONSOLE=y
+CONFIG_VIRTIO_CONSOLE=m
CONFIG_HW_RANDOM_VIRTIO=m
CONFIG_RAW_DRIVER=m
CONFIG_HANGCHECK_TIMER=m
--
2.27.0


2021-04-28 08:34:11

by Christian Borntraeger

[permalink] [raw]
Subject: Re: [PATCH] arch/s390/configs: Change CONFIG_VIRTIO_CONSOLE to "m"

On 28.04.21 10:24, Thomas Huth wrote:
> In former times, the virtio-console code had to be compiled into
> the kernel since the old guest virtio transport had some hard de-
> pendencies. But since the old virtio transport has been removed in
> commit 7fb2b2d51244 ("s390/virtio: remove the old KVM virtio transport"),
> we do not have this limitation anymore.
> Commit bb533ec8bacd ("s390/config: do not select VIRTIO_CONSOLE via
> Kconfig") then also lifted the hard setting in the Kconfig system, so
> we can finally switch the CONFIG_VIRTIO_CONSOLE knob to compile this
> driver as a module now, making it more flexible for the user to only
> load it if it is really required.

Isnt that a distro specific decision? I would be perfectly fine to have
this change in Fedora, Redhat and co. Not so sure about defconfig.
We often use the defconfig in our CI and development things to have a
kernel config that boots up fine, even without a ramdisk. I agree that
virtio console is no longer really the most important console but does
it really hurt? Is any distro using the defconfig unmodified?

>
> Signed-off-by: Thomas Huth <[email protected]>
> ---
> arch/s390/configs/debug_defconfig | 2 +-
> arch/s390/configs/defconfig | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/arch/s390/configs/debug_defconfig b/arch/s390/configs/debug_defconfig
> index dc0b69058ac4..04ce0edd0b31 100644
> --- a/arch/s390/configs/debug_defconfig
> +++ b/arch/s390/configs/debug_defconfig
> @@ -548,7 +548,7 @@ CONFIG_INPUT_EVDEV=y
> # CONFIG_INPUT_MOUSE is not set
> # CONFIG_SERIO is not set
> CONFIG_LEGACY_PTY_COUNT=0
> -CONFIG_VIRTIO_CONSOLE=y
> +CONFIG_VIRTIO_CONSOLE=m
> CONFIG_HW_RANDOM_VIRTIO=m
> CONFIG_RAW_DRIVER=m
> CONFIG_HANGCHECK_TIMER=m
> diff --git a/arch/s390/configs/defconfig b/arch/s390/configs/defconfig
> index 320379da96d9..e448711eff8d 100644
> --- a/arch/s390/configs/defconfig
> +++ b/arch/s390/configs/defconfig
> @@ -540,7 +540,7 @@ CONFIG_INPUT_EVDEV=y
> # CONFIG_INPUT_MOUSE is not set
> # CONFIG_SERIO is not set
> CONFIG_LEGACY_PTY_COUNT=0
> -CONFIG_VIRTIO_CONSOLE=y
> +CONFIG_VIRTIO_CONSOLE=m
> CONFIG_HW_RANDOM_VIRTIO=m
> CONFIG_RAW_DRIVER=m
> CONFIG_HANGCHECK_TIMER=m
>

2021-04-28 09:09:44

by Cornelia Huck

[permalink] [raw]
Subject: Re: [PATCH] arch/s390/configs: Change CONFIG_VIRTIO_CONSOLE to "m"

On Wed, 28 Apr 2021 10:31:54 +0200
Christian Borntraeger <[email protected]> wrote:

> On 28.04.21 10:24, Thomas Huth wrote:
> > In former times, the virtio-console code had to be compiled into
> > the kernel since the old guest virtio transport had some hard de-
> > pendencies. But since the old virtio transport has been removed in
> > commit 7fb2b2d51244 ("s390/virtio: remove the old KVM virtio transport"),
> > we do not have this limitation anymore.
> > Commit bb533ec8bacd ("s390/config: do not select VIRTIO_CONSOLE via
> > Kconfig") then also lifted the hard setting in the Kconfig system, so
> > we can finally switch the CONFIG_VIRTIO_CONSOLE knob to compile this
> > driver as a module now, making it more flexible for the user to only
> > load it if it is really required.
>
> Isnt that a distro specific decision? I would be perfectly fine to have
> this change in Fedora, Redhat and co. Not so sure about defconfig.
> We often use the defconfig in our CI and development things to have a
> kernel config that boots up fine, even without a ramdisk. I agree that
> virtio console is no longer really the most important console but does
> it really hurt? Is any distro using the defconfig unmodified?

Having a value in the defconfig that will be sensible for most users
sounds good to me, independent of what different distros choose to do.
(Or am I misunderstanding the purpose of the defconfig?)

For booting without a ramdisk, I see that virtio-blk and virtio-input
are y, while other virtio drivers are m. That should be sufficient,
shouldn't it?

2021-04-28 09:33:45

by Thomas Huth

[permalink] [raw]
Subject: Re: [PATCH] arch/s390/configs: Change CONFIG_VIRTIO_CONSOLE to "m"

On 28/04/2021 10.31, Christian Borntraeger wrote:
> On 28.04.21 10:24, Thomas Huth wrote:
>> In former times, the virtio-console code had to be compiled into
>> the kernel since the old guest virtio transport had some hard de-
>> pendencies. But since the old virtio transport has been removed in
>> commit 7fb2b2d51244 ("s390/virtio: remove the old KVM virtio transport"),
>> we do not have this limitation anymore.
>> Commit bb533ec8bacd ("s390/config: do not select VIRTIO_CONSOLE via
>> Kconfig") then also lifted the hard setting in the Kconfig system, so
>> we can finally switch the CONFIG_VIRTIO_CONSOLE knob to compile this
>> driver as a module now, making it more flexible for the user to only
>> load it if it is really required.
>
> Isnt that a distro specific decision? I would be perfectly fine to have
> this change in Fedora, Redhat and co.

Sure, I'll try to get it changed there, too.

> Not so sure about defconfig.
> We often use the defconfig in our CI and development things to have a
> kernel config that boots up fine, even without a ramdisk. I agree that
> virtio console is no longer really the most important console but does
> it really hurt?

Well, it's about a default configuration that should be fine for most users.
I don't think that anybody really uses virtio-console in a ramdisk already
... or are you really doing that in your CI? If so, then please disregard my
patch.

Otherwise, I think compiling this as a module is the better choice, since
most people won't use this at all during run-time, or maybe just use it for
thing like communicating with the QEMU guest agent, but this is then
certainly not required during boot up yet and thus the "m" should be fine, too.

> Is any distro using the defconfig unmodified?

Most likely don't. But it's a template for new configs, so we should use
good defaults here.

Thomas

2021-04-28 21:12:56

by Christian Borntraeger

[permalink] [raw]
Subject: Re: [PATCH] arch/s390/configs: Change CONFIG_VIRTIO_CONSOLE to "m"



On 28.04.21 11:30, Thomas Huth wrote:
> On 28/04/2021 10.31, Christian Borntraeger wrote:
>> On 28.04.21 10:24, Thomas Huth wrote:
>>> In former times, the virtio-console code had to be compiled into
>>> the kernel since the old guest virtio transport had some hard de-
>>> pendencies. But since the old virtio transport has been removed in
>>> commit 7fb2b2d51244 ("s390/virtio: remove the old KVM virtio transport"),
>>> we do not have this limitation anymore.
>>> Commit bb533ec8bacd ("s390/config: do not select VIRTIO_CONSOLE via
>>> Kconfig") then also lifted the hard setting in the Kconfig system, so
>>> we can finally switch the CONFIG_VIRTIO_CONSOLE knob to compile this
>>> driver as a module now, making it more flexible for the user to only
>>> load it if it is really required.
>>
>> Isnt that a distro specific decision? I would be perfectly fine to have
>> this change in Fedora, Redhat and co.
>
> Sure, I'll try to get it changed there, too.
>
>> Not so sure about defconfig.
>> We often use the defconfig in our CI and development things to have a
>> kernel config that boots up fine, even without a ramdisk. I agree that
>> virtio console is no longer really the most important console but does
>> it really hurt?
>
> Well, it's about a default configuration that should be fine for most users. I don't think that anybody really uses virtio-console in a ramdisk already ... or are you really doing that in your CI? If so, then please disregard my patch.

I think anybody uses the sclp console nowadays. The only question is, do
we care about manual configs with virtio-console?

2021-04-28 21:33:06

by Heiko Carstens

[permalink] [raw]
Subject: Re: [PATCH] arch/s390/configs: Change CONFIG_VIRTIO_CONSOLE to "m"

On Wed, Apr 28, 2021 at 11:03:22PM +0200, Christian Borntraeger wrote:
> On 28.04.21 11:30, Thomas Huth wrote:
> > On 28/04/2021 10.31, Christian Borntraeger wrote:
> > > On 28.04.21 10:24, Thomas Huth wrote:
> > > > In former times, the virtio-console code had to be compiled into
> > > > the kernel since the old guest virtio transport had some hard de-
> > > > pendencies. But since the old virtio transport has been removed in
> > > > commit 7fb2b2d51244 ("s390/virtio: remove the old KVM virtio transport"),
> > > > we do not have this limitation anymore.
> > > > Commit bb533ec8bacd ("s390/config: do not select VIRTIO_CONSOLE via
> > > > Kconfig") then also lifted the hard setting in the Kconfig system, so
> > > > we can finally switch the CONFIG_VIRTIO_CONSOLE knob to compile this
> > > > driver as a module now, making it more flexible for the user to only
> > > > load it if it is really required.
> > >
> > > Isnt that a distro specific decision? I would be perfectly fine to have
> > > this change in Fedora, Redhat and co.
> >
> > Sure, I'll try to get it changed there, too.
> >
> > > Not so sure about defconfig.
> > > We often use the defconfig in our CI and development things to have a
> > > kernel config that boots up fine, even without a ramdisk. I agree that
> > > virtio console is no longer really the most important console but does
> > > it really hurt?
> > Well, it's about a default configuration that should be fine for
> > most users. I don't think that anybody really uses virtio-console
> > in a ramdisk already ... or are you really doing that in your CI?
> > If so, then please disregard my patch.
>
> I think anybody uses the sclp console nowadays. The only question is, do
> we care about manual configs with virtio-console?

Not really. If it breaks someone's workflow we will know for sure
pretty soon. Therefore let's just change this.

2021-04-29 06:48:49

by Christian Borntraeger

[permalink] [raw]
Subject: Re: [PATCH] arch/s390/configs: Change CONFIG_VIRTIO_CONSOLE to "m"

On 28.04.21 10:24, Thomas Huth wrote:
> In former times, the virtio-console code had to be compiled into
> the kernel since the old guest virtio transport had some hard de-
> pendencies. But since the old virtio transport has been removed in
> commit 7fb2b2d51244 ("s390/virtio: remove the old KVM virtio transport"),
> we do not have this limitation anymore.
> Commit bb533ec8bacd ("s390/config: do not select VIRTIO_CONSOLE via
> Kconfig") then also lifted the hard setting in the Kconfig system, so
> we can finally switch the CONFIG_VIRTIO_CONSOLE knob to compile this
> driver as a module now, making it more flexible for the user to only
> load it if it is really required.
>
> Signed-off-by: Thomas Huth <[email protected]>

applied, thanks.
> ---
> arch/s390/configs/debug_defconfig | 2 +-
> arch/s390/configs/defconfig | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/arch/s390/configs/debug_defconfig b/arch/s390/configs/debug_defconfig
> index dc0b69058ac4..04ce0edd0b31 100644
> --- a/arch/s390/configs/debug_defconfig
> +++ b/arch/s390/configs/debug_defconfig
> @@ -548,7 +548,7 @@ CONFIG_INPUT_EVDEV=y
> # CONFIG_INPUT_MOUSE is not set
> # CONFIG_SERIO is not set
> CONFIG_LEGACY_PTY_COUNT=0
> -CONFIG_VIRTIO_CONSOLE=y
> +CONFIG_VIRTIO_CONSOLE=m
> CONFIG_HW_RANDOM_VIRTIO=m
> CONFIG_RAW_DRIVER=m
> CONFIG_HANGCHECK_TIMER=m
> diff --git a/arch/s390/configs/defconfig b/arch/s390/configs/defconfig
> index 320379da96d9..e448711eff8d 100644
> --- a/arch/s390/configs/defconfig
> +++ b/arch/s390/configs/defconfig
> @@ -540,7 +540,7 @@ CONFIG_INPUT_EVDEV=y
> # CONFIG_INPUT_MOUSE is not set
> # CONFIG_SERIO is not set
> CONFIG_LEGACY_PTY_COUNT=0
> -CONFIG_VIRTIO_CONSOLE=y
> +CONFIG_VIRTIO_CONSOLE=m
> CONFIG_HW_RANDOM_VIRTIO=m
> CONFIG_RAW_DRIVER=m
> CONFIG_HANGCHECK_TIMER=m
>