Re: [PATCH] s390/kvm: avoid hypfs error message

Christian Borntraeger
2022-06-20T09:29:52Z

Am 20.06.22 um 11:25 schrieb Juergen Gross:
> On 20.06.22 11:19, Heiko Carstens wrote:
>> On Mon, Jun 20, 2022 at 09:18:37AM +0200, Christian Borntraeger wrote:
>>> Am 20.06.22 um 08:03 schrieb Juergen Gross:
>>>> Ping?
>>>>
>>>> On 07.06.22 14:33, Juergen Gross wrote:
>>>>> When booting under KVM the following error messages are issued:
>>>>>
>>>>> hypfs.7f5705: The hardware system does not support hypfs
>>>>> hypfs.7a79f0: Initialization of hypfs failed with rc=-61
>>>>>
>>>>> While being documented, they can easily be avoided by bailing out of
>>>>> hypfs_init() early in case of running as a KVM guest.
>>>>>
>>>>> Signed-off-by: Juergen Gross <jgross@suse.com>
>>>>> ---
>>>>>    arch/s390/hypfs/inode.c | 3 +++
>>>>>    1 file changed, 3 insertions(+)
>>>>>
>>>>> diff --git a/arch/s390/hypfs/inode.c b/arch/s390/hypfs/inode.c
>>>>> index 5c97f48cea91..bdf078f3c641 100644
>>>>> --- a/arch/s390/hypfs/inode.c
>>>>> +++ b/arch/s390/hypfs/inode.c
>>>>> @@ -464,6 +464,9 @@ static int __init hypfs_init(void)
>>>>>    {
>>>>>        int rc;
>>>>> +    if (MACHINE_IS_KVM)
>>>>> +        return -ENODATA;
>>>>> +
>>>>>        hypfs_dbfs_init();
>>>>>        if (hypfs_diag_init()) {
>>>
>>> In case KVM implements hypfs this check would then be wrong.
>>> Question to people on CC/TO.
>>> Would it be an option to still check with KVM but avoid the error message.
>>> So basically changing hypfs_diag_init and fail_dbfs_exit to check
>>> for KVM on error?
>>> Or is this worse?
>>
>> I'd say just move the pr_err("Initialization of hypfs failed with...")
>> one label above to fail_hypfs_diag_exit. Then we still get the message
>> that the hardware system doesn't support hypfs, which seems to be
>> wanted, and the error message only appears for an error.
>>
>> Even though I personally dislike printing everything to the console
>> this seems to be what is/was preferred. So let's keep that.
>
> Works for me.
>
> Would you be fine with additionally:
>
> @@ __init int hypfs_diag_init(void)
>          int rc;
>
>          if (diag204_probe()) {
> -                pr_err("The hardware system does not support hypfs\n");
> +                pr_info("The hardware system does not support hypfs\n");
>                  return -ENODATA;
>          }
>
> As this not really an error.

Yes, makes sense.