qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v5 27/29] hw/xen*: Replace fprintf(stderr, "*\n"


From: Thomas Huth
Subject: Re: [Qemu-devel] [PATCH v5 27/29] hw/xen*: Replace fprintf(stderr, "*\n" with error_report()
Date: Tue, 14 Nov 2017 08:47:18 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0

On 13.11.2017 23:36, Alistair Francis wrote:
> Replace a large number of the fprintf(stderr, "*\n" calls with
> error_report(). The functions were renamed with these commands and then
> compiler issues where manually fixed.
> 
> find ./* -type f -exec sed -i \
>     'N;N;N;N;N;N;N;N;N;N;N;N; {s|fprintf(stderr, 
> "\(.*\)\\n"\(.*\));|error_report("\1"\2);|Ig}' \
>     {} +
> find ./* -type f -exec sed -i \
>     'N;N;N;N;N;N;N;N;N;N;N; {s|fprintf(stderr, 
> "\(.*\)\\n"\(.*\));|error_report("\1"\2);|Ig}' \
>     {} +
> find ./* -type f -exec sed -i \
>     'N;N;N;N;N;N;N;N;N; {s|fprintf(stderr, 
> "\(.*\)\\n"\(.*\));|error_report("\1"\2);|Ig}' \
>     {} +
> find ./* -type f -exec sed -i \
>     'N;N;N;N;N;N;N;N; {s|fprintf(stderr, 
> "\(.*\)\\n"\(.*\));|error_report("\1"\2);|Ig}' \
>     {} +
> find ./* -type f -exec sed -i \
>     'N;N;N;N;N;N;N; {s|fprintf(stderr, 
> "\(.*\)\\n"\(.*\));|error_report("\1"\2);|Ig}' \
>     {} +
> find ./* -type f -exec sed -i \
>     'N;N;N;N;N;N; {s|fprintf(stderr, 
> "\(.*\)\\n"\(.*\));|error_report("\1"\2);|Ig}' \
>     {} +
> find ./* -type f -exec sed -i \
>     'N;N;N;N;N; {s|fprintf(stderr, 
> "\(.*\)\\n"\(.*\));|error_report("\1"\2);|Ig}' \
>     {} +
> find ./* -type f -exec sed -i \
>     'N;N;N;N; {s|fprintf(stderr, 
> "\(.*\)\\n"\(.*\));|error_report("\1"\2);|Ig}' \
>     {} +
> find ./* -type f -exec sed -i \
>     'N;N;N; {s|fprintf(stderr, "\(.*\)\\n"\(.*\));|error_report("\1"\2);|Ig}' 
> \
>     {} +
> find ./* -type f -exec sed -i \
>     'N;N; {s|fprintf(stderr, "\(.*\)\\n"\(.*\));|error_report("\1"\2);|Ig}' \
>     {} +
> find ./* -type f -exec sed -i \
>     'N; {s|fprintf(stderr, "\(.*\)\\n"\(.*\));|error_report("\1"\2);|Ig}' \
>     {} +
> 
> Some lines where then manually tweaked to pass checkpatch.
> 
> xen_pt_log() was left with an fprintf(stderr,
> 
> Signed-off-by: Alistair Francis <address@hidden>
> Cc: Stefano Stabellini <address@hidden>
> Cc: Anthony Perard <address@hidden>
> Acked-by: Anthony PERARD <address@hidden>
> ---
> V3:
>  - Don't change xen_pt_log()
> V2:
>  - Split hw patch into individual directories
> 
>  hw/xen/xen-common.c        | 11 ++++++-----
>  hw/xenpv/xen_domainbuild.c | 24 ++++++++++++------------
>  hw/xenpv/xen_machine_pv.c  |  9 +++++----
>  3 files changed, 23 insertions(+), 21 deletions(-)
> 
> diff --git a/hw/xen/xen-common.c b/hw/xen/xen-common.c
> index 632a938dcc..42ada2ac05 100644
> --- a/hw/xen/xen-common.c
> +++ b/hw/xen/xen-common.c
> @@ -9,6 +9,7 @@
>   */
>  
>  #include "qemu/osdep.h"
> +#include "qemu/error-report.h"
>  #include "hw/xen/xen_backend.h"
>  #include "qmp-commands.h"
>  #include "chardev/char.h"
> @@ -47,19 +48,19 @@ static int store_dev_info(int domid, Chardev *cs, const 
> char *string)
>      /* We now have everything we need to set the xenstore entry. */
>      xs = xs_open(0);
>      if (xs == NULL) {
> -        fprintf(stderr, "Could not contact XenStore\n");
> +        error_report("Could not contact XenStore");
>          goto out;
>      }
>  
>      path = xs_get_domain_path(xs, domid);
>      if (path == NULL) {
> -        fprintf(stderr, "xs_get_domain_path() error\n");
> +        error_report("xs_get_domain_path() error");
>          goto out;
>      }
>      newpath = realloc(path, (strlen(path) + strlen(string) +
>                  strlen("/tty") + 1));
>      if (newpath == NULL) {
> -        fprintf(stderr, "realloc error\n");
> +        error_report("realloc error");
>          goto out;
>      }
>      path = newpath;
> @@ -96,13 +97,13 @@ static void xenstore_record_dm_state(struct xs_handle 
> *xs, const char *state)
>      char path[50];
>  
>      if (xs == NULL) {
> -        fprintf(stderr, "xenstore connection not initialized\n");
> +        error_report("xenstore connection not initialized");
>          exit(1);
>      }
>  
>      snprintf(path, sizeof (path), "device-model/%u/state", xen_domid);
>      if (!xs_write(xs, XBT_NULL, path, state, strlen(state))) {
> -        fprintf(stderr, "error recording dm state\n");
> +        error_report("error recording dm state");
>          exit(1);
>      }
>  }
> diff --git a/hw/xenpv/xen_domainbuild.c b/hw/xenpv/xen_domainbuild.c
> index 027f76fad1..f5514ffec2 100644
> --- a/hw/xenpv/xen_domainbuild.c
> +++ b/hw/xenpv/xen_domainbuild.c
> @@ -25,22 +25,22 @@ static int xenstore_domain_mkdir(char *path)
>      int i;
>  
>      if (!xs_mkdir(xenstore, 0, path)) {
> -        fprintf(stderr, "%s: xs_mkdir %s: failed\n", __func__, path);
> -     return -1;
> +        error_report("%s: xs_mkdir %s: failed", __func__, path);
> +        return -1;
>      }
>      if (!xs_set_permissions(xenstore, 0, path, perms_ro, 2)) {
> -        fprintf(stderr, "%s: xs_set_permissions failed\n", __func__);
> -     return -1;
> +        error_report("%s: xs_set_permissions failed", __func__);
> +        return -1;
>      }

Bonus points for fixing the bad indentation of the return statements :-)

Patch looks fine to me!

Reviewed-by: Thomas Huth <address@hidden>



reply via email to

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