All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Cao,Bing Bu" <mars@linux.vnet.ibm.com>
To: shu ming <shuming@linux.vnet.ibm.com>
Cc: QEMU Developers <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] Abnormal function exit message in Qemu block drivers code
Date: Thu, 27 Oct 2011 16:05:57 +0800	[thread overview]
Message-ID: <4EA910E5.9080909@linux.vnet.ibm.com> (raw)
In-Reply-To: <4EA8F73E.9010607@linux.vnet.ibm.com>

On 10/27/2011 02:16 PM, shu ming wrote:
> Hi,
>   After reading the block driver code in,  it was found that the error 
> exit code behaved in different ways.  Here are some examples.  It 
> seems that way 3 is a better way to log the error message.  In fact,  
> It is pretty important for a administrator to know what is going on 
> and be informed the error when that happens. I believe  we should 
> convert all the error exit code to way 3 gradually and make all the 
> new code to follow an unique standard.
>   Further more, really, some errors can be ignored while others can 
> not.  So we can have a more flexible function to classify the level of 
> the error message like
> error_report(log_level,  "string format", string);
>
> 1)The error code exited silently.
>
> case QCOW2_EXT_MAGIC_BACKING_FORMAT:
>             if (ext.len >= sizeof(bs->backing_format)) {
>                 fprintf(stderr, "ERROR: ext_backing_format: len=%u too 
> large"
>                         " (>=%zu)\n",
>                         ext.len, sizeof(bs->backing_format));
>                 return 2;
>             }

The example of the first way looks like not correct.

     case QCOW2_EXT_MAGIC_BACKING_FORMAT:
         if (ext.len >= sizeof(bs->backing_format)) {
-           fprintf(stderr, "ERROR: ext_backing_format: len=%u too large"
-                      " (>=%zu)\n",
-                       ext.len, sizeof(bs->backing_format));
             return 2;
         }

> 2)  fprintf() to emit the error message
>
> case QCOW2_EXT_MAGIC_BACKING_FORMAT:
>             if (ext.len >= sizeof(bs->backing_format)) {
>                 fprintf(stderr, "ERROR: ext_backing_format: len=%u too 
> large"
>                         " (>=%zu)\n",
>                         ext.len, sizeof(bs->backing_format));
>                 return 2;
> 3) A error_report() function to emit the error message.
>
> /* Find driver and parse its options */
>     drv = bdrv_find_format(fmt);
>     if (!drv) {
>         error_report("Unknown file format '%s'", fmt);
>         ret = -EINVAL;
>         goto out;
>     }
>
>
>

      reply	other threads:[~2011-10-27  8:07 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-10-27  6:16 [Qemu-devel] Abnormal function exit message in Qemu block drivers code shu ming
2011-10-27  8:05 ` Cao,Bing Bu [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4EA910E5.9080909@linux.vnet.ibm.com \
    --to=mars@linux.vnet.ibm.com \
    --cc=qemu-devel@nongnu.org \
    --cc=shuming@linux.vnet.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.