qemu-ppc
[Top][All Lists]
Advanced

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

Re: [PATCH 10/21] qapi: Inline QERR_INVALID_PARAMETER_VALUE definition (


From: Philippe Mathieu-Daudé
Subject: Re: [PATCH 10/21] qapi: Inline QERR_INVALID_PARAMETER_VALUE definition (constant value)
Date: Thu, 5 Oct 2023 06:27:49 +0200
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.15.1

On 4/10/23 20:15, Juan Quintela wrote:
Philippe Mathieu-Daudé <philmd@linaro.org> wrote:
Address the comment added in commit 4629ed1e98
("qerror: Finally unused, clean up"), from 2015:

   /*
    * These macros will go away, please don't use
    * in new code, and do not add new ones!
    */

Mechanical transformation using the following
coccinelle semantic patch:

     @match@
     expression errp;
     constant param;
     constant value;
     @@
          error_setg(errp, QERR_INVALID_PARAMETER_VALUE, param, value);

     @script:python strformat depends on match@
     param << match.param;
     value << match.value;
     fixedfmt; // new var
     @@
     fixedfmt = "\"Parameter '%s' expects %s\"" % (param[1:-1], value[1:-1])
     coccinelle.fixedfmt = cocci.make_ident(fixedfmt)

     @replace@
     expression match.errp;
     constant match.param;
     constant match.value;
     identifier strformat.fixedfmt;
     @@
     -    error_setg(errp, QERR_INVALID_PARAMETER_VALUE, param, value);
     +    error_setg(errp, fixedfmt);

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>

Reviewed-by: Juan Quintela <quintela@redhat.com>

And like the approach, but

      if (granularity != 0 && (granularity < 512 || granularity > 1048576 * 
64)) {
-        error_setg(errp, QERR_INVALID_PARAMETER_VALUE, "granularity",
-                   "a value in range [512B, 64MB]");
+        error_setg(errp,
+                   "Parameter 'granularity' expects a value in range [512B, 
64MB]");
          return;

There are several lines like this one that become way bigger than 80
characters.

Yes, I just realized I forgot to run checkpatch.pl :/

Now done, this is the single patch producing:

  ERROR: line over 90 characters

Later, Juan.

PD.  No, I have no clue about how to convince coccinelle to obey qemu
      indentation rules.

Well this use Python, so we could check the length and split (returning
some tuple) but:

  $ ./scripts/checkpatch.pl origin/master.. | fgrep 'ERROR:' | wc -l
        10

So I guess I'll just manually adapt :)



reply via email to

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