From: Amit Shah <amit.shah@redhat.com>
To: "Michael S. Tsirkin" <mst@redhat.com>
Cc: quintela@redhat.com, qemu-devel@nongnu.org, kraxel@redhat.com
Subject: [Qemu-devel] Re: [PATCHv4 09/12] vhost: vhost net support
Date: Wed, 17 Mar 2010 09:39:52 +0530 [thread overview]
Message-ID: <20100317040952.GC20122@amit-x200.redhat.com> (raw)
In-Reply-To: <20100316153739.GA13674@redhat.com>
On (Tue) Mar 16 2010 [17:37:39], Michael S. Tsirkin wrote:
> On Mon, Mar 08, 2010 at 11:50:23AM +0530, Amit Shah wrote:
> > On (Sat) Mar 06 2010 [21:06:35], Michael S. Tsirkin wrote:
> > >
> > > > > + r = vhost_virtqueue_set_addr(dev, vq, idx, dev->log_enabled);
> > > > > + if (r < 0) {
> > > > > + r = -errno;
> > > > > + goto fail_alloc;
> > > > > + }
> > > > > + if (!vdev->binding->guest_notifier || !vdev->binding->host_notifier) {
> > > > > + fprintf(stderr, "binding does not support irqfd/queuefd\n");
> > > > > + r = -ENOSYS;
> > > > > + goto fail_alloc;
> > > > > + }
> > > >
> > > > This could be checked much earlier on in the function; so that we avoid
> > > > doing all that stuff above and the cleanup.
> > >
> > > Whatever order we put checks in, we'll have to undo stuff
> > > done beforehand on error.
> >
> > Not if you do this check before any ioctls or allocations.
> > !vdev->binding->guest_notifier is not dependent on anything you do above
> > it in this function, so just checking for this first thing in the
> > function will not need any cleanup.
>
> Yes, but I think it's clearer to do check function just before
> calling it. No?
The good thing about doing it before is that we can check for whatever
conditions are not met first and exit instead of doing N things and
undoing them later and then exiting -- faster and more efficient in the
case when vhost is not being used.
Amit
--
http://log.amitshah.net/
next prev parent reply other threads:[~2010-03-17 4:11 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-03-03 17:15 [Qemu-devel] [PATCHv4 00/12] vhost-net: upstream integration Michael S. Tsirkin
2010-03-03 17:15 ` [Qemu-devel] [PATCHv4 01/12] tap: add interface to get device fd Michael S. Tsirkin
2010-03-03 17:15 ` [Qemu-devel] [PATCHv4 02/12] kvm: add API to set ioeventfd Michael S. Tsirkin
2010-03-03 17:16 ` [Qemu-devel] [PATCHv4 03/12] notifier: event notifier implementation Michael S. Tsirkin
2010-03-05 12:03 ` [Qemu-devel] " Amit Shah
2010-03-03 17:16 ` [Qemu-devel] [PATCHv4 04/12] virtio: add notifier support Michael S. Tsirkin
2010-03-05 12:04 ` [Qemu-devel] " Amit Shah
2010-03-03 17:16 ` [Qemu-devel] [PATCHv4 05/12] virtio: add APIs for queue fields Michael S. Tsirkin
2010-03-05 12:10 ` [Qemu-devel] " Amit Shah
2010-03-06 19:09 ` Michael S. Tsirkin
2010-03-05 13:08 ` Amit Shah
2010-03-06 19:07 ` Michael S. Tsirkin
2010-03-08 6:16 ` Amit Shah
2010-03-08 18:11 ` Michael S. Tsirkin
2010-03-03 17:16 ` [Qemu-devel] [PATCHv4 06/12] virtio: add set_status callback Michael S. Tsirkin
2010-03-04 12:19 ` Amit Shah
2010-03-04 12:20 ` Michael S. Tsirkin
2010-03-03 17:16 ` [Qemu-devel] [PATCHv4 07/12] virtio: move typedef to qemu-common Michael S. Tsirkin
2010-03-04 12:20 ` Amit Shah
2010-03-04 12:19 ` Michael S. Tsirkin
2010-03-04 12:29 ` Amit Shah
2010-03-04 12:31 ` Michael S. Tsirkin
2010-03-03 17:16 ` [Qemu-devel] [PATCHv4 08/12] virtio-pci: fill in notifier support Michael S. Tsirkin
2010-03-03 17:16 ` [Qemu-devel] [PATCHv4 09/12] vhost: vhost net support Michael S. Tsirkin
2010-03-05 18:19 ` [Qemu-devel] " Amit Shah
2010-03-06 19:06 ` Michael S. Tsirkin
2010-03-08 6:20 ` Amit Shah
2010-03-16 15:37 ` Michael S. Tsirkin
2010-03-17 4:09 ` Amit Shah [this message]
2010-03-03 17:16 ` [Qemu-devel] [PATCHv4 10/12] tap: add vhost/vhostfd options Michael S. Tsirkin
2010-03-03 17:16 ` [Qemu-devel] [PATCHv4 11/12] tap: add API to retrieve vhost net header Michael S. Tsirkin
2010-03-03 17:16 ` [Qemu-devel] [PATCHv4 12/12] virtio-net: vhost net support Michael S. Tsirkin
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=20100317040952.GC20122@amit-x200.redhat.com \
--to=amit.shah@redhat.com \
--cc=kraxel@redhat.com \
--cc=mst@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=quintela@redhat.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).