From mboxrd@z Thu Jan 1 00:00:00 1970 From: Joao Martins Subject: [PATCH RFC 38/39] xen-blkback: xen_shim_domain() support Date: Wed, 20 Feb 2019 20:16:08 +0000 Message-ID: <20190220201609.28290-39-joao.m.martins__28974.4610244938$1550693989$gmane$org@oracle.com> References: <20190220201609.28290-1-joao.m.martins@oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1gwYKa-0006Cy-FV for xen-devel@lists.xenproject.org; Wed, 20 Feb 2019 20:19:00 +0000 In-Reply-To: <20190220201609.28290-1-joao.m.martins@oracle.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: kvm@vger.kernel.org, linux-kernel@vger.kernel.org, xen-devel@lists.xenproject.org Cc: Konrad Rzeszutek Wilk , =?UTF-8?q?Radim=20Kr=C4=8Dm=C3=A1=C5=99?= , Ankur Arora , Paolo Bonzini , Boris Ostrovsky , Joao Martins , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= List-Id: xen-devel@lists.xenproject.org V2l0aCB4ZW5fc2hpbV9kb21haW4oKSBlbmFibGVkLCB0aGUgc3RydWN0IHBhZ2VzIHVzZWQgZm9y IGdyYW50IG1hcHBpbmdzCmFyZSBvbmx5IHZhbGlkIGluIHRoZSBpbnRlcnZhbCBiZXR3ZWVuIEdO VFRBQk9QX21hcF9ncmFudF9yZWYgYW5kCkdOVFRBQk9QX3VubWFwX2dyYW50X3JlZi4KCkVuc3Vy ZSB0aGF0IHdlIGRvIG5vdCBjYWNoZSB0aGUgc3RydWN0IHBhZ2Ugb3V0c2lkZSB0aGF0IGR1cmF0 aW9uLgoKQWxzbywgdXBkYXRlIHRoZSBzdHJ1Y3QgcGFnZSBmb3IgdGhlIHNlZ21lbnQgYWZ0ZXIK R05UVEFCT1BfbWFwX2dyYW50X3JlZiwgZm9yIHRoZSBzdWJzZXF1ZW50IHRyYWNraW5nIG9yIHdo ZW4gZG9pbmcgSU8uCgpJbiBhZGRpdGlvbiwgd2UgZGlzYWJsZSBwZXJzaXN0ZW50IGdyYW50cyBm b3IgdGhpcyBjb25maWd1cmF0aW9uLCBzaW5jZQp0aGUgbWFwL3VubWFwIG92ZXJoZWFkIGlzIGZh aXJseSBzbWFsbCAoaW4gdGhlIGZhc3QgcGF0aCwgcGFnZSBsb29rdXAsCmdldF9wYWdlKCkgYW5k IHB1dF9wYWdlKCkuKSBUaGlzIHJlZHVjZXMgdGhlIG1lbW9yeSB1c2FnZSBpbgpibGtiYWNrL2Js a2Zyb250LgoKQ28tZGV2ZWxvcGVkLWJ5OiBBbmt1ciBBcm9yYSA8YW5rdXIuYS5hcm9yYUBvcmFj bGUuY29tPgpTaWduZWQtb2ZmLWJ5OiBKb2FvIE1hcnRpbnMgPGpvYW8ubS5tYXJ0aW5zQG9yYWNs ZS5jb20+ClNpZ25lZC1vZmYtYnk6IEFua3VyIEFyb3JhIDxhbmt1ci5hLmFyb3JhQG9yYWNsZS5j b20+Ci0tLQogZHJpdmVycy9ibG9jay94ZW4tYmxrYmFjay9ibGtiYWNrLmMgfCAxOSArKysrKysr KysrKysrKysrLS0tCiBkcml2ZXJzL2Jsb2NrL3hlbi1ibGtiYWNrL3hlbmJ1cy5jICB8ICA1ICsr Ky0tCiAyIGZpbGVzIGNoYW5nZWQsIDE5IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ibG9jay94ZW4tYmxrYmFjay9ibGtiYWNrLmMgYi9kcml2ZXJz L2Jsb2NrL3hlbi1ibGtiYWNrL2Jsa2JhY2suYwppbmRleCBkNTFkODhiZTg4ZTEuLjIwYzE1ZTY3 ODdiMSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ibG9jay94ZW4tYmxrYmFjay9ibGtiYWNrLmMKKysr IGIvZHJpdmVycy9ibG9jay94ZW4tYmxrYmFjay9ibGtiYWNrLmMKQEAgLTE2Nyw2ICsxNjcsMTUg QEAgc3RhdGljIGlubGluZSB2b2lkIHB1dF9mcmVlX3BhZ2VzKHN0cnVjdCB4ZW5fYmxraWZfcmlu ZyAqcmluZywgc3RydWN0IHBhZ2UgKipwYWcKIAl1bnNpZ25lZCBsb25nIGZsYWdzOwogCWludCBp OwogCisJLyoKKwkgKiBXZSBkb24ndCBvd24gdGhlIHN0cnVjdCBwYWdlIGFmdGVyIHVubWFwIGhh cyBiZWVuIGNhbGxlZC4KKwkgKiBSZWFsbG9jYXRpb24gaXMgY2hlYXAgYW55d2F5IGZvciB0aGUg c2hpbSBkb21haW4gY2FzZSwgc28gZnJlZSBpdC4KKwkgKi8KKwlpZiAoeGVuX3NoaW1fZG9tYWlu KCkpIHsKKwkJZ250dGFiX2ZyZWVfcGFnZXMobnVtLCBwYWdlKTsKKwkJcmV0dXJuOworCX0KKwog CXNwaW5fbG9ja19pcnFzYXZlKCZyaW5nLT5mcmVlX3BhZ2VzX2xvY2ssIGZsYWdzKTsKIAlmb3Ig KGkgPSAwOyBpIDwgbnVtOyBpKyspCiAJCWxpc3RfYWRkKCZwYWdlW2ldLT5scnUsICZyaW5nLT5m cmVlX3BhZ2VzKTsKQEAgLTgyNSw3ICs4MzQsNyBAQCBzdGF0aWMgaW50IHhlbl9ibGtia19tYXAo c3RydWN0IHhlbl9ibGtpZl9yaW5nICpyaW5nLAogCSAqLwogYWdhaW46CiAJZm9yIChpID0gbWFw X3VudGlsOyBpIDwgbnVtOyBpKyspIHsKLQkJdWludDMyX3QgZmxhZ3M7CisJCXVpbnQzMl90IGZs YWdzID0gMDsKIAogCQlpZiAodXNlX3BlcnNpc3RlbnRfZ250cykgewogCQkJcGVyc2lzdGVudF9n bnQgPSBnZXRfcGVyc2lzdGVudF9nbnQoCkBAIC04NDYsNyArODU1LDggQEAgc3RhdGljIGludCB4 ZW5fYmxrYmtfbWFwKHN0cnVjdCB4ZW5fYmxraWZfcmluZyAqcmluZywKIAkJCWFkZHIgPSB2YWRk cihwYWdlc1tpXS0+cGFnZSk7CiAJCQlwYWdlc190b19nbnRbc2Vnc190b19tYXBdID0gcGFnZXNb aV0tPnBhZ2U7CiAJCQlwYWdlc1tpXS0+cGVyc2lzdGVudF9nbnQgPSBOVUxMOwotCQkJZmxhZ3Mg PSBHTlRNQVBfaG9zdF9tYXA7CisJCQlpZiAoIXhlbl9zaGltX2RvbWFpbigpKQorCQkJCWZsYWdz ID0gR05UTUFQX2hvc3RfbWFwOwogCQkJaWYgKCF1c2VfcGVyc2lzdGVudF9nbnRzICYmIHJvKQog CQkJCWZsYWdzIHw9IEdOVE1BUF9yZWFkb25seTsKIAkJCWdudHRhYl9zZXRfbWFwX29wKCZtYXBb c2Vnc190b19tYXArK10sIGFkZHIsCkBAIC04ODAsNiArODkwLDggQEAgc3RhdGljIGludCB4ZW5f YmxrYmtfbWFwKHN0cnVjdCB4ZW5fYmxraWZfcmluZyAqcmluZywKIAkJCQlnb3RvIG5leHQ7CiAJ CQl9CiAJCQlwYWdlc1tzZWdfaWR4XS0+aGFuZGxlID0gbWFwW25ld19tYXBfaWR4XS5oYW5kbGU7 CisJCQlpZiAoeGVuX3NoaW1fZG9tYWluKCkpCisJCQkJcGFnZXNbc2VnX2lkeF0tPnBhZ2UgPSBw YWdlc190b19nbnRbbmV3X21hcF9pZHhdOwogCQl9IGVsc2UgewogCQkJY29udGludWU7CiAJCX0K QEAgLTE0NzgsNyArMTQ5MCw3IEBAIHN0YXRpYyBpbnQgX19pbml0IHhlbl9ibGtpZl9pbml0KHZv aWQpCiB7CiAJaW50IHJjID0gMDsKIAotCWlmICgheGVuX2RvbWFpbigpKQorCWlmICgheGVuX2Rv bWFpbigpICYmICF4ZW5fc2hpbV9kb21haW5fZ2V0KCkpCiAJCXJldHVybiAtRU5PREVWOwogCiAJ aWYgKHhlbl9ibGtpZl9tYXhfcmluZ19vcmRlciA+IFhFTkJVU19NQVhfUklOR19HUkFOVF9PUkRF UikgewpAQCAtMTUwOCw2ICsxNTIwLDcgQEAgc3RhdGljIHZvaWQgX19leGl0IHhlbl9ibGtpZl9l eGl0KHZvaWQpCiB7CiAJeGVuX2Jsa2lmX2ludGVyZmFjZV9leGl0KCk7CiAJeGVuX2Jsa2lmX3hl bmJ1c19leGl0KCk7CisJeGVuX3NoaW1fZG9tYWluX3B1dCgpOwogfQogCiBtb2R1bGVfZXhpdCh4 ZW5fYmxraWZfZXhpdCk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2Jsb2NrL3hlbi1ibGtiYWNrL3hl bmJ1cy5jIGIvZHJpdmVycy9ibG9jay94ZW4tYmxrYmFjay94ZW5idXMuYwppbmRleCA0MjRlMmVm ZWJlODUuLjExYmUwYzA1MmI3NyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ibG9jay94ZW4tYmxrYmFj ay94ZW5idXMuYworKysgYi9kcml2ZXJzL2Jsb2NrL3hlbi1ibGtiYWNrL3hlbmJ1cy5jCkBAIC04 NzEsNyArODcxLDggQEAgc3RhdGljIHZvaWQgY29ubmVjdChzdHJ1Y3QgYmFja2VuZF9pbmZvICpi ZSkKIAogCXhlbl9ibGtia19iYXJyaWVyKHhidCwgYmUsIGJlLT5ibGtpZi0+dmJkLmZsdXNoX3N1 cHBvcnQpOwogCi0JZXJyID0geGVuYnVzX3ByaW50Zih4YnQsIGRldi0+bm9kZW5hbWUsICJmZWF0 dXJlLXBlcnNpc3RlbnQiLCAiJXUiLCAxKTsKKwllcnIgPSB4ZW5idXNfcHJpbnRmKHhidCwgZGV2 LT5ub2RlbmFtZSwgImZlYXR1cmUtcGVyc2lzdGVudCIsICIldSIsCisJCQkgICAgIXhlbl9zaGlt X2RvbWFpbigpKTsKIAlpZiAoZXJyKSB7CiAJCXhlbmJ1c19kZXZfZmF0YWwoZGV2LCBlcnIsICJ3 cml0aW5nICVzL2ZlYXR1cmUtcGVyc2lzdGVudCIsCiAJCQkJIGRldi0+bm9kZW5hbWUpOwpAQCAt MTA1OSw3ICsxMDYwLDcgQEAgc3RhdGljIGludCBjb25uZWN0X3Jpbmcoc3RydWN0IGJhY2tlbmRf aW5mbyAqYmUpCiAJfQogCXBlcnNfZ3JhbnRzID0geGVuYnVzX3JlYWRfdW5zaWduZWQoZGV2LT5v dGhlcmVuZCwgImZlYXR1cmUtcGVyc2lzdGVudCIsCiAJCQkJCSAgIDApOwotCWJlLT5ibGtpZi0+ dmJkLmZlYXR1cmVfZ250X3BlcnNpc3RlbnQgPSBwZXJzX2dyYW50czsKKwliZS0+YmxraWYtPnZi ZC5mZWF0dXJlX2dudF9wZXJzaXN0ZW50ID0gcGVyc19ncmFudHMgJiYgIXhlbl9zaGltX2RvbWFp bigpOwogCWJlLT5ibGtpZi0+dmJkLm92ZXJmbG93X21heF9ncmFudHMgPSAwOwogCiAJLyoKLS0g CjIuMTEuMAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f Clhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0 dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw=