From mboxrd@z Thu Jan 1 00:00:00 1970 From: Changlong Xie Subject: [PATCH v11 19/27] COLO: introduce new API to prepare/start/do/get_error/stop replication Date: Fri, 4 Mar 2016 16:41:23 +0800 Message-ID: <1457080891-26054-20-git-send-email-xiecl.fnst@cn.fujitsu.com> References: <1457080891-26054-1-git-send-email-xiecl.fnst@cn.fujitsu.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1457080891-26054-1-git-send-email-xiecl.fnst@cn.fujitsu.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen devel , Konrad Rzeszutek Wilk , Andrew Cooper , Ian Campbell , Ian Jackson , Wei Liu Cc: Lars Kurth , Changlong Xie , Wen Congyang , Gui Jianfeng , Jiang Yunhong , Dong Eddie , Anthony Perard , Shriram Rajagopalan , Yang Hongyang List-Id: xen-devel@lists.xenproject.org RnJvbTogV2VuIENvbmd5YW5nIDx3ZW5jeUBjbi5mdWppdHN1LmNvbT4KCldlIHdpbGwgdXNlIHFl bXUgYmxvY2sgcmVwbGljYXRpb24sIGFuZCBxZW11IHByb3ZpZGVzIHNvbWUgcW1wIGNvbW1hbmRz CnRvIHByZXBhcmUgcmVwbGljYXRpb24sIHN0YXJ0IHJlcGxpY2F0aW9uLCBnZXQgcmVwbGljYXRp b24gZXJyb3IsIGFuZApzdG9wIHJlcGxpY2F0aW9uLiBJbnRyb2R1Y2UgbmV3IEFQSSB0byBleGVj dXRlIHRoZXNlIHFtcCBjb21tYW5kcy4KClNpZ25lZC1vZmYtYnk6IFdlbiBDb25neWFuZyA8d2Vu Y3lAY24uZnVqaXRzdS5jb20+ClNpZ25lZC1vZmYtYnk6IENoYW5nbG9uZyBYaWUgPHhpZWNsLmZu c3RAY24uZnVqaXRzdS5jb20+CkFja2VkLWJ5OiBXZWkgTGl1IDx3ZWkubGl1MkBjaXRyaXguY29t PgotLS0KIHRvb2xzL2xpYnhsL2xpYnhsX2ludGVybmFsLmggfCAyMCArKysrKysrKysKIHRvb2xz L2xpYnhsL2xpYnhsX3FtcC5jICAgICAgfCA5NiArKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKwogMiBmaWxlcyBjaGFuZ2VkLCAxMTYgaW5zZXJ0aW9ucygrKQoKZGlm ZiAtLWdpdCBhL3Rvb2xzL2xpYnhsL2xpYnhsX2ludGVybmFsLmggYi90b29scy9saWJ4bC9saWJ4 bF9pbnRlcm5hbC5oCmluZGV4IDUxNjA5MzkuLjhjYjlmMTkgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2xp YnhsL2xpYnhsX2ludGVybmFsLmgKKysrIGIvdG9vbHMvbGlieGwvbGlieGxfaW50ZXJuYWwuaApA QCAtMTc3MSw2ICsxNzcxLDI2IEBAIF9oaWRkZW4gaW50IGxpYnhsX19xbXBfc2V0X2dsb2JhbF9k aXJ0eV9sb2cobGlieGxfX2djICpnYywgaW50IGRvbWlkLCBib29sIGVuYWJsCiBfaGlkZGVuIGlu dCBsaWJ4bF9fcW1wX2luc2VydF9jZHJvbShsaWJ4bF9fZ2MgKmdjLCBpbnQgZG9taWQsIGNvbnN0 IGxpYnhsX2RldmljZV9kaXNrICpkaXNrKTsKIC8qIEFkZCBhIHZpcnR1YWwgQ1BVICovCiBfaGlk ZGVuIGludCBsaWJ4bF9fcW1wX2NwdV9hZGQobGlieGxfX2djICpnYywgaW50IGRvbWlkLCBpbnQg aW5kZXgpOworLyogU3RhcnQgTkJEIHNlcnZlciAqLworX2hpZGRlbiBpbnQgbGlieGxfX3FtcF9u YmRfc2VydmVyX3N0YXJ0KGxpYnhsX19nYyAqZ2MsIGludCBkb21pZCwKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpob3N0LCBjb25zdCBjaGFyICpw b3J0KTsKKy8qIEFkZCBhIGRpc2sgdG8gTkJEIHNlcnZlciAqLworX2hpZGRlbiBpbnQgbGlieGxf X3FtcF9uYmRfc2VydmVyX2FkZChsaWJ4bF9fZ2MgKmdjLCBpbnQgZG9taWQsIGNvbnN0IGNoYXIg KmRpc2spOworLyogU3RhcnQgcmVwbGljYXRpb24gKi8KK19oaWRkZW4gaW50IGxpYnhsX19xbXBf c3RhcnRfcmVwbGljYXRpb24obGlieGxfX2djICpnYywgaW50IGRvbWlkLCBib29sIHByaW1hcnkp OworLyogR2V0IHJlcGxpY2F0aW9uIGVycm9yIHRoYXQgb2NjdXJzIHdoZW4gdGhlIHZtIGlzIHJ1 bm5pbmcgKi8KK19oaWRkZW4gaW50IGxpYnhsX19xbXBfZ2V0X3JlcGxpY2F0aW9uX2Vycm9yKGxp YnhsX19nYyAqZ2MsIGludCBkb21pZCk7CisvKiBEbyBjaGVja3BvaW50ICovCitfaGlkZGVuIGlu dCBsaWJ4bF9fcW1wX2RvX2NoZWNrcG9pbnQobGlieGxfX2djICpnYywgaW50IGRvbWlkKTsKKy8q IFN0b3AgcmVwbGljYXRpb24gKi8KK19oaWRkZW4gaW50IGxpYnhsX19xbXBfc3RvcF9yZXBsaWNh dGlvbihsaWJ4bF9fZ2MgKmdjLCBpbnQgZG9taWQsIGJvb2wgcHJpbWFyeSk7CisvKiBTdG9wIE5C RCBzZXJ2ZXIgKi8KK19oaWRkZW4gaW50IGxpYnhsX19xbXBfbmJkX3NlcnZlcl9zdG9wKGxpYnhs X19nYyAqZ2MsIGludCBkb21pZCk7CisvKiBBZGQgb3IgcmVtb3ZlIGEgY2hpbGQgdG8vZnJvbSBx dW9ydW0gKi8KK19oaWRkZW4gaW50IGxpYnhsX19xbXBfeF9ibG9ja2Rldl9jaGFuZ2UobGlieGxf X2djICpnYywgaW50IGRvbWlkLCBjb25zdCBjaGFyICpwYXJhbnQsCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoYXIgKmNoaWxkLCBjb25zdCBjaGFyICpu b2RlKTsKKy8qIHJ1biBhIGhtcCBjb21tYW5kIGluIHFtcCBtb2RlICovCitfaGlkZGVuIGludCBs aWJ4bF9fcW1wX2htcChsaWJ4bF9fZ2MgKmdjLCBpbnQgZG9taWQsIGNvbnN0IGNoYXIgKmNvbW1h bmRfbGluZSk7CiAvKiBjbG9zZSBhbmQgZnJlZSB0aGUgUU1QIGhhbmRsZXIgKi8KIF9oaWRkZW4g dm9pZCBsaWJ4bF9fcW1wX2Nsb3NlKGxpYnhsX19xbXBfaGFuZGxlciAqcW1wKTsKIC8qIHJlbW92 ZSB0aGUgc29ja2V0IGZpbGUsIGlmIHRoZSBmaWxlIGhhcyBhbHJlYWR5IGJlZW4gcmVtb3ZlZCwK ZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnhsL2xpYnhsX3FtcC5jIGIvdG9vbHMvbGlieGwvbGlieGxf cW1wLmMKaW5kZXggYzBiZGZjYi4uM2ViMjc5YSAxMDA2NDQKLS0tIGEvdG9vbHMvbGlieGwvbGli eGxfcW1wLmMKKysrIGIvdG9vbHMvbGlieGwvbGlieGxfcW1wLmMKQEAgLTk3OSw2ICs5NzksMTAy IEBAIGludCBsaWJ4bF9fcW1wX2NwdV9hZGQobGlieGxfX2djICpnYywgaW50IGRvbWlkLCBpbnQg aWR4KQogICAgIHJldHVybiBxbXBfcnVuX2NvbW1hbmQoZ2MsIGRvbWlkLCAiY3B1LWFkZCIsIGFy Z3MsIE5VTEwsIE5VTEwpOwogfQogCitpbnQgbGlieGxfX3FtcF9uYmRfc2VydmVyX3N0YXJ0KGxp YnhsX19nYyAqZ2MsIGludCBkb21pZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Y29uc3QgY2hhciAqaG9zdCwgY29uc3QgY2hhciAqcG9ydCkKK3sKKyAgICBsaWJ4bF9fanNvbl9v YmplY3QgKmFyZ3MgPSBOVUxMOworICAgIGxpYnhsX19qc29uX29iamVjdCAqYWRkciA9IE5VTEw7 CisgICAgbGlieGxfX2pzb25fb2JqZWN0ICpkYXRhID0gTlVMTDsKKworICAgIC8qICdhZGRyJzog eworICAgICAqICAgJ3R5cGUnOiAnaW5ldCcsCisgICAgICogICAnZGF0YSc6IHsKKyAgICAgKiAg ICAgJ2hvc3QnOiAnJG5iZF9ob3N0JywKKyAgICAgKiAgICAgJ3BvcnQnOiAnJG5iZF9wb3J0Jwor ICAgICAqICAgfQorICAgICAqIH0KKyAgICAgKi8KKyAgICBxbXBfcGFyYW1ldGVyc19hZGRfc3Ry aW5nKGdjLCAmZGF0YSwgImhvc3QiLCBob3N0KTsKKyAgICBxbXBfcGFyYW1ldGVyc19hZGRfc3Ry aW5nKGdjLCAmZGF0YSwgInBvcnQiLCBwb3J0KTsKKworICAgIHFtcF9wYXJhbWV0ZXJzX2FkZF9z dHJpbmcoZ2MsICZhZGRyLCAidHlwZSIsICJpbmV0Iik7CisgICAgcW1wX3BhcmFtZXRlcnNfY29t bW9uX2FkZChnYywgJmFkZHIsICJkYXRhIiwgZGF0YSk7CisKKyAgICBxbXBfcGFyYW1ldGVyc19j b21tb25fYWRkKGdjLCAmYXJncywgImFkZHIiLCBhZGRyKTsKKworICAgIHJldHVybiBxbXBfcnVu X2NvbW1hbmQoZ2MsIGRvbWlkLCAibmJkLXNlcnZlci1zdGFydCIsIGFyZ3MsIE5VTEwsIE5VTEwp OworfQorCitpbnQgbGlieGxfX3FtcF9uYmRfc2VydmVyX2FkZChsaWJ4bF9fZ2MgKmdjLCBpbnQg ZG9taWQsIGNvbnN0IGNoYXIgKmRpc2spCit7CisgICAgbGlieGxfX2pzb25fb2JqZWN0ICphcmdz ID0gTlVMTDsKKworICAgIHFtcF9wYXJhbWV0ZXJzX2FkZF9zdHJpbmcoZ2MsICZhcmdzLCAiZGV2 aWNlIiwgZGlzayk7CisgICAgcW1wX3BhcmFtZXRlcnNfYWRkX2Jvb2woZ2MsICZhcmdzLCAid3Jp dGFibGUiLCB0cnVlKTsKKworICAgIHJldHVybiBxbXBfcnVuX2NvbW1hbmQoZ2MsIGRvbWlkLCAi bmJkLXNlcnZlci1hZGQiLCBhcmdzLCBOVUxMLCBOVUxMKTsKK30KKworaW50IGxpYnhsX19xbXBf c3RhcnRfcmVwbGljYXRpb24obGlieGxfX2djICpnYywgaW50IGRvbWlkLCBib29sIHByaW1hcnkp Cit7CisgICAgbGlieGxfX2pzb25fb2JqZWN0ICphcmdzID0gTlVMTDsKKworICAgIHFtcF9wYXJh bWV0ZXJzX2FkZF9ib29sKGdjLCAmYXJncywgImVuYWJsZSIsIHRydWUpOworICAgIHFtcF9wYXJh bWV0ZXJzX2FkZF9ib29sKGdjLCAmYXJncywgInByaW1hcnkiLCBwcmltYXJ5KTsKKworICAgIHJl dHVybiBxbXBfcnVuX2NvbW1hbmQoZ2MsIGRvbWlkLCAieGVuLXNldC1yZXBsaWNhdGlvbiIsIGFy Z3MsIE5VTEwsIE5VTEwpOworfQorCitpbnQgbGlieGxfX3FtcF9nZXRfcmVwbGljYXRpb25fZXJy b3IobGlieGxfX2djICpnYywgaW50IGRvbWlkKQoreworICAgIHJldHVybiBxbXBfcnVuX2NvbW1h bmQoZ2MsIGRvbWlkLCAieGVuLWdldC1yZXBsaWNhdGlvbi1lcnJvciIsIE5VTEwsCisgICAgICAg ICAgICAgICAgICAgICAgICAgICBOVUxMLCBOVUxMKTsKK30KKworaW50IGxpYnhsX19xbXBfZG9f Y2hlY2twb2ludChsaWJ4bF9fZ2MgKmdjLCBpbnQgZG9taWQpCit7CisgICAgcmV0dXJuIHFtcF9y dW5fY29tbWFuZChnYywgZG9taWQsICJ4ZW4tZG8tY2hlY2twb2ludCIsIE5VTEwsIE5VTEwsIE5V TEwpOworfQorCitpbnQgbGlieGxfX3FtcF9zdG9wX3JlcGxpY2F0aW9uKGxpYnhsX19nYyAqZ2Ms IGludCBkb21pZCwgYm9vbCBwcmltYXJ5KQoreworICAgIGxpYnhsX19qc29uX29iamVjdCAqYXJn cyA9IE5VTEw7CisKKyAgICBxbXBfcGFyYW1ldGVyc19hZGRfYm9vbChnYywgJmFyZ3MsICJlbmFi bGUiLCBmYWxzZSk7CisgICAgcW1wX3BhcmFtZXRlcnNfYWRkX2Jvb2woZ2MsICZhcmdzLCAicHJp bWFyeSIsIHByaW1hcnkpOworCisgICAgcmV0dXJuIHFtcF9ydW5fY29tbWFuZChnYywgZG9taWQs ICJ4ZW4tc2V0LXJlcGxpY2F0aW9uIiwgYXJncywgTlVMTCwgTlVMTCk7Cit9CisKK2ludCBsaWJ4 bF9fcW1wX25iZF9zZXJ2ZXJfc3RvcChsaWJ4bF9fZ2MgKmdjLCBpbnQgZG9taWQpCit7CisgICAg cmV0dXJuIHFtcF9ydW5fY29tbWFuZChnYywgZG9taWQsICJuYmQtc2VydmVyLXN0b3AiLCBOVUxM LCBOVUxMLCBOVUxMKTsKK30KKworaW50IGxpYnhsX19xbXBfeF9ibG9ja2Rldl9jaGFuZ2UobGli eGxfX2djICpnYywgaW50IGRvbWlkLCBjb25zdCBjaGFyICpwYXJlbnQsCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGFyICpjaGlsZCwgY29uc3QgY2hhciAqbm9kZSkK K3sKKyAgICBsaWJ4bF9fanNvbl9vYmplY3QgKmFyZ3MgPSBOVUxMOworCisgICAgcW1wX3BhcmFt ZXRlcnNfYWRkX3N0cmluZyhnYywgJmFyZ3MsICJwYXJlbnQiLCBwYXJlbnQpOworICAgIGlmIChj aGlsZCkKKyAgICAgICAgcW1wX3BhcmFtZXRlcnNfYWRkX3N0cmluZyhnYywgJmFyZ3MsICJjaGls ZCIsIGNoaWxkKTsKKyAgICBpZiAobm9kZSkKKyAgICAgICAgcW1wX3BhcmFtZXRlcnNfYWRkX3N0 cmluZyhnYywgJmFyZ3MsICJub2RlIiwgbm9kZSk7CisKKyAgICByZXR1cm4gcW1wX3J1bl9jb21t YW5kKGdjLCBkb21pZCwgIngtYmxvY2tkZXYtY2hhbmdlIiwgYXJncywgTlVMTCwgTlVMTCk7Cit9 CisKK2ludCBsaWJ4bF9fcW1wX2htcChsaWJ4bF9fZ2MgKmdjLCBpbnQgZG9taWQsIGNvbnN0IGNo YXIgKmNvbW1hbmRfbGluZSkKK3sKKyAgICBsaWJ4bF9fanNvbl9vYmplY3QgKmFyZ3MgPSBOVUxM OworCisgICAgcW1wX3BhcmFtZXRlcnNfYWRkX3N0cmluZyhnYywgJmFyZ3MsICJjb21tYW5kLWxp bmUiLCBjb21tYW5kX2xpbmUpOworCisgICAgcmV0dXJuIHFtcF9ydW5fY29tbWFuZChnYywgZG9t aWQsICJodW1hbi1tb25pdG9yLWNvbW1hbmQiLCBhcmdzLAorICAgICAgICAgICAgICAgICAgICAg ICAgICAgTlVMTCwgTlVMTCk7Cit9CisKIGludCBsaWJ4bF9fcW1wX2luaXRpYWxpemF0aW9ucyhs aWJ4bF9fZ2MgKmdjLCB1aW50MzJfdCBkb21pZCwKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBjb25zdCBsaWJ4bF9kb21haW5fY29uZmlnICpndWVzdF9jb25maWcpCiB7Ci0tIAoxLjku MwoKCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVu LWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwOi8vbGlzdHMu eGVuLm9yZy94ZW4tZGV2ZWwK