* [PATCH v3] kvm: replace fprintf with error_report/printf() in kvm_init()
@ 2024-08-09 6:49 Ani Sinha
2024-08-09 8:35 ` Philippe Mathieu-Daudé
0 siblings, 1 reply; 9+ messages in thread
From: Ani Sinha @ 2024-08-09 6:49 UTC (permalink / raw)
To: Paolo Bonzini; +Cc: Ani Sinha, qemu-trivial, zhao1.liu, kvm, qemu-devel
error_report() is more appropriate for error situations. Replace fprintf with
error_report. Cosmetic. No functional change.
CC: qemu-trivial@nongnu.org
CC: zhao1.liu@intel.com
Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
Signed-off-by: Ani Sinha <anisinha@redhat.com>
---
accel/kvm/kvm-all.c | 40 ++++++++++++++++++----------------------
1 file changed, 18 insertions(+), 22 deletions(-)
changelog:
v2: fix a bug.
v3: replace one instance of error_report() with error_printf(). added tags.
diff --git a/accel/kvm/kvm-all.c b/accel/kvm/kvm-all.c
index 75d11a07b2..5bc9d35b61 100644
--- a/accel/kvm/kvm-all.c
+++ b/accel/kvm/kvm-all.c
@@ -2427,7 +2427,7 @@ static int kvm_init(MachineState *ms)
QLIST_INIT(&s->kvm_parked_vcpus);
s->fd = qemu_open_old(s->device ?: "/dev/kvm", O_RDWR);
if (s->fd == -1) {
- fprintf(stderr, "Could not access KVM kernel module: %m\n");
+ error_report("Could not access KVM kernel module: %m");
ret = -errno;
goto err;
}
@@ -2437,13 +2437,13 @@ static int kvm_init(MachineState *ms)
if (ret >= 0) {
ret = -EINVAL;
}
- fprintf(stderr, "kvm version too old\n");
+ error_report("kvm version too old");
goto err;
}
if (ret > KVM_API_VERSION) {
ret = -EINVAL;
- fprintf(stderr, "kvm version not supported\n");
+ error_report("kvm version not supported");
goto err;
}
@@ -2488,26 +2488,22 @@ static int kvm_init(MachineState *ms)
} while (ret == -EINTR);
if (ret < 0) {
- fprintf(stderr, "ioctl(KVM_CREATE_VM) failed: %d %s\n", -ret,
- strerror(-ret));
+ error_report("ioctl(KVM_CREATE_VM) failed: %d %s", -ret,
+ strerror(-ret));
#ifdef TARGET_S390X
if (ret == -EINVAL) {
- fprintf(stderr,
- "Host kernel setup problem detected. Please verify:\n");
- fprintf(stderr, "- for kernels supporting the switch_amode or"
- " user_mode parameters, whether\n");
- fprintf(stderr,
- " user space is running in primary address space\n");
- fprintf(stderr,
- "- for kernels supporting the vm.allocate_pgste sysctl, "
- "whether it is enabled\n");
+ error_report("Host kernel setup problem detected. Please verify:");
+ error_report("- for kernels supporting the switch_amode or"
+ " user_mode parameters, whether");
+ error_report(" user space is running in primary address space");
+ error_report("- for kernels supporting the vm.allocate_pgste "
+ "sysctl, whether it is enabled");
}
#elif defined(TARGET_PPC)
if (ret == -EINVAL) {
- fprintf(stderr,
- "PPC KVM module is not loaded. Try modprobe kvm_%s.\n",
- (type == 2) ? "pr" : "hv");
+ error_report("PPC KVM module is not loaded. Try modprobe kvm_%s.",
+ (type == 2) ? "pr" : "hv");
}
#endif
goto err;
@@ -2526,9 +2522,9 @@ static int kvm_init(MachineState *ms)
nc->name, nc->num, soft_vcpus_limit);
if (nc->num > hard_vcpus_limit) {
- fprintf(stderr, "Number of %s cpus requested (%d) exceeds "
- "the maximum cpus supported by KVM (%d)\n",
- nc->name, nc->num, hard_vcpus_limit);
+ error_report("Number of %s cpus requested (%d) exceeds "
+ "the maximum cpus supported by KVM (%d)",
+ nc->name, nc->num, hard_vcpus_limit);
exit(1);
}
}
@@ -2542,8 +2538,8 @@ static int kvm_init(MachineState *ms)
}
if (missing_cap) {
ret = -EINVAL;
- fprintf(stderr, "kvm does not support %s\n%s",
- missing_cap->name, upgrade_note);
+ error_printf("kvm does not support %s\n%s",
+ missing_cap->name, upgrade_note);
goto err;
}
--
2.45.2
^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [PATCH v3] kvm: replace fprintf with error_report/printf() in kvm_init()
2024-08-09 6:49 [PATCH v3] kvm: replace fprintf with error_report/printf() in kvm_init() Ani Sinha
@ 2024-08-09 8:35 ` Philippe Mathieu-Daudé
2024-08-12 9:53 ` Ani Sinha
2024-08-27 6:30 ` Markus Armbruster
0 siblings, 2 replies; 9+ messages in thread
From: Philippe Mathieu-Daudé @ 2024-08-09 8:35 UTC (permalink / raw)
To: Ani Sinha, Paolo Bonzini
Cc: qemu-trivial, zhao1.liu, kvm, qemu-devel, Markus Armbruster
Hi Ani,
On 9/8/24 08:49, Ani Sinha wrote:
> error_report() is more appropriate for error situations. Replace fprintf with
> error_report. Cosmetic. No functional change.
>
> CC: qemu-trivial@nongnu.org
> CC: zhao1.liu@intel.com
(Pointless to carry Cc line when patch is already reviewed next line)
> Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
> Signed-off-by: Ani Sinha <anisinha@redhat.com>
> ---
> accel/kvm/kvm-all.c | 40 ++++++++++++++++++----------------------
> 1 file changed, 18 insertions(+), 22 deletions(-)
>
> changelog:
> v2: fix a bug.
> v3: replace one instance of error_report() with error_printf(). added tags.
>
> diff --git a/accel/kvm/kvm-all.c b/accel/kvm/kvm-all.c
> index 75d11a07b2..5bc9d35b61 100644
> --- a/accel/kvm/kvm-all.c
> +++ b/accel/kvm/kvm-all.c
> @@ -2427,7 +2427,7 @@ static int kvm_init(MachineState *ms)
> QLIST_INIT(&s->kvm_parked_vcpus);
> s->fd = qemu_open_old(s->device ?: "/dev/kvm", O_RDWR);
> if (s->fd == -1) {
> - fprintf(stderr, "Could not access KVM kernel module: %m\n");
> + error_report("Could not access KVM kernel module: %m");
> ret = -errno;
> goto err;
> }
> @@ -2437,13 +2437,13 @@ static int kvm_init(MachineState *ms)
> if (ret >= 0) {
> ret = -EINVAL;
> }
> - fprintf(stderr, "kvm version too old\n");
> + error_report("kvm version too old");
> goto err;
> }
>
> if (ret > KVM_API_VERSION) {
> ret = -EINVAL;
> - fprintf(stderr, "kvm version not supported\n");
> + error_report("kvm version not supported");
> goto err;
> }
>
> @@ -2488,26 +2488,22 @@ static int kvm_init(MachineState *ms)
> } while (ret == -EINTR);
>
> if (ret < 0) {
> - fprintf(stderr, "ioctl(KVM_CREATE_VM) failed: %d %s\n", -ret,
> - strerror(-ret));
> + error_report("ioctl(KVM_CREATE_VM) failed: %d %s", -ret,
> + strerror(-ret));
>
> #ifdef TARGET_S390X
> if (ret == -EINVAL) {
> - fprintf(stderr,
> - "Host kernel setup problem detected. Please verify:\n");
> - fprintf(stderr, "- for kernels supporting the switch_amode or"
> - " user_mode parameters, whether\n");
> - fprintf(stderr,
> - " user space is running in primary address space\n");
> - fprintf(stderr,
> - "- for kernels supporting the vm.allocate_pgste sysctl, "
> - "whether it is enabled\n");
> + error_report("Host kernel setup problem detected.
\n"
Should we use error_printf_unless_qmp() for the following?
" Please verify:");
> + error_report("- for kernels supporting the switch_amode or"
> + " user_mode parameters, whether");
> + error_report(" user space is running in primary address space");
> + error_report("- for kernels supporting the vm.allocate_pgste "
> + "sysctl, whether it is enabled");
> }
> #elif defined(TARGET_PPC)
> if (ret == -EINVAL) {
> - fprintf(stderr,
> - "PPC KVM module is not loaded.
\n"
Ditto.
" Try modprobe kvm_%s.\n",
> - (type == 2) ? "pr" : "hv");
> + error_report("PPC KVM module is not loaded. Try modprobe kvm_%s.",
> + (type == 2) ? "pr" : "hv");
> }
> #endif
> goto err;
> @@ -2526,9 +2522,9 @@ static int kvm_init(MachineState *ms)
> nc->name, nc->num, soft_vcpus_limit);
>
> if (nc->num > hard_vcpus_limit) {
> - fprintf(stderr, "Number of %s cpus requested (%d) exceeds "
> - "the maximum cpus supported by KVM (%d)\n",
> - nc->name, nc->num, hard_vcpus_limit);
> + error_report("Number of %s cpus requested (%d) exceeds "
> + "the maximum cpus supported by KVM (%d)",
> + nc->name, nc->num, hard_vcpus_limit);
> exit(1);
> }
> }
> @@ -2542,8 +2538,8 @@ static int kvm_init(MachineState *ms)
> }
> if (missing_cap) {
> ret = -EINVAL;
> - fprintf(stderr, "kvm does not support %s\n%s",
> - missing_cap->name, upgrade_note);
> + error_printf("kvm does not support %s\n%s",
> + missing_cap->name, upgrade_note);
Similarly, should we print upgrade_note using error_printf_unless_qmp?
> goto err;
> }
>
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v3] kvm: replace fprintf with error_report/printf() in kvm_init()
2024-08-09 8:35 ` Philippe Mathieu-Daudé
@ 2024-08-12 9:53 ` Ani Sinha
2024-08-12 9:59 ` Ani Sinha
2024-08-27 6:30 ` Markus Armbruster
1 sibling, 1 reply; 9+ messages in thread
From: Ani Sinha @ 2024-08-12 9:53 UTC (permalink / raw)
To: Philippe Mathieu-Daudé
Cc: Paolo Bonzini, qemu-trivial, zhao1.liu, kvm, qemu-devel,
Markus Armbruster
On Fri, Aug 9, 2024 at 2:06 PM Philippe Mathieu-Daudé <philmd@linaro.org> wrote:
>
> Hi Ani,
>
> On 9/8/24 08:49, Ani Sinha wrote:
> > error_report() is more appropriate for error situations. Replace fprintf with
> > error_report. Cosmetic. No functional change.
> >
> > CC: qemu-trivial@nongnu.org
> > CC: zhao1.liu@intel.com
>
> (Pointless to carry Cc line when patch is already reviewed next line)
>
> > Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
> > Signed-off-by: Ani Sinha <anisinha@redhat.com>
> > ---
> > accel/kvm/kvm-all.c | 40 ++++++++++++++++++----------------------
> > 1 file changed, 18 insertions(+), 22 deletions(-)
> >
> > changelog:
> > v2: fix a bug.
> > v3: replace one instance of error_report() with error_printf(). added tags.
> >
> > diff --git a/accel/kvm/kvm-all.c b/accel/kvm/kvm-all.c
> > index 75d11a07b2..5bc9d35b61 100644
> > --- a/accel/kvm/kvm-all.c
> > +++ b/accel/kvm/kvm-all.c
> > @@ -2427,7 +2427,7 @@ static int kvm_init(MachineState *ms)
> > QLIST_INIT(&s->kvm_parked_vcpus);
> > s->fd = qemu_open_old(s->device ?: "/dev/kvm", O_RDWR);
> > if (s->fd == -1) {
> > - fprintf(stderr, "Could not access KVM kernel module: %m\n");
> > + error_report("Could not access KVM kernel module: %m");
> > ret = -errno;
> > goto err;
> > }
> > @@ -2437,13 +2437,13 @@ static int kvm_init(MachineState *ms)
> > if (ret >= 0) {
> > ret = -EINVAL;
> > }
> > - fprintf(stderr, "kvm version too old\n");
> > + error_report("kvm version too old");
> > goto err;
> > }
> >
> > if (ret > KVM_API_VERSION) {
> > ret = -EINVAL;
> > - fprintf(stderr, "kvm version not supported\n");
> > + error_report("kvm version not supported");
> > goto err;
> > }
> >
> > @@ -2488,26 +2488,22 @@ static int kvm_init(MachineState *ms)
> > } while (ret == -EINTR);
> >
> > if (ret < 0) {
> > - fprintf(stderr, "ioctl(KVM_CREATE_VM) failed: %d %s\n", -ret,
> > - strerror(-ret));
> > + error_report("ioctl(KVM_CREATE_VM) failed: %d %s", -ret,
> > + strerror(-ret));
> >
> > #ifdef TARGET_S390X
> > if (ret == -EINVAL) {
> > - fprintf(stderr,
> > - "Host kernel setup problem detected. Please verify:\n");
> > - fprintf(stderr, "- for kernels supporting the switch_amode or"
> > - " user_mode parameters, whether\n");
> > - fprintf(stderr,
> > - " user space is running in primary address space\n");
> > - fprintf(stderr,
> > - "- for kernels supporting the vm.allocate_pgste sysctl, "
> > - "whether it is enabled\n");
> > + error_report("Host kernel setup problem detected.
>
> \n"
>
> Should we use error_printf_unless_qmp() for the following?
Do you believe that qemu_init() -> configure_accelerators() ->
do_configure_accelerator,() -> accel_init_machine() -> kvm_init() can
be called from QMP context?
>
> " Please verify:");
> > + error_report("- for kernels supporting the switch_amode or"
> > + " user_mode parameters, whether");
> > + error_report(" user space is running in primary address space");
> > + error_report("- for kernels supporting the vm.allocate_pgste "
> > + "sysctl, whether it is enabled");
> > }
> > #elif defined(TARGET_PPC)
> > if (ret == -EINVAL) {
> > - fprintf(stderr,
> > - "PPC KVM module is not loaded.
>
> \n"
>
> Ditto.
>
> " Try modprobe kvm_%s.\n",
> > - (type == 2) ? "pr" : "hv");
> > + error_report("PPC KVM module is not loaded. Try modprobe kvm_%s.",
> > + (type == 2) ? "pr" : "hv");
> > }
> > #endif
> > goto err;
> > @@ -2526,9 +2522,9 @@ static int kvm_init(MachineState *ms)
> > nc->name, nc->num, soft_vcpus_limit);
> >
> > if (nc->num > hard_vcpus_limit) {
> > - fprintf(stderr, "Number of %s cpus requested (%d) exceeds "
> > - "the maximum cpus supported by KVM (%d)\n",
> > - nc->name, nc->num, hard_vcpus_limit);
> > + error_report("Number of %s cpus requested (%d) exceeds "
> > + "the maximum cpus supported by KVM (%d)",
> > + nc->name, nc->num, hard_vcpus_limit);
> > exit(1);
> > }
> > }
> > @@ -2542,8 +2538,8 @@ static int kvm_init(MachineState *ms)
> > }
> > if (missing_cap) {
> > ret = -EINVAL;
> > - fprintf(stderr, "kvm does not support %s\n%s",
> > - missing_cap->name, upgrade_note);
> > + error_printf("kvm does not support %s\n%s",
> > + missing_cap->name, upgrade_note);
>
> Similarly, should we print upgrade_note using error_printf_unless_qmp?
>
> > goto err;
> > }
> >
>
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v3] kvm: replace fprintf with error_report/printf() in kvm_init()
2024-08-12 9:53 ` Ani Sinha
@ 2024-08-12 9:59 ` Ani Sinha
2024-08-16 6:21 ` Philippe Mathieu-Daudé
0 siblings, 1 reply; 9+ messages in thread
From: Ani Sinha @ 2024-08-12 9:59 UTC (permalink / raw)
To: Philippe Mathieu-Daudé
Cc: Paolo Bonzini, qemu-trivial, Zhao Liu, kvm, qemu-devel,
Markus Armbruster
[-- Attachment #1: Type: text/plain, Size: 5741 bytes --]
On Mon, 12 Aug, 2024, 3:23 pm Ani Sinha, <anisinha@redhat.com> wrote:
> On Fri, Aug 9, 2024 at 2:06 PM Philippe Mathieu-Daudé <philmd@linaro.org>
> wrote:
> >
> > Hi Ani,
> >
> > On 9/8/24 08:49, Ani Sinha wrote:
> > > error_report() is more appropriate for error situations. Replace
> fprintf with
> > > error_report. Cosmetic. No functional change.
> > >
> > > CC: qemu-trivial@nongnu.org
> > > CC: zhao1.liu@intel.com
> >
> > (Pointless to carry Cc line when patch is already reviewed next line)
> >
> > > Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
> > > Signed-off-by: Ani Sinha <anisinha@redhat.com>
> > > ---
> > > accel/kvm/kvm-all.c | 40 ++++++++++++++++++----------------------
> > > 1 file changed, 18 insertions(+), 22 deletions(-)
> > >
> > > changelog:
> > > v2: fix a bug.
> > > v3: replace one instance of error_report() with error_printf(). added
> tags.
> > >
> > > diff --git a/accel/kvm/kvm-all.c b/accel/kvm/kvm-all.c
> > > index 75d11a07b2..5bc9d35b61 100644
> > > --- a/accel/kvm/kvm-all.c
> > > +++ b/accel/kvm/kvm-all.c
> > > @@ -2427,7 +2427,7 @@ static int kvm_init(MachineState *ms)
> > > QLIST_INIT(&s->kvm_parked_vcpus);
> > > s->fd = qemu_open_old(s->device ?: "/dev/kvm", O_RDWR);
> > > if (s->fd == -1) {
> > > - fprintf(stderr, "Could not access KVM kernel module: %m\n");
> > > + error_report("Could not access KVM kernel module: %m");
> > > ret = -errno;
> > > goto err;
> > > }
> > > @@ -2437,13 +2437,13 @@ static int kvm_init(MachineState *ms)
> > > if (ret >= 0) {
> > > ret = -EINVAL;
> > > }
> > > - fprintf(stderr, "kvm version too old\n");
> > > + error_report("kvm version too old");
> > > goto err;
> > > }
> > >
> > > if (ret > KVM_API_VERSION) {
> > > ret = -EINVAL;
> > > - fprintf(stderr, "kvm version not supported\n");
> > > + error_report("kvm version not supported");
> > > goto err;
> > > }
> > >
> > > @@ -2488,26 +2488,22 @@ static int kvm_init(MachineState *ms)
> > > } while (ret == -EINTR);
> > >
> > > if (ret < 0) {
> > > - fprintf(stderr, "ioctl(KVM_CREATE_VM) failed: %d %s\n", -ret,
> > > - strerror(-ret));
> > > + error_report("ioctl(KVM_CREATE_VM) failed: %d %s", -ret,
> > > + strerror(-ret));
> > >
> > > #ifdef TARGET_S390X
> > > if (ret == -EINVAL) {
> > > - fprintf(stderr,
> > > - "Host kernel setup problem detected. Please
> verify:\n");
> > > - fprintf(stderr, "- for kernels supporting the
> switch_amode or"
> > > - " user_mode parameters, whether\n");
> > > - fprintf(stderr,
> > > - " user space is running in primary address
> space\n");
> > > - fprintf(stderr,
> > > - "- for kernels supporting the vm.allocate_pgste
> sysctl, "
> > > - "whether it is enabled\n");
> > > + error_report("Host kernel setup problem detected.
> >
> > \n"
> >
> > Should we use error_printf_unless_qmp() for the following?
>
> Do you believe that qemu_init() -> configure_accelerators() ->
> do_configure_accelerator,() -> accel_init_machine() -> kvm_init() can
> be called from QMP context?
>
To clarify, that is the only path I saw that calls kvm_init()
> >
> > " Please verify:");
> > > + error_report("- for kernels supporting the switch_amode
> or"
> > > + " user_mode parameters, whether");
> > > + error_report(" user space is running in primary address
> space");
> > > + error_report("- for kernels supporting the
> vm.allocate_pgste "
> > > + "sysctl, whether it is enabled");
> > > }
> > > #elif defined(TARGET_PPC)
> > > if (ret == -EINVAL) {
> > > - fprintf(stderr,
> > > - "PPC KVM module is not loaded.
> >
> > \n"
> >
> > Ditto.
> >
> > " Try modprobe kvm_%s.\n",
> > > - (type == 2) ? "pr" : "hv");
> > > + error_report("PPC KVM module is not loaded. Try modprobe
> kvm_%s.",
> > > + (type == 2) ? "pr" : "hv");
> > > }
> > > #endif
> > > goto err;
> > > @@ -2526,9 +2522,9 @@ static int kvm_init(MachineState *ms)
> > > nc->name, nc->num, soft_vcpus_limit);
> > >
> > > if (nc->num > hard_vcpus_limit) {
> > > - fprintf(stderr, "Number of %s cpus requested (%d)
> exceeds "
> > > - "the maximum cpus supported by KVM (%d)\n",
> > > - nc->name, nc->num, hard_vcpus_limit);
> > > + error_report("Number of %s cpus requested (%d)
> exceeds "
> > > + "the maximum cpus supported by KVM (%d)",
> > > + nc->name, nc->num, hard_vcpus_limit);
> > > exit(1);
> > > }
> > > }
> > > @@ -2542,8 +2538,8 @@ static int kvm_init(MachineState *ms)
> > > }
> > > if (missing_cap) {
> > > ret = -EINVAL;
> > > - fprintf(stderr, "kvm does not support %s\n%s",
> > > - missing_cap->name, upgrade_note);
> > > + error_printf("kvm does not support %s\n%s",
> > > + missing_cap->name, upgrade_note);
> >
> > Similarly, should we print upgrade_note using error_printf_unless_qmp?
> >
> > > goto err;
> > > }
> > >
> >
>
[-- Attachment #2: Type: text/html, Size: 8497 bytes --]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v3] kvm: replace fprintf with error_report/printf() in kvm_init()
2024-08-12 9:59 ` Ani Sinha
@ 2024-08-16 6:21 ` Philippe Mathieu-Daudé
2024-08-21 3:38 ` Ani Sinha
0 siblings, 1 reply; 9+ messages in thread
From: Philippe Mathieu-Daudé @ 2024-08-16 6:21 UTC (permalink / raw)
To: Ani Sinha, Markus Armbruster
Cc: Paolo Bonzini, qemu-trivial, Zhao Liu, kvm, qemu-devel
On 12/8/24 11:59, Ani Sinha wrote:
>
>
> On Mon, 12 Aug, 2024, 3:23 pm Ani Sinha, <anisinha@redhat.com
> <mailto:anisinha@redhat.com>> wrote:
>
> On Fri, Aug 9, 2024 at 2:06 PM Philippe Mathieu-Daudé
> <philmd@linaro.org <mailto:philmd@linaro.org>> wrote:
> >
> > Hi Ani,
> >
> > On 9/8/24 08:49, Ani Sinha wrote:
> > > error_report() is more appropriate for error situations.
> Replace fprintf with
> > > error_report. Cosmetic. No functional change.
> > >
> > > CC: qemu-trivial@nongnu.org <mailto:qemu-trivial@nongnu.org>
> > > CC: zhao1.liu@intel.com <mailto:zhao1.liu@intel.com>
> >
> > (Pointless to carry Cc line when patch is already reviewed next line)
> >
> > > Reviewed-by: Zhao Liu <zhao1.liu@intel.com
> <mailto:zhao1.liu@intel.com>>
> > > Signed-off-by: Ani Sinha <anisinha@redhat.com
> <mailto:anisinha@redhat.com>>
> > > ---
> > > accel/kvm/kvm-all.c | 40 ++++++++++++++++++----------------------
> > > 1 file changed, 18 insertions(+), 22 deletions(-)
> > >
> > > changelog:
> > > v2: fix a bug.
> > > v3: replace one instance of error_report() with error_printf().
> added tags.
> > >
> > > diff --git a/accel/kvm/kvm-all.c b/accel/kvm/kvm-all.c
> > > index 75d11a07b2..5bc9d35b61 100644
> > > --- a/accel/kvm/kvm-all.c
> > > +++ b/accel/kvm/kvm-all.c
> > > @@ -2427,7 +2427,7 @@ static int kvm_init(MachineState *ms)
> > > QLIST_INIT(&s->kvm_parked_vcpus);
> > > s->fd = qemu_open_old(s->device ?: "/dev/kvm", O_RDWR);
> > > if (s->fd == -1) {
> > > - fprintf(stderr, "Could not access KVM kernel module:
> %m\n");
> > > + error_report("Could not access KVM kernel module: %m");
> > > ret = -errno;
> > > goto err;
> > > }
> > > @@ -2437,13 +2437,13 @@ static int kvm_init(MachineState *ms)
> > > if (ret >= 0) {
> > > ret = -EINVAL;
> > > }
> > > - fprintf(stderr, "kvm version too old\n");
> > > + error_report("kvm version too old");
> > > goto err;
> > > }
> > >
> > > if (ret > KVM_API_VERSION) {
> > > ret = -EINVAL;
> > > - fprintf(stderr, "kvm version not supported\n");
> > > + error_report("kvm version not supported");
> > > goto err;
> > > }
> > >
> > > @@ -2488,26 +2488,22 @@ static int kvm_init(MachineState *ms)
> > > } while (ret == -EINTR);
> > >
> > > if (ret < 0) {
> > > - fprintf(stderr, "ioctl(KVM_CREATE_VM) failed: %d
> %s\n", -ret,
> > > - strerror(-ret));
> > > + error_report("ioctl(KVM_CREATE_VM) failed: %d %s", -ret,
> > > + strerror(-ret));
> > >
> > > #ifdef TARGET_S390X
> > > if (ret == -EINVAL) {
> > > - fprintf(stderr,
> > > - "Host kernel setup problem detected.
> Please verify:\n");
> > > - fprintf(stderr, "- for kernels supporting the
> switch_amode or"
> > > - " user_mode parameters, whether\n");
> > > - fprintf(stderr,
> > > - " user space is running in primary
> address space\n");
> > > - fprintf(stderr,
> > > - "- for kernels supporting the
> vm.allocate_pgste sysctl, "
> > > - "whether it is enabled\n");
> > > + error_report("Host kernel setup problem detected.
> >
> > \n"
> >
> > Should we use error_printf_unless_qmp() for the following?
>
> Do you believe that qemu_init() -> configure_accelerators() ->
> do_configure_accelerator,() -> accel_init_machine() -> kvm_init() can
> be called from QMP context?
>
>
> To clarify, that is the only path I saw that calls kvm_init()
We don't know whether this code can end refactored or not.
Personally I rather consistent API uses, since snipped of
code are often used as example. Up to the maintainer.
> >
> > " Please verify:");
> > > + error_report("- for kernels supporting the
> switch_amode or"
> > > + " user_mode parameters, whether");
> > > + error_report(" user space is running in primary
> address space");
> > > + error_report("- for kernels supporting the
> vm.allocate_pgste "
> > > + "sysctl, whether it is enabled");
> > > }
> > > #elif defined(TARGET_PPC)
> > > if (ret == -EINVAL) {
> > > - fprintf(stderr,
> > > - "PPC KVM module is not loaded.
> >
> > \n"
> >
> > Ditto.
> >
> > " Try modprobe kvm_%s.\n",
> > > - (type == 2) ? "pr" : "hv");
> > > + error_report("PPC KVM module is not loaded. Try
> modprobe kvm_%s.",
> > > + (type == 2) ? "pr" : "hv");
> > > }
> > > #endif
> > > goto err;
> > > @@ -2526,9 +2522,9 @@ static int kvm_init(MachineState *ms)
> > > nc->name, nc->num, soft_vcpus_limit);
> > >
> > > if (nc->num > hard_vcpus_limit) {
> > > - fprintf(stderr, "Number of %s cpus requested
> (%d) exceeds "
> > > - "the maximum cpus supported by KVM
> (%d)\n",
> > > - nc->name, nc->num, hard_vcpus_limit);
> > > + error_report("Number of %s cpus requested (%d)
> exceeds "
> > > + "the maximum cpus supported by
> KVM (%d)",
> > > + nc->name, nc->num, hard_vcpus_limit);
> > > exit(1);
> > > }
> > > }
> > > @@ -2542,8 +2538,8 @@ static int kvm_init(MachineState *ms)
> > > }
> > > if (missing_cap) {
> > > ret = -EINVAL;
> > > - fprintf(stderr, "kvm does not support %s\n%s",
> > > - missing_cap->name, upgrade_note);
> > > + error_printf("kvm does not support %s\n%s",
> > > + missing_cap->name, upgrade_note);
> >
> > Similarly, should we print upgrade_note using
> error_printf_unless_qmp?
> >
> > > goto err;
> > > }
> > >
> >
>
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v3] kvm: replace fprintf with error_report/printf() in kvm_init()
2024-08-16 6:21 ` Philippe Mathieu-Daudé
@ 2024-08-21 3:38 ` Ani Sinha
0 siblings, 0 replies; 9+ messages in thread
From: Ani Sinha @ 2024-08-21 3:38 UTC (permalink / raw)
To: Philippe Mathieu-Daudé
Cc: Markus Armbruster, Paolo Bonzini, qemu-trivial, Zhao Liu, kvm,
qemu-devel
> On 16 Aug 2024, at 11:51 AM, Philippe Mathieu-Daudé <philmd@linaro.org> wrote:
>
> On 12/8/24 11:59, Ani Sinha wrote:
>> On Mon, 12 Aug, 2024, 3:23 pm Ani Sinha, <anisinha@redhat.com <mailto:anisinha@redhat.com>> wrote:
>> On Fri, Aug 9, 2024 at 2:06 PM Philippe Mathieu-Daudé
>> <philmd@linaro.org <mailto:philmd@linaro.org>> wrote:
>> >
>> > Hi Ani,
>> >
>> > On 9/8/24 08:49, Ani Sinha wrote:
>> > > error_report() is more appropriate for error situations.
>> Replace fprintf with
>> > > error_report. Cosmetic. No functional change.
>> > >
>> > > CC: qemu-trivial@nongnu.org <mailto:qemu-trivial@nongnu.org>
>> > > CC: zhao1.liu@intel.com <mailto:zhao1.liu@intel.com>
>> >
>> > (Pointless to carry Cc line when patch is already reviewed next line)
>> >
>> > > Reviewed-by: Zhao Liu <zhao1.liu@intel.com
>> <mailto:zhao1.liu@intel.com>>
>> > > Signed-off-by: Ani Sinha <anisinha@redhat.com
>> <mailto:anisinha@redhat.com>>
>> > > ---
>> > > accel/kvm/kvm-all.c | 40 ++++++++++++++++++----------------------
>> > > 1 file changed, 18 insertions(+), 22 deletions(-)
>> > >
>> > > changelog:
>> > > v2: fix a bug.
>> > > v3: replace one instance of error_report() with error_printf().
>> added tags.
>> > >
>> > > diff --git a/accel/kvm/kvm-all.c b/accel/kvm/kvm-all.c
>> > > index 75d11a07b2..5bc9d35b61 100644
>> > > --- a/accel/kvm/kvm-all.c
>> > > +++ b/accel/kvm/kvm-all.c
>> > > @@ -2427,7 +2427,7 @@ static int kvm_init(MachineState *ms)
>> > > QLIST_INIT(&s->kvm_parked_vcpus);
>> > > s->fd = qemu_open_old(s->device ?: "/dev/kvm", O_RDWR);
>> > > if (s->fd == -1) {
>> > > - fprintf(stderr, "Could not access KVM kernel module:
>> %m\n");
>> > > + error_report("Could not access KVM kernel module: %m");
>> > > ret = -errno;
>> > > goto err;
>> > > }
>> > > @@ -2437,13 +2437,13 @@ static int kvm_init(MachineState *ms)
>> > > if (ret >= 0) {
>> > > ret = -EINVAL;
>> > > }
>> > > - fprintf(stderr, "kvm version too old\n");
>> > > + error_report("kvm version too old");
>> > > goto err;
>> > > }
>> > >
>> > > if (ret > KVM_API_VERSION) {
>> > > ret = -EINVAL;
>> > > - fprintf(stderr, "kvm version not supported\n");
>> > > + error_report("kvm version not supported");
>> > > goto err;
>> > > }
>> > >
>> > > @@ -2488,26 +2488,22 @@ static int kvm_init(MachineState *ms)
>> > > } while (ret == -EINTR);
>> > >
>> > > if (ret < 0) {
>> > > - fprintf(stderr, "ioctl(KVM_CREATE_VM) failed: %d
>> %s\n", -ret,
>> > > - strerror(-ret));
>> > > + error_report("ioctl(KVM_CREATE_VM) failed: %d %s", -ret,
>> > > + strerror(-ret));
>> > >
>> > > #ifdef TARGET_S390X
>> > > if (ret == -EINVAL) {
>> > > - fprintf(stderr,
>> > > - "Host kernel setup problem detected.
>> Please verify:\n");
>> > > - fprintf(stderr, "- for kernels supporting the
>> switch_amode or"
>> > > - " user_mode parameters, whether\n");
>> > > - fprintf(stderr,
>> > > - " user space is running in primary
>> address space\n");
>> > > - fprintf(stderr,
>> > > - "- for kernels supporting the
>> vm.allocate_pgste sysctl, "
>> > > - "whether it is enabled\n");
>> > > + error_report("Host kernel setup problem detected.
>> >
>> > \n"
>> >
>> > Should we use error_printf_unless_qmp() for the following?
>> Do you believe that qemu_init() -> configure_accelerators() ->
>> do_configure_accelerator,() -> accel_init_machine() -> kvm_init() can
>> be called from QMP context?
>> To clarify, that is the only path I saw that calls kvm_init()
>
> We don't know whether this code can end refactored or not.
Ok personally I think we can cross the bridge when we get there.
> Personally I rather consistent API uses, since snipped of
> code are often used as example. Up to the maintainer.
OK up to Paolo then :-)
>
>> >
>> > " Please verify:");
>> > > + error_report("- for kernels supporting the
>> switch_amode or"
>> > > + " user_mode parameters, whether");
>> > > + error_report(" user space is running in primary
>> address space");
>> > > + error_report("- for kernels supporting the
>> vm.allocate_pgste "
>> > > + "sysctl, whether it is enabled");
>> > > }
>> > > #elif defined(TARGET_PPC)
>> > > if (ret == -EINVAL) {
>> > > - fprintf(stderr,
>> > > - "PPC KVM module is not loaded.
>> >
>> > \n"
>> >
>> > Ditto.
>> >
>> > " Try modprobe kvm_%s.\n",
>> > > - (type == 2) ? "pr" : "hv");
>> > > + error_report("PPC KVM module is not loaded. Try
>> modprobe kvm_%s.",
>> > > + (type == 2) ? "pr" : "hv");
>> > > }
>> > > #endif
>> > > goto err;
>> > > @@ -2526,9 +2522,9 @@ static int kvm_init(MachineState *ms)
>> > > nc->name, nc->num, soft_vcpus_limit);
>> > >
>> > > if (nc->num > hard_vcpus_limit) {
>> > > - fprintf(stderr, "Number of %s cpus requested
>> (%d) exceeds "
>> > > - "the maximum cpus supported by KVM
>> (%d)\n",
>> > > - nc->name, nc->num, hard_vcpus_limit);
>> > > + error_report("Number of %s cpus requested (%d)
>> exceeds "
>> > > + "the maximum cpus supported by
>> KVM (%d)",
>> > > + nc->name, nc->num, hard_vcpus_limit);
>> > > exit(1);
>> > > }
>> > > }
>> > > @@ -2542,8 +2538,8 @@ static int kvm_init(MachineState *ms)
>> > > }
>> > > if (missing_cap) {
>> > > ret = -EINVAL;
>> > > - fprintf(stderr, "kvm does not support %s\n%s",
>> > > - missing_cap->name, upgrade_note);
>> > > + error_printf("kvm does not support %s\n%s",
>> > > + missing_cap->name, upgrade_note);
>> >
>> > Similarly, should we print upgrade_note using
>> error_printf_unless_qmp?
>> >
>> > > goto err;
>> > > }
>> > >
>> >
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v3] kvm: replace fprintf with error_report/printf() in kvm_init()
2024-08-09 8:35 ` Philippe Mathieu-Daudé
2024-08-12 9:53 ` Ani Sinha
@ 2024-08-27 6:30 ` Markus Armbruster
2024-08-27 12:17 ` Ani Sinha
1 sibling, 1 reply; 9+ messages in thread
From: Markus Armbruster @ 2024-08-27 6:30 UTC (permalink / raw)
To: Philippe Mathieu-Daudé
Cc: Ani Sinha, Paolo Bonzini, qemu-trivial, zhao1.liu, kvm,
qemu-devel, Markus Armbruster
Philippe Mathieu-Daudé <philmd@linaro.org> writes:
> Hi Ani,
>
> On 9/8/24 08:49, Ani Sinha wrote:
>> error_report() is more appropriate for error situations. Replace fprintf with
>> error_report. Cosmetic. No functional change.
>> CC: qemu-trivial@nongnu.org
>> CC: zhao1.liu@intel.com
>
> (Pointless to carry Cc line when patch is already reviewed next line)
>
>> Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
>> Signed-off-by: Ani Sinha <anisinha@redhat.com>
>> ---
>> accel/kvm/kvm-all.c | 40 ++++++++++++++++++----------------------
>> 1 file changed, 18 insertions(+), 22 deletions(-)
>> changelog:
>> v2: fix a bug.
>> v3: replace one instance of error_report() with error_printf(). added tags.
>> diff --git a/accel/kvm/kvm-all.c b/accel/kvm/kvm-all.c
>> index 75d11a07b2..5bc9d35b61 100644
>> --- a/accel/kvm/kvm-all.c
>> +++ b/accel/kvm/kvm-all.c
>> @@ -2427,7 +2427,7 @@ static int kvm_init(MachineState *ms)
>> QLIST_INIT(&s->kvm_parked_vcpus);
>> s->fd = qemu_open_old(s->device ?: "/dev/kvm", O_RDWR);
>> if (s->fd == -1) {
>> - fprintf(stderr, "Could not access KVM kernel module: %m\n");
>> + error_report("Could not access KVM kernel module: %m");
>> ret = -errno;
>> goto err;
>> }
>> @@ -2437,13 +2437,13 @@ static int kvm_init(MachineState *ms)
>> if (ret >= 0) {
>> ret = -EINVAL;
>> }
>> - fprintf(stderr, "kvm version too old\n");
>> + error_report("kvm version too old");
>> goto err;
>> }
>> if (ret > KVM_API_VERSION) {
>> ret = -EINVAL;
>> - fprintf(stderr, "kvm version not supported\n");
>> + error_report("kvm version not supported");
>> goto err;
>> }
>> @@ -2488,26 +2488,22 @@ static int kvm_init(MachineState *ms)
>> } while (ret == -EINTR);
>> if (ret < 0) {
>> - fprintf(stderr, "ioctl(KVM_CREATE_VM) failed: %d %s\n", -ret,
>> - strerror(-ret));
>> + error_report("ioctl(KVM_CREATE_VM) failed: %d %s", -ret,
>> + strerror(-ret));
>> #ifdef TARGET_S390X
>> if (ret == -EINVAL) {
>> - fprintf(stderr,
>> - "Host kernel setup problem detected. Please verify:\n");
>> - fprintf(stderr, "- for kernels supporting the switch_amode or"
>> - " user_mode parameters, whether\n");
>> - fprintf(stderr,
>> - " user space is running in primary address space\n");
>> - fprintf(stderr,
>> - "- for kernels supporting the vm.allocate_pgste sysctl, "
>> - "whether it is enabled\n");
>> + error_report("Host kernel setup problem detected.
>
> \n"
>
> Should we use error_printf_unless_qmp() for the following?
>
> " Please verify:");
>> + error_report("- for kernels supporting the switch_amode or"
>> + " user_mode parameters, whether");
>> + error_report(" user space is running in primary address space");
>> + error_report("- for kernels supporting the vm.allocate_pgste "
>> + "sysctl, whether it is enabled");
Do not put newlines into error messages. error_report()'s function
comment demands "The resulting message should be a single phrase, with
no newline or trailing punctuation."
You can do this:
error_report(... the actual error message ...);
error_printf(... hints on what to do about it ...);
Questions?
[...]
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v3] kvm: replace fprintf with error_report/printf() in kvm_init()
2024-08-27 6:30 ` Markus Armbruster
@ 2024-08-27 12:17 ` Ani Sinha
2024-08-27 12:26 ` Markus Armbruster
0 siblings, 1 reply; 9+ messages in thread
From: Ani Sinha @ 2024-08-27 12:17 UTC (permalink / raw)
To: Markus Armbruster
Cc: Philippe Mathieu-Daudé, Paolo Bonzini, qemu-trivial,
Zhao Liu, kvm, qemu-devel
> On 27 Aug 2024, at 12:00 PM, Markus Armbruster <armbru@redhat.com> wrote:
>
> Philippe Mathieu-Daudé <philmd@linaro.org> writes:
>
>> Hi Ani,
>>
>> On 9/8/24 08:49, Ani Sinha wrote:
>>> error_report() is more appropriate for error situations. Replace fprintf with
>>> error_report. Cosmetic. No functional change.
>>> CC: qemu-trivial@nongnu.org
>>> CC: zhao1.liu@intel.com
>>
>> (Pointless to carry Cc line when patch is already reviewed next line)
>>
>>> Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
>>> Signed-off-by: Ani Sinha <anisinha@redhat.com>
>>> ---
>>> accel/kvm/kvm-all.c | 40 ++++++++++++++++++----------------------
>>> 1 file changed, 18 insertions(+), 22 deletions(-)
>>> changelog:
>>> v2: fix a bug.
>>> v3: replace one instance of error_report() with error_printf(). added tags.
>>> diff --git a/accel/kvm/kvm-all.c b/accel/kvm/kvm-all.c
>>> index 75d11a07b2..5bc9d35b61 100644
>>> --- a/accel/kvm/kvm-all.c
>>> +++ b/accel/kvm/kvm-all.c
>>> @@ -2427,7 +2427,7 @@ static int kvm_init(MachineState *ms)
>>> QLIST_INIT(&s->kvm_parked_vcpus);
>>> s->fd = qemu_open_old(s->device ?: "/dev/kvm", O_RDWR);
>>> if (s->fd == -1) {
>>> - fprintf(stderr, "Could not access KVM kernel module: %m\n");
>>> + error_report("Could not access KVM kernel module: %m");
>>> ret = -errno;
>>> goto err;
>>> }
>>> @@ -2437,13 +2437,13 @@ static int kvm_init(MachineState *ms)
>>> if (ret >= 0) {
>>> ret = -EINVAL;
>>> }
>>> - fprintf(stderr, "kvm version too old\n");
>>> + error_report("kvm version too old");
>>> goto err;
>>> }
>>> if (ret > KVM_API_VERSION) {
>>> ret = -EINVAL;
>>> - fprintf(stderr, "kvm version not supported\n");
>>> + error_report("kvm version not supported");
>>> goto err;
>>> }
>>> @@ -2488,26 +2488,22 @@ static int kvm_init(MachineState *ms)
>>> } while (ret == -EINTR);
>>> if (ret < 0) {
>>> - fprintf(stderr, "ioctl(KVM_CREATE_VM) failed: %d %s\n", -ret,
>>> - strerror(-ret));
>>> + error_report("ioctl(KVM_CREATE_VM) failed: %d %s", -ret,
>>> + strerror(-ret));
>>> #ifdef TARGET_S390X
>>> if (ret == -EINVAL) {
>>> - fprintf(stderr,
>>> - "Host kernel setup problem detected. Please verify:\n");
>>> - fprintf(stderr, "- for kernels supporting the switch_amode or"
>>> - " user_mode parameters, whether\n");
>>> - fprintf(stderr,
>>> - " user space is running in primary address space\n");
>>> - fprintf(stderr,
>>> - "- for kernels supporting the vm.allocate_pgste sysctl, "
>>> - "whether it is enabled\n");
>>> + error_report("Host kernel setup problem detected.
>>
>> \n"
>>
>> Should we use error_printf_unless_qmp() for the following?
>>
>> " Please verify:");
>>> + error_report("- for kernels supporting the switch_amode or"
>>> + " user_mode parameters, whether");
>>> + error_report(" user space is running in primary address space");
>>> + error_report("- for kernels supporting the vm.allocate_pgste "
>>> + "sysctl, whether it is enabled");
>
> Do not put newlines into error messages. error_report()'s function
> comment demands "The resulting message should be a single phrase, with
> no newline or trailing punctuation."
>
> You can do this:
>
> error_report(... the actual error message ...);
> error_printf(... hints on what to do about it ...);
>
> Questions?
Do you see any newlines in my proposed patch?
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH v3] kvm: replace fprintf with error_report/printf() in kvm_init()
2024-08-27 12:17 ` Ani Sinha
@ 2024-08-27 12:26 ` Markus Armbruster
0 siblings, 0 replies; 9+ messages in thread
From: Markus Armbruster @ 2024-08-27 12:26 UTC (permalink / raw)
To: Ani Sinha
Cc: Philippe Mathieu-Daudé, Paolo Bonzini, qemu-trivial,
Zhao Liu, kvm, qemu-devel
Ani Sinha <anisinha@redhat.com> writes:
>> On 27 Aug 2024, at 12:00 PM, Markus Armbruster <armbru@redhat.com> wrote:
>>
>> Philippe Mathieu-Daudé <philmd@linaro.org> writes:
>>
>>> Hi Ani,
>>>
>>> On 9/8/24 08:49, Ani Sinha wrote:
>>>> error_report() is more appropriate for error situations. Replace fprintf with
>>>> error_report. Cosmetic. No functional change.
>>>> CC: qemu-trivial@nongnu.org
>>>> CC: zhao1.liu@intel.com
>>>
>>> (Pointless to carry Cc line when patch is already reviewed next line)
>>>
>>>> Reviewed-by: Zhao Liu <zhao1.liu@intel.com>
>>>> Signed-off-by: Ani Sinha <anisinha@redhat.com>
>>>> ---
>>>> accel/kvm/kvm-all.c | 40 ++++++++++++++++++----------------------
>>>> 1 file changed, 18 insertions(+), 22 deletions(-)
>>>> changelog:
>>>> v2: fix a bug.
>>>> v3: replace one instance of error_report() with error_printf(). added tags.
>>>> diff --git a/accel/kvm/kvm-all.c b/accel/kvm/kvm-all.c
>>>> index 75d11a07b2..5bc9d35b61 100644
>>>> --- a/accel/kvm/kvm-all.c
>>>> +++ b/accel/kvm/kvm-all.c
>>>> @@ -2427,7 +2427,7 @@ static int kvm_init(MachineState *ms)
>>>> QLIST_INIT(&s->kvm_parked_vcpus);
>>>> s->fd = qemu_open_old(s->device ?: "/dev/kvm", O_RDWR);
>>>> if (s->fd == -1) {
>>>> - fprintf(stderr, "Could not access KVM kernel module: %m\n");
>>>> + error_report("Could not access KVM kernel module: %m");
>>>> ret = -errno;
>>>> goto err;
>>>> }
>>>> @@ -2437,13 +2437,13 @@ static int kvm_init(MachineState *ms)
>>>> if (ret >= 0) {
>>>> ret = -EINVAL;
>>>> }
>>>> - fprintf(stderr, "kvm version too old\n");
>>>> + error_report("kvm version too old");
>>>> goto err;
>>>> }
>>>> if (ret > KVM_API_VERSION) {
>>>> ret = -EINVAL;
>>>> - fprintf(stderr, "kvm version not supported\n");
>>>> + error_report("kvm version not supported");
>>>> goto err;
>>>> }
>>>> @@ -2488,26 +2488,22 @@ static int kvm_init(MachineState *ms)
>>>> } while (ret == -EINTR);
>>>> if (ret < 0) {
>>>> - fprintf(stderr, "ioctl(KVM_CREATE_VM) failed: %d %s\n", -ret,
>>>> - strerror(-ret));
>>>> + error_report("ioctl(KVM_CREATE_VM) failed: %d %s", -ret,
>>>> + strerror(-ret));
>>>> #ifdef TARGET_S390X
>>>> if (ret == -EINVAL) {
>>>> - fprintf(stderr,
>>>> - "Host kernel setup problem detected. Please verify:\n");
>>>> - fprintf(stderr, "- for kernels supporting the switch_amode or"
>>>> - " user_mode parameters, whether\n");
>>>> - fprintf(stderr,
>>>> - " user space is running in primary address space\n");
>>>> - fprintf(stderr,
>>>> - "- for kernels supporting the vm.allocate_pgste sysctl, "
>>>> - "whether it is enabled\n");
>>>> + error_report("Host kernel setup problem detected.
>>>
>>> \n"
>>>
>>> Should we use error_printf_unless_qmp() for the following?
>>>
>>> " Please verify:");
>>>> + error_report("- for kernels supporting the switch_amode or"
>>>> + " user_mode parameters, whether");
>>>> + error_report(" user space is running in primary address space");
>>>> + error_report("- for kernels supporting the vm.allocate_pgste "
>>>> + "sysctl, whether it is enabled");
>>
>> Do not put newlines into error messages. error_report()'s function
>> comment demands "The resulting message should be a single phrase, with
>> no newline or trailing punctuation."
>>
>> You can do this:
>>
>> error_report(... the actual error message ...);
>> error_printf(... hints on what to do about it ...);
>>
>> Questions?
>
> Do you see any newlines in my proposed patch?
I see some in Philippe's suggestion.
Your patch's use of multiple error_report() for a single error condition
is inappropriate.
Questions?
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2024-08-27 12:27 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-09 6:49 [PATCH v3] kvm: replace fprintf with error_report/printf() in kvm_init() Ani Sinha
2024-08-09 8:35 ` Philippe Mathieu-Daudé
2024-08-12 9:53 ` Ani Sinha
2024-08-12 9:59 ` Ani Sinha
2024-08-16 6:21 ` Philippe Mathieu-Daudé
2024-08-21 3:38 ` Ani Sinha
2024-08-27 6:30 ` Markus Armbruster
2024-08-27 12:17 ` Ani Sinha
2024-08-27 12:26 ` Markus Armbruster
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).