All of lore.kernel.org
 help / color / mirror / Atom feed
From: Anthony Liguori <aliguori@us.ibm.com>
To: "Daniel P. Berrange" <berrange@redhat.com>
Cc: qemu-devel@nongnu.org, kraxel@redhat.com,
	Markus Armbruster <armbru@redhat.com>,
	Luiz Capitulino <lcapitulino@redhat.com>
Subject: Re: [Qemu-devel] [PATCH 7/9] qdev: Use QError for not found error
Date: Mon, 19 Oct 2009 09:00:33 -0500	[thread overview]
Message-ID: <4ADC7101.6020002@us.ibm.com> (raw)
In-Reply-To: <20091019101241.GA27871@redhat.com>

Daniel P. Berrange wrote:
> hink just returning error codes to the client is far too little
> information. I don't think we need the fully normalized structure
> that Luiz originally proposed with bus/dev addresses split out, but
> we certainly need to include a string description giving as much
> detail as possible.  If attaching a host USB device failed, I don't
> want a single error code  QERR_OPEN_FAILED, nor a generic message 
> like 'could not open device', i want the exact details, eg
>
>   'could not open device: permission denied' 
>   'could not open device: no such file or directory' 
>   'could not open device: device or resource busy' 
>
> The localization issue is somewhat of a red herring though. This string
> description is not something that clients would ultimately expose to the
> user. The client apps would likely present a more generic error message
> to the user, based off the error code. The error description received
> from QEMU will instead be written out to the logs as a record for later
> troubleshooting. eg if the user files a bug report, it will include the
> full error details, so libvirt/qemu maintainers have a better chance of
> figuring out what went wrong.
>   

But then advanced users end up doing silly things like analyzing libvirt 
logs.  Why do that when your own example is obviously "could not open 
device: %s", strerror(errno).   We should pass {"error" : {"type": 
"OpenFailedException", "errno": errno}}

-- 
Regards,

Anthony Liguori

  parent reply	other threads:[~2009-10-19 14:01 UTC|newest]

Thread overview: 63+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-10-13 16:56 [Qemu-devel] [PATCH v0 0/9] QError Luiz Capitulino
2009-10-13 16:56 ` [Qemu-devel] [PATCH 1/9] QDict: Introduce qdict_iter() Luiz Capitulino
2009-10-13 16:56 ` [Qemu-devel] [PATCH 2/9] check-qdict: Add test for qdict_iter() Luiz Capitulino
2009-10-13 16:57 ` [Qemu-devel] [PATCH 3/9] qmisc: Introduce qobject_from_va() Luiz Capitulino
2009-10-13 21:52   ` Markus Armbruster
2009-10-14 13:40     ` Luiz Capitulino
2009-10-14 14:27       ` [Qemu-devel] " Paolo Bonzini
2009-10-13 16:57 ` [Qemu-devel] [PATCH 4/9] Introduce QError Luiz Capitulino
2009-10-13 16:57 ` [Qemu-devel] [PATCH 5/9] monitor: QError support Luiz Capitulino
2009-10-13 21:59   ` Markus Armbruster
2009-10-14 13:14     ` [Qemu-devel] " Paolo Bonzini
2009-10-14 14:07       ` Markus Armbruster
2009-10-13 16:57 ` [Qemu-devel] [PATCH 6/9] QError: Add qdev not found error Luiz Capitulino
2009-10-14 23:02   ` Hollis Blanchard
2009-10-15 13:34     ` Luiz Capitulino
2009-10-15 17:16       ` Hollis Blanchard
2009-10-15 17:52         ` Luiz Capitulino
2009-10-15 18:13           ` Hollis Blanchard
2009-10-15 19:08             ` Luiz Capitulino
2009-10-15 20:13               ` Hollis Blanchard
2009-10-15 20:57                 ` Anthony Liguori
2009-10-15 21:18                   ` Hollis Blanchard
2009-10-15 21:27                     ` Anthony Liguori
2009-10-15 22:44                       ` Hollis Blanchard
2009-10-16  8:06                         ` [Qemu-devel] " Paolo Bonzini
2009-10-16 13:05                           ` Luiz Capitulino
2009-10-19 10:25                             ` Daniel P. Berrange
2009-10-19 12:28                               ` Luiz Capitulino
2009-10-19 12:42                                 ` Daniel P. Berrange
2009-10-16 13:39                           ` Anthony Liguori
2009-10-18  4:25                       ` [Qemu-devel] " Jamie Lokier
2009-10-18 12:17                         ` [Qemu-devel] " Paolo Bonzini
2009-10-19 16:50                           ` Hollis Blanchard
2009-10-19 21:16                             ` Paolo Bonzini
2009-10-16  7:30               ` [Qemu-devel] " Gerd Hoffmann
2009-10-16 12:39                 ` Luiz Capitulino
2009-10-16 13:34                   ` [Qemu-devel] " Paolo Bonzini
2009-10-16 13:37                 ` [Qemu-devel] " Anthony Liguori
2009-10-16 14:17                   ` Luiz Capitulino
2009-10-16 17:28                     ` [Qemu-devel] " Paolo Bonzini
2009-10-16 17:47                       ` Anthony Liguori
2009-10-16  8:02               ` Paolo Bonzini
2009-10-18  4:28                 ` Jamie Lokier
2009-10-18  4:34                   ` Jamie Lokier
2009-10-13 16:57 ` [Qemu-devel] [PATCH 7/9] qdev: Use QError for " Luiz Capitulino
2009-10-13 22:34   ` Markus Armbruster
2009-10-14 13:29     ` [Qemu-devel] " Paolo Bonzini
2009-10-14 16:42       ` Luiz Capitulino
2009-10-14 14:51     ` [Qemu-devel] " Luiz Capitulino
2009-10-19 10:12     ` Daniel P. Berrange
2009-10-19 10:40       ` Gerd Hoffmann
2009-10-19 10:47         ` Daniel P. Berrange
2009-10-19 11:22         ` [Qemu-devel] " Paolo Bonzini
2009-10-19 14:00       ` Anthony Liguori [this message]
2009-10-19 15:21         ` [Qemu-devel] " Daniel P. Berrange
2009-10-19 15:27           ` Anthony Liguori
2009-10-19 15:39             ` Daniel P. Berrange
2009-10-13 16:57 ` [Qemu-devel] [PATCH 8/9] QError: Add do_info_balloon() errors Luiz Capitulino
2009-10-13 16:57 ` [Qemu-devel] [PATCH 9/9] monitor: do_info_balloon(): use QError Luiz Capitulino
2009-10-15 19:24 ` [Qemu-devel] [PATCH v0 0/9] QError Anthony Liguori
2009-10-15 19:37   ` Luiz Capitulino
2009-10-19 13:13 ` Markus Armbruster
2009-10-19 14:11   ` Anthony Liguori

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=4ADC7101.6020002@us.ibm.com \
    --to=aliguori@us.ibm.com \
    --cc=armbru@redhat.com \
    --cc=berrange@redhat.com \
    --cc=kraxel@redhat.com \
    --cc=lcapitulino@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /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.