From: Paolo Bonzini <pbonzini@redhat.com>
To: mrhines@linux.vnet.ibm.com
Cc: aliguori@us.ibm.com, mst@redhat.com, quintela@redhat.com,
qemu-devel@nongnu.org, owasserm@redhat.com, abali@us.ibm.com,
mrhines@us.ibm.com, gokul@us.ibm.com
Subject: Re: [Qemu-devel] [PULL v4 08/11] rdma: core logic
Date: Thu, 18 Apr 2013 09:55:01 +0200 [thread overview]
Message-ID: <516FA6D5.8010307@redhat.com> (raw)
In-Reply-To: <1366240040-10730-9-git-send-email-mrhines@linux.vnet.ibm.com>
Il 18/04/2013 01:07, mrhines@linux.vnet.ibm.com ha scritto:
> +/*
> + * Virtual address of the above structures used for transmitting
> + * the RAMBlock descriptions at connection-time.
> + * This structure is *not* transmitted.
> + */
> +typedef struct RDMALocalBlocks {
> + int num_blocks;
> + RDMALocalBlock *block;
> +} RDMALocalBlocks;
> +
> +/*
> + * Same as above
> + */
> +typedef struct RDMARemoteBlocks {
> + RDMARemoteBlock *block;
> + void *remote_area;
> +} RDMARemoteBlocks;
block and remote_area can be reduced to a single pointer.
> + if (rdma == NULL) {
> + goto err;
> + }
> +
> + ret = qemu_rdma_source_init(rdma, NULL,
> + s->enabled_capabilities[MIGRATION_CAPABILITY_X_CHUNK_REGISTER_DESTINATION]);
> +
> + if (ret) {
> + goto err;
> + }
> +
> + DPRINTF("qemu_rdma_source_init success\n");
> + ret = qemu_rdma_connect(rdma, NULL);
The usage of error_setg is correct, but here you must pass your errp
down to qemu_rdma_source_init and qemu_rdma_connect. You can then
remove this:
+ error_setg(errp, "Error connecting using rdma! %d\n", ret);
because the error was already set in the callees.
Also, you should use the Error API also on the destination side, where
rdma_start_incoming_migration can pass errp to qemu_rdma_dest_prepare or
set it itself instead of printing to stderr.
The reason is that when using a management layer stderr will be logged
but not printed to the operator's console. Instead, Errors are sent on
the monitor connection. The management layer(s) then pick up the error
and propagate it through the various APIs until they appear in the
terminal/browser/whatever.
Nothing else from me.
Paolo
next prev parent reply other threads:[~2013-04-18 7:55 UTC|newest]
Thread overview: 54+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-04-17 23:07 [Qemu-devel] [PULL v4 00/11] rdma: migration support mrhines
2013-04-17 23:07 ` [Qemu-devel] [PULL v4 01/11] rdma: export yield_until_fd_readable() mrhines
2013-04-17 23:07 ` [Qemu-devel] [PULL v4 02/11] rdma: introduce qemu_ram_foreach_block() mrhines
2013-04-17 23:07 ` [Qemu-devel] [PULL v4 03/11] rdma: introduce qemu_file_mode_is_not_valid() mrhines
2013-04-17 23:07 ` [Qemu-devel] [PULL v4 04/11] rdma: export ram_handle_compressed() mrhines
2013-04-17 23:07 ` [Qemu-devel] [PULL v4 05/11] rdma: export qemu_fflush() mrhines
2013-04-17 23:07 ` [Qemu-devel] [PULL v4 06/11] rdma: new QEMUFileOps hooks mrhines
2013-04-17 23:07 ` [Qemu-devel] [PULL v4 07/11] rdma: introduce capability for chunk registration mrhines
2013-04-18 22:07 ` Eric Blake
2013-04-19 0:34 ` Michael R. Hines
2013-04-20 17:02 ` Michael S. Tsirkin
2013-04-21 13:19 ` Paolo Bonzini
2013-04-21 14:17 ` Michael S. Tsirkin
2013-04-21 17:19 ` Michael R. Hines
2013-04-21 19:13 ` Michael S. Tsirkin
2013-04-21 16:05 ` Michael R. Hines
2013-04-21 18:59 ` Michael S. Tsirkin
2013-04-21 19:55 ` Michael R. Hines
2013-04-21 16:06 ` Michael R. Hines
2013-04-17 23:07 ` [Qemu-devel] [PULL v4 08/11] rdma: core logic mrhines
2013-04-18 7:55 ` Paolo Bonzini [this message]
2013-04-18 13:57 ` Michael R. Hines
2013-04-18 7:58 ` Michael S. Tsirkin
2013-04-18 13:59 ` Michael R. Hines
2013-04-18 13:06 ` Michael S. Tsirkin
2013-04-18 14:14 ` Michael R. Hines
2013-04-18 13:32 ` Michael S. Tsirkin
2013-04-18 14:45 ` Michael R. Hines
2013-04-18 13:52 ` Michael S. Tsirkin
2013-04-18 15:14 ` Anthony Liguori
2013-04-18 14:53 ` [Qemu-devel] licensing of IBM contributions to QEMU (was Re: [PULL v4 08/11] rdma: core logic) Paolo Bonzini
2013-04-18 19:15 ` Michael R. Hines
2013-04-19 0:35 ` Anthony Liguori
2013-04-18 8:44 ` [Qemu-devel] [PULL v4 08/11] rdma: core logic Orit Wasserman
2013-04-18 13:54 ` Michael R. Hines
2013-04-18 15:51 ` Orit Wasserman
2013-04-18 19:41 ` Michael R. Hines
2013-04-18 22:12 ` Eric Blake
2013-04-19 0:35 ` Michael R. Hines
2013-04-17 23:07 ` [Qemu-devel] [PULL v4 09/11] rdma: send pc.ram mrhines
2013-04-17 23:07 ` [Qemu-devel] [PULL v4 10/11] rdma: print out throughput while debugging mrhines
2013-04-17 23:07 ` [Qemu-devel] [PULL v4 11/11] rdma: add documentation mrhines
2013-04-18 6:55 ` Michael S. Tsirkin
2013-04-19 0:57 ` Michael R. Hines
2013-04-17 23:39 ` [Qemu-devel] [PULL v4 00/11] rdma: migration support Anthony Liguori
2013-04-18 13:46 ` Michael R. Hines
2013-04-18 7:00 ` Michael S. Tsirkin
2013-04-18 13:49 ` Michael R. Hines
2013-04-18 13:50 ` Michael S. Tsirkin
2013-04-18 19:17 ` Michael R. Hines
2013-04-18 20:12 ` Michael S. Tsirkin
2013-04-18 21:28 ` Michael R. Hines
2013-04-18 20:33 ` Michael S. Tsirkin
2013-04-18 14:36 ` Michael R. Hines
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=516FA6D5.8010307@redhat.com \
--to=pbonzini@redhat.com \
--cc=abali@us.ibm.com \
--cc=aliguori@us.ibm.com \
--cc=gokul@us.ibm.com \
--cc=mrhines@linux.vnet.ibm.com \
--cc=mrhines@us.ibm.com \
--cc=mst@redhat.com \
--cc=owasserm@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 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.