[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] numa: Add missing \n to error message

From: Philippe Mathieu-Daudé
Subject: Re: [PATCH] numa: Add missing \n to error message
Date: Wed, 6 Nov 2019 15:35:47 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.1.1

On 11/6/19 3:20 PM, Laurent Vivier wrote:
Le 06/11/2019 à 15:12, Greg Kurz a écrit :
On Wed, 6 Nov 2019 14:01:01 +0100
Laurent Vivier <address@hidden> wrote:

Le 06/11/2019 à 13:46, Greg Kurz a écrit :
If memory allocation fails when using -mem-path, QEMU is supposed to print
out a message to indicate that fallback to anonymous RAM is deprecated. This
is done with error_printf() which does output buffering. As a consequence,
the message is only printed at the next flush, eg. when quiting QEMU, and
it also lacks a trailing newline:

qemu-system-ppc64: unable to map backing store for guest RAM: Cannot allocate 
qemu-system-ppc64: warning: falling back to regular RAM allocation
QEMU 4.1.50 monitor - type 'help' for more information
(qemu) q
This is deprecated. Make sure that -mem-path  specified path has sufficient 
resources to allocate -m specified RAM amountgreg@boss02:~/Work/qemu/qemu-spapr$

Add the missing \n to fix both issues.

Fixes: cb79224b7e4b "deprecate -mem-path fallback to anonymous RAM"
Signed-off-by: Greg Kurz <address@hidden>
  hw/core/numa.c |    2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/hw/core/numa.c b/hw/core/numa.c
index 038c96d4abc6..e3332a984f7c 100644
--- a/hw/core/numa.c
+++ b/hw/core/numa.c
@@ -503,7 +503,7 @@ static void allocate_system_memory_nonnuma(MemoryRegion 
*mr, Object *owner,
              warn_report("falling back to regular RAM allocation");
              error_printf("This is deprecated. Make sure that -mem-path "
                           " specified path has sufficient resources to 
-                         " -m specified RAM amount");
+                         " -m specified RAM amount\n");
              /* Legacy behavior: if allocation failed, fall back to
               * regular RAM allocation.

Why is this an error_printf() and not an error_report()?

Because CODING_STYLE suggests to do so I guess:

Reporting errors to the human user

Do not use printf(), fprintf() or monitor_printf().  Instead, use
error_report() or error_vreport() from error-report.h.  This ensures the
error is reported in the right place (current monitor or stderr), and in
a uniform format.

Use error_printf() & friends to print additional information. <===

error_report() prints the current location.  In certain common cases
like command line parsing, the current location is tracked
automatically.  To manipulate it manually, use the loc_``*``() from

So I guess it's to not report the current location and the binary name .

Reviewed-by: Laurent Vivier <address@hidden>

Reviewed-by: Philippe Mathieu-Daudé <address@hidden>

reply via email to

[Prev in Thread] Current Thread [Next in Thread]