From: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
To: Wen Congyang <wency@cn.fujitsu.com>
Cc: Kevin Wolf <kwolf@redhat.com>, Fam Zheng <famz@redhat.com>,
Wen Congyang <ghostwcy@gmail.com>,
qemu block <qemu-block@nongnu.org>,
Jiang Yunhong <yunhong.jiang@intel.com>,
Dong Eddie <eddie.dong@intel.com>,
qemu devel <qemu-devel@nongnu.org>,
"Michael R. Hines" <mrhines@linux.vnet.ibm.com>,
Max Reitz <mreitz@redhat.com>,
"Michael R. Hines" <mrhines@us.ibm.com>,
Stefan Hajnoczi <stefanha@redhat.com>,
Paolo Bonzini <pbonzini@redhat.com>,
Yang Hongyang <yanghy@cn.fujitsu.com>,
Lai Jiangshan <laijs@cn.fujitsu.com>
Subject: Re: [Qemu-devel] [PATCH COLO-BLOCK v7 00/17] Block replication for continuous checkpoints
Date: Thu, 9 Jul 2015 02:55:26 +0100 [thread overview]
Message-ID: <20150709015525.GF2741@work-vm> (raw)
In-Reply-To: <559DC78D.3060609@cn.fujitsu.com>
* Wen Congyang (wency@cn.fujitsu.com) wrote:
> On 07/08/2015 11:49 PM, Michael R. Hines wrote:
> > On 07/07/2015 08:38 PM, Wen Congyang wrote:
> >> On 07/08/2015 12:56 AM, Michael R. Hines wrote:
> >>> On 07/07/2015 04:23 AM, Paolo Bonzini wrote:
> >>>> On 07/07/2015 11:13, Dr. David Alan Gilbert wrote:
> >>>>>>> This log is very stange. The NBD client connects to NBD server, and NBD server wants to read data
> >>>>>>> from NBD client, but reading fails. It seems that the connection is closed unexpectedly. Can you
> >>>>>>> give me more log and how do you use it?
> >>>>> That was the same failure I was getting. I think it's that the NBD server and client are in different
> >>>>> modes, with one of them expecting the export.
> >>>> nbd_server_add always expects the export.
> >>>>
> >>>> Paolo
> >>>>
> >>> OK, Wen, so your wiki finally does reflect this, but now we're back to the "export not found error".
> >>>
> >>> Again, here's the exact command line:
> >>>
> >>> 1. First on the secondary VM:
> >>>
> >>> qemu-system-x86_64 .........snip........... -drive if=none,driver=qcow2,file=foo.qcow2,id=mc1,cache=none,aio=native -drive if=virtio,driver=replication,mode=secondary,throttling.bps-total-max=70000000,file.file.filename=active_disk.qcow2,file.driver=qcow2,file.backing.file.filename=hidden_disk.qcow2,file.backing.driver=qcow2,file.backing.allow-write-backing-file=on,file.backing.backing.backing_reference=mc1
> >>>
> >>> 2. Then, then HMP commands:
> >>>
> >>> nbd_server_start 0:6262
> >>> nbd_server_add -w mc1
> >>>
> >>> 3. Then the primary VM:
> >>>
> >>> qemu-system-x86_64 .........snip........... -drive if=virtio,driver=quorum,read-pattern=fifo,no-connect=on,children.0.file.filename=bar.qcow2,children.0.driver=qcow2,children.1.file.driver=nbd,children.1.file.host=127.0.0.1,children.1.file.port=6262,children.1.driver=replication,children.1.mode=primary,children.1.ignore-errors=on
> >>>
> >>> With the error: Server requires an export name
> >>>
> >>> *but*, your wiki has no export name on the primary VM size, so I added the export name back which is on your old wiki:
> >>>
> >>> qemu-system-x86_64 .........snip........... -drive if=virtio,driver=quorum,read-pattern=fifo,no-connect=on,children.0.file.filename=bar.qcow2,children.0.driver=qcow2,children.1.file.driver=nbd,children.1.file.export=mc1,children.1.file.host=127.0.0.1,children.1.file.port=6262,children.1.driver=replication,children.1.mode=primary,children.1.ignore-errors=on: Failed to read export length
> >>>
> >> Hmm, I think you use v7 version. Is it right?
> >> In this version, the correct useage for primary qemu is:
> >> 1. qemu-system-x86_64 .........snip........... -drive if=virtio,driver=quorum,read-pattern=fifo,id=disk1,
> >> children.0.file.filename=bar.qcow2,children.0.driver=qcow2,
> >>
> >> Then run hmp monitor command(It should be run after you run nbd_server_add in the secondary qemu):
> >> child_add disk1 child.driver=replication,child.mode=primary,child.file.host=127.0.0.1,child.file.port=6262,child.file.export=mc1,child.file.driver=nbd,child.ignore-errors=on
> >>
> >> Thanks
> >> Wen Congyang
> >>
> >>> And server now says:
> >>>
> >>> nbd.c:nbd_handle_export_name():L416: export not found
> >>> nbd.c:nbd_send_negotiate():L562: option negotiation failed
> >>>
> >>> .
> >>>
> >>
> >
> > OK, I'm totally confused at this point. =)
> >
> > Maybe it would be easier to just wait for your next clean patchset + documentation which is all consistent with each other.
>
> I have sent the v8. But the usage is not changed. You can setup the environment according to the wiki.
> When we open nbd client, we need to connect to the nbd server. So I introduce a new command child_add to add NBD client
> as a quorum child when the nbd server is ready.
>
> The nbd server is ready after you run the following command:
> nbd_server_start 0:6262 # the secondary qemu will listen to host:port
> nbd_server_add -w mc1 # the NBD server will know this disk is used as NBD server. The export name is its id wc1.
> # -w means we allow to write to this disk.
>
> Then you can run the following command in the primary qemu:
> child_add disk1 child.driver=replication,child.mode=primary,child.file.host=127.0.0.1,child.file.port=6262,child.file.export=mc1,child.file.driver=nbd,child.ignore-errors=on
>
> After this monitor command, nbd client has connected to the nbd server.
Ah! The 'child.file.export=mc1' wasn't there previously; I see Yang added that to the wiki yesterday;
that probably explains the problem that we've been having.
Dave
>
> Thanks
> Wen Congyang
>
> >
> > - Michael
> >
> > .
> >
>
>
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK
next prev parent reply other threads:[~2015-07-09 1:55 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-06-30 3:34 [Qemu-devel] [PATCH COLO-BLOCK v7 00/17] Block replication for continuous checkpoints Wen Congyang
2015-06-30 3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 01/17] Add new block driver interface to add/delete a BDS's child Wen Congyang
2015-06-30 3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 02/17] quorum: implement block driver interfaces " Wen Congyang
2015-07-02 14:02 ` Alberto Garcia
2015-07-02 14:30 ` Wen Congyang
2015-07-02 15:21 ` Alberto Garcia
2015-07-03 1:10 ` Wen Congyang
2015-07-27 14:45 ` Eric Blake
2015-06-30 3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 03/17] hmp: add monitor command to add/remove a child Wen Congyang
2015-06-30 3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 04/17] introduce a new API qemu_opts_absorb_qdict_by_index() Wen Congyang
2015-06-30 3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 05/17] quorum: allow ignoring child errors Wen Congyang
2015-06-30 3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 06/17] introduce a new API to enable/disable attach device model Wen Congyang
2015-06-30 3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 07/17] introduce a new API to check if blk is attached Wen Congyang
2015-06-30 3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 08/17] block: make bdrv_put_ref_bh_schedule() as a public API Wen Congyang
2015-06-30 3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 09/17] Backup: clear all bitmap when doing block checkpoint Wen Congyang
2015-06-30 3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 10/17] allow writing to the backing file Wen Congyang
2015-06-30 3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 11/17] Allow creating backup jobs when opening BDS Wen Congyang
2015-06-30 3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 12/17] block: Allow references for backing files Wen Congyang
2015-06-30 3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 13/17] docs: block replication's description Wen Congyang
2015-07-02 14:50 ` Michael R. Hines
2015-06-30 3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 14/17] Add new block driver interfaces to control block replication Wen Congyang
2015-06-30 3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 15/17] skip nbd_target when starting " Wen Congyang
2015-06-30 3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 16/17] quorum: implement block driver interfaces for " Wen Congyang
2015-07-03 12:21 ` Alberto Garcia
2015-06-30 3:34 ` [Qemu-devel] [PATCH COLO-BLOCK v7 17/17] Implement new driver " Wen Congyang
2015-07-02 14:47 ` [Qemu-devel] [PATCH COLO-BLOCK v7 00/17] Block replication for continuous checkpoints Michael R. Hines
2015-07-03 1:13 ` Wen Congyang
2015-07-02 14:59 ` Michael R. Hines
2015-07-03 1:12 ` Wen Congyang
2015-07-03 15:30 ` Dr. David Alan Gilbert
2015-07-04 12:46 ` Wen Congyang
2015-07-06 9:42 ` Dr. David Alan Gilbert
2015-07-06 10:11 ` Wen Congyang
2015-07-07 0:25 ` Michael R. Hines
2015-07-07 1:07 ` Wen Congyang
2015-07-07 9:13 ` Dr. David Alan Gilbert
2015-07-07 9:23 ` Paolo Bonzini
2015-07-07 16:56 ` Michael R. Hines
2015-07-08 1:38 ` Wen Congyang
2015-07-08 15:49 ` Michael R. Hines
2015-07-09 0:59 ` Wen Congyang
2015-07-09 1:55 ` Dr. David Alan Gilbert [this message]
2015-07-09 2:09 ` Wen Congyang
2015-07-09 9:16 ` Dr. David Alan Gilbert
2015-07-09 9:33 ` Wen Congyang
2015-07-09 10:37 ` Dr. David Alan Gilbert
2015-07-09 10:57 ` Wen Congyang
2015-07-09 13:40 ` Dr. David Alan Gilbert
2015-07-09 13:48 ` Wen Congyang
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=20150709015525.GF2741@work-vm \
--to=dgilbert@redhat.com \
--cc=eddie.dong@intel.com \
--cc=famz@redhat.com \
--cc=ghostwcy@gmail.com \
--cc=kwolf@redhat.com \
--cc=laijs@cn.fujitsu.com \
--cc=mreitz@redhat.com \
--cc=mrhines@linux.vnet.ibm.com \
--cc=mrhines@us.ibm.com \
--cc=pbonzini@redhat.com \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@redhat.com \
--cc=wency@cn.fujitsu.com \
--cc=yanghy@cn.fujitsu.com \
--cc=yunhong.jiang@intel.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).