From mboxrd@z Thu Jan 1 00:00:00 1970 From: George Dunlap Subject: Re: [PATCH V15 4/6] libxl: add pvusb API Date: Wed, 2 Mar 2016 18:32:17 +0000 Message-ID: <56D731B1.60009@citrix.com> References: <1456819787-11568-1-git-send-email-cyliu@suse.com> <1456819787-11568-5-git-send-email-cyliu@suse.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1456819787-11568-5-git-send-email-cyliu@suse.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Chunyan Liu , xen-devel@lists.xen.org Cc: jgross@suse.com, wei.liu2@citrix.com, ian.campbell@citrix.com, george.dunlap@eu.citrix.com, Ian.Jackson@eu.citrix.com, jfehlig@suse.com, Simon Cao List-Id: xen-devel@lists.xenproject.org T24gMDEvMDMvMTYgMDg6MDksIENodW55YW4gTGl1IHdyb3RlOgo+IEFkZCBwdnVzYiBBUElzLCBp bmNsdWRpbmc6Cj4gIC0gYXR0YWNoL2RldGFjaCAoY3JlYXRlL2Rlc3Ryb3kpIHZpcnR1YWwgdXNi IGNvbnRyb2xsZXIuCj4gIC0gYXR0YWNoL2RldGFjaCB1c2IgZGV2aWNlCj4gIC0gbGlzdCB1c2Ig Y29udHJvbGxlciBhbmQgdXNiIGRldmljZXMKPiAgLSBzb21lIG90aGVyIGhlbHBlciBmdW5jdGlv bnMKPiAKPiBTaWduZWQtb2ZmLWJ5OiBTaW1vbiBDYW8gPGNhb2Jvc2ltb25AZ21haWwuY29tPgo+ IFNpZ25lZC1vZmYtYnk6IEdlb3JnZSBEdW5sYXAgPGdlb3JnZS5kdW5sYXBAY2l0cml4LmNvbT4K PiBTaWduZWQtb2ZmLWJ5OiBDaHVueWFuIExpdSA8Y3lsaXVAc3VzZS5jb20+Cj4gLS0tCj4gQ2hh bmdlczoKPiAgIHJlb3JkZXIgdXNiZGV2X3JlbW92ZSB0byBmb2xsb3dpbmcgdGhyZWUgc3RlcHM6 Cj4gICAxLiBVbmFzc2lnbiBhbGwgaW50ZXJmYWNlcyBmcm9tIHVzYmJhY2ssIHN0b3BwaW5nIGFu ZCByZXR1cm5pbmcgYW4KPiAgICAgIGVycm9yIGFzIHNvb24gYXMgb25lIGF0dGVtcHQgZmFpbHMK PiAgIDIuIFJlbW92ZSB0aGUgcHZ1c2IgeGVuc3RvcmUgbm9kZXMsIHN0b3BwaW5nIGFuZCByZXR1 cm5pbmcgYW4gZXJyb3IKPiAgICAgIGlmIGl0IGZhaWxzCj4gICAzLiBBdHRlbXB0IHRvIHJlLWFz c2lnbiBhbGwgaW50ZXJmYWNlcyB0byB0aGUgb3JpZ2luYWwgZHJpdmVycywKPiAgICAgIHN0b3Bw aW5nIGFuZCByZXR1cm5pbmcgYW4gZXJyb3IgYXMgc29vbiBhcyBvbmUgYXR0ZW1wdCBmYWlscy4K ClRoYW5rcywgQ2h1bnlhbiEgIE9uZSBtaW5vciBjb21tZW50IGFib3V0IHRoZXNlIGNoYW5nZXMu Li4KCj4gK3N0YXRpYyBpbnQgdXNiZGV2X3JlYmluZChsaWJ4bF9fZ2MgKmdjLCBjb25zdCBjaGFy ICpidXNpZCkKPiArewo+ICsgICAgY2hhciAqKmludGZzID0gTlVMTDsKPiArICAgIGNoYXIgKnVz YmRldl9lbmNvZGUgPSBOVUxMOwo+ICsgICAgY2hhciAqcGF0aCA9IE5VTEw7Cj4gKyAgICBpbnQg aSwgbnVtID0gMDsKPiArICAgIGludCByYzsKPiArCj4gKyAgICByYyA9IHVzYmRldl9nZXRfYWxs X2ludGVyZmFjZXMoZ2MsIGJ1c2lkLCAmaW50ZnMsICZudW0pOwo+ICsgICAgaWYgKHJjKSBnb3Rv IG91dDsKPiArCj4gKyAgICB1c2JkZXZfZW5jb2RlID0gdXNiX2ludGVyZmFjZV94ZW5zdG9yZV9l bmNvZGUoZ2MsIGJ1c2lkKTsKPiArCj4gKyAgICBmb3IgKGkgPSAwOyBpIDwgbnVtOyBpKyspIHsK PiArICAgICAgICBjaGFyICppbnRmID0gaW50ZnNbaV07Cj4gKyAgICAgICAgY2hhciAqdXNiaW50 Zl9lbmNvZGUgPSBOVUxMOwo+ICsgICAgICAgIGNvbnN0IGNoYXIgKmRydnBhdGg7Cj4gKwo+ICsg ICAgICAgIC8qIHJlYmluZCBVU0IgaW50ZXJmYWNlIHRvIGl0cyBvcmlnaW5pYWwgZHJpdmVyICov Cj4gKyAgICAgICAgdXNiaW50Zl9lbmNvZGUgPSB1c2JfaW50ZXJmYWNlX3hlbnN0b3JlX2VuY29k ZShnYywgaW50Zik7Cj4gKyAgICAgICAgcGF0aCA9IEdDU1BSSU5URihVU0JCQUNLX0lORk9fUEFU SCAiLyVzLyVzL2RyaXZlcl9wYXRoIiwKPiArICAgICAgICAgICAgICAgICAgICAgICAgIHVzYmRl dl9lbmNvZGUsIHVzYmludGZfZW5jb2RlKTsKPiArICAgICAgICByYyA9IGxpYnhsX194c19yZWFk X2NoZWNrZWQoZ2MsIFhCVF9OVUxMLCBwYXRoLCAmZHJ2cGF0aCk7Cj4gKyAgICAgICAgaWYgKHJj KSBnb3RvIG91dDsKPiArCj4gKyAgICAgICAgaWYgKGRydnBhdGgpIHsKPiArICAgICAgICAgICAg cmMgPSBiaW5kX3VzYmludGYoZ2MsIGludGYsIGRydnBhdGgpOwo+ICsgICAgICAgICAgICBpZiAo cmMpIHsKPiArICAgICAgICAgICAgICAgIExPR0UoRVJST1IsICJDb3VsZG4ndCByZWJpbmQgJXMg dG8gJXMiLCBpbnRmLCBkcnZwYXRoKTsKPiArICAgICAgICAgICAgICAgIGdvdG8gb3V0Owo+ICsg ICAgICAgICAgICB9Cj4gKyAgICAgICAgfQo+ICsgICAgfQo+ICsKPiArICAgIHBhdGggPSBHQ1NQ UklOVEYoVVNCQkFDS19JTkZPX1BBVEggIi8lcyIsIHVzYmRldl9lbmNvZGUpOwo+ICsgICAgcmMg PSBsaWJ4bF9feHNfcm1fY2hlY2tlZChnYywgWEJUX05VTEwsIHBhdGgpOwo+ICsKPiArb3V0OgoK U28gaXQgbG9va3MgbGlrZSBpZiBvbmUgb2YgdGhlIHJlLWJpbmRzIGZhaWxzLCB0aGVuIGl0IHN0 b3BzIHdoZXJlIGl0IGlzCmFuZCBsZWF2ZXMgdGhlIFVTQkJBQ0sgcmUtYmluZCBpbmZvIGluIHhl bnN0b3JlLiAgSW4gdGhhdCBjYXNlIGl0J3Mgbm90CmNsZWFyIHRvIG1lIGhvdyB0aGF0IGluZm9y bWF0aW9uIHdvdWxkIGV2ZXIgYmUgcmVtb3ZlZC4KCkkgdGhpbmsgdW50aWwgc3VjaCB0aW1lIGFz IHdlIGhhdmUgYSBjb21tYW5kIHRvIHJlLWF0dGVtcHQgdGhlIHJlLWJpbmQsCiBpZiB0aGVyZSdz IGFuIGVycm9yIGluIHRoZSBhY3R1YWwgcmViaW5kLCBpdCBzaG91bGQganVzdCBicmVhayBvdXQg b2YKdGhlIGZvciBsb29wLCBhbmQgcmVtb3ZlIHRoZSByZS1iaW5kIG5vZGVzLCBhbmQgZG9jdW1l bnQgYSB3YXkgdG8gbGV0CnRoZSB1c2VyIHRyeSB0byBjbGVhbiB0aGluZ3MgdXAuCgo+ICtzdGF0 aWMgaW50IGRvX3VzYmRldl9yZW1vdmUobGlieGxfX2djICpnYywgdWludDMyX3QgZG9taWQsCj4g KyAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9kZXZpY2VfdXNiZGV2ICp1c2JkZXYp Cj4gK3sKPiArICAgIGludCByYzsKPiArICAgIGNoYXIgKmJ1c2lkOwo+ICsgICAgbGlieGxfZGV2 aWNlX3VzYmN0cmwgdXNiY3RybDsKPiArICAgIGxpYnhsX3VzYmN0cmxpbmZvIHVzYmN0cmxpbmZv Owo+ICsKPiArICAgIGxpYnhsX2RldmljZV91c2JjdHJsX2luaXQoJnVzYmN0cmwpOwo+ICsgICAg bGlieGxfdXNiY3RybGluZm9faW5pdCgmdXNiY3RybGluZm8pOwo+ICsgICAgdXNiY3RybC5kZXZp ZCA9IHVzYmRldi0+Y3RybDsKPiArCj4gKyAgICByYyA9IGxpYnhsX2RldmljZV91c2JjdHJsX2dl dGluZm8oQ1RYLCBkb21pZCwgJnVzYmN0cmwsICZ1c2JjdHJsaW5mbyk7Cj4gKyAgICBpZiAocmMp IGdvdG8gb3V0Owo+ICsKPiArICAgIHN3aXRjaCAodXNiY3RybGluZm8udHlwZSkgewo+ICsgICAg Y2FzZSBMSUJYTF9VU0JDVFJMX1RZUEVfUFY6Cj4gKyAgICAgICAgYnVzaWQgPSB1c2JkZXZfYnVz aWRfZnJvbV9jdHJscG9ydChnYywgZG9taWQsIHVzYmRldik7Cj4gKyAgICAgICAgaWYgKCFidXNp ZCkgewo+ICsgICAgICAgICAgICByYyA9IEVSUk9SX0ZBSUw7Cj4gKyAgICAgICAgICAgIGdvdG8g b3V0Owo+ICsgICAgICAgIH0KPiArCj4gKyAgICAgICAgcmMgPSB1c2JiYWNrX2Rldl91bmFzc2ln bihnYywgYnVzaWQpOwo+ICsgICAgICAgIGlmIChyYykgZ290byBvdXQ7Cj4gKwo+ICsgICAgICAg IHJjID0gbGlieGxfX2RldmljZV91c2JkZXZfcmVtb3ZlX3hlbnN0b3JlKGdjLCBkb21pZCwgdXNi ZGV2KTsKPiArICAgICAgICBpZiAocmMpIGdvdG8gb3V0Owo+ICsKPiArICAgICAgICByYyA9IHVz YmRldl9yZWJpbmQoZ2MsIGJ1c2lkKTsKPiArICAgICAgICBpZiAocmMpIGdvdG8gb3V0OwoKSSB0 aGluayB3ZSBuZWVkIGEgY29tbWVudCBoZXJlIHNheWluZyB3aHkgd2UncmUgZG9pbmcgdGhpbmdz IGluIHRoaXMKb3JkZXIuICBNYXliZToKCiJUaGluZ3MgYXJlIGRvbmUgaW4gdGhpcyBvcmRlciB0 byBiYWxhbmNlIHNpbXBsaWNpdHkgd2l0aCByb2J1c3RuZXNzIGluCnRoZSBjYXNlIG9mIGZhaWx1 cmU6CiogV2UgdW5iaW5kIGFsbCBpbnRlcmZhY2VzIGJlZm9yZSByZWJpbmRpbmcgYW55IGludGVy ZmFjZXMsIHNvIHRoYXQgd2UKbmV2ZXIgZ2V0IGludG8gYSBzaXR1YXRpb24gd2hlcmUgc29tZSBp bnRlcmZhY2VzIGFyZSBhc3NpZ25lZCB0byB1c2JiYWNrCmFuZCBzb21lIGFyZSBhc3NpZ25lZCB0 byB0aGUgb3JpZ2luYWwgZHJpdmVycy4KKiBXZSBhbHNvIHVuYmluZCB0aGUgaW50ZXJmYWNlcyBi ZWZvcmUgcmVtb3ZpbmcgdGhlIHB2dXNiIHhlbnN0b3JlCm5vZGVzLCBzbyB0aGF0IGlmIHRoZSB1 bmJpbmQgZmFpbHMgaW4gdGhlIG1pZGRsZSwgdGhlIGRldmljZSBzdGlsbCBzaG93cwp1cCBpbiB4 bCB1c2ItbGlzdCwgYW5kIHRoZSB1c2VyIGNhbiByZS10cnkgcmVtb3ZpbmcgaXQuIgoKT3RoZXIg dGhhbiB0aGF0LCBJIGdhdmUgdGhpcyBwYXRjaGUgYSBtb2RlcmF0ZWx5IHRob3JvdWdoIHJldmll dyBhZ2Fpbgp0b2RheSwgYW5kIEkgdGhpbmsgZXZlcnl0aGluZyBlbHNlIGxvb2tzIGdvb2QgdG8g bWUuCgogLUdlb3JnZQoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0 cDovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==