From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stefano Stabellini Subject: Re: [PATCH v3 24/25] xen/vpl011: buffer out chars when the backend is xen Date: Thu, 16 Aug 2018 12:41:25 -0700 (PDT) Message-ID: References: <1533079688-9541-24-git-send-email-sstabellini@kernel.org> <24702a40-add2-2001-d36d-0668a3a8b952@arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <24702a40-add2-2001-d36d-0668a3a8b952@arm.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Julien Grall Cc: Stefano Stabellini , Stefano Stabellini , andrii_anisov@epam.com, xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org T24gTW9uLCAxMyBBdWcgMjAxOCwgSnVsaWVuIEdyYWxsIHdyb3RlOgo+IEhpLAo+IAo+IE9uIDAx LzA4LzE4IDAwOjI4LCBTdGVmYW5vIFN0YWJlbGxpbmkgd3JvdGU6Cj4gPiBUbyBhdm9pZCBtaXhp bmcgdGhlIG91dHB1dCBvZiBkaWZmZXJlbnQgZG9tYWlucyBvbiB0aGUgY29uc29sZSwgYnVmZmVy Cj4gPiB0aGUgb3V0cHV0IGNoYXJzIGFuZCBwcmludCBsaW5lIGJ5IGxpbmUuIFVubGVzcyB0aGUg ZG9tYWluIGhhcyBpbnB1dAo+ID4gZnJvbSB0aGUgc2VyaWFsLCBpbiB3aGljaCBjYXNlIHdlIHdh bnQgdG8gcHJpbnQgY2hhciBieSBjaGFyIGZvciBhCj4gPiBzbW9vdGggdXNlciBleHBlcmllbmNl Lgo+ID4gCj4gPiBUaGUgc2l6ZSBvZiBTQlNBX1VBUlRfT1VUX0JVRl9TSVpFIGlzIGFyYml0cmFy eS4gOTAgc2hvdWxkIGJlIGxhcmdlCj4gPiBlbm91Z2ggdG8gYWNjb21tb2RhdGUgdGhlIGxlbmd0 aCBvZiBtb3N0IGxpbmVzIG9mIG91dHB1dCAodHlwaWNhbGx5IHRoZXkKPiA+IGFyZSBsaW1pdGVk IHRvIDgwIGNoYXJhY3RlcnMgb24gVW5peCBzeXN0ZW1zKSwgcGx1cyBvbmUgZXh0cmEgY2hhciBm b3IKPiA+IHRoZSBzdHJpbmcgdGVybWluYXRvci4KPiAKPiBIb3cgYWJvdXQgdXNpbmcgdGhlIHNh bWUgdmFsdWUgYXMgdnVhcnQgKGUuZyBWVUFSVF9CVVRfU0laRSkgaW5zdGVhZD8gU28gd2UKPiBi dWZmZXIgdGhlIHNhbWUgd2F5IGZvciB0aGUgdnBsMDExPwoKWWVzLCBJIGNhbiBkbyB0aGF0LgoK Cj4gPiBTaWduZWQtb2ZmLWJ5OiBTdGVmYW5vIFN0YWJlbGxpbmkgPHN0ZWZhbm9zQHhpbGlueC5j b20+Cj4gPiAtLS0KPiA+ICAgeGVuL2FyY2gvYXJtL3ZwbDAxMS5jICAgICAgICB8IDIxICsrKysr KysrKysrKysrKysrKy0tLQo+ID4gICB4ZW4vaW5jbHVkZS9hc20tYXJtL3ZwbDAxMS5oIHwgIDMg KysrCj4gPiAgIDIgZmlsZXMgY2hhbmdlZCwgMjEgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMo LSkKPiA+IAo+ID4gZGlmZiAtLWdpdCBhL3hlbi9hcmNoL2FybS92cGwwMTEuYyBiL3hlbi9hcmNo L2FybS92cGwwMTEuYwo+ID4gaW5kZXggZjIwNmM2MS4uODEzNzM3MSAxMDA2NDQKPiA+IC0tLSBh L3hlbi9hcmNoL2FybS92cGwwMTEuYwo+ID4gKysrIGIveGVuL2FyY2gvYXJtL3ZwbDAxMS5jCj4g PiBAQCAtMjgsNiArMjgsNyBAQAo+ID4gICAjaW5jbHVkZSA8eGVuL2xpYi5oPgo+ID4gICAjaW5j bHVkZSA8eGVuL21tLmg+Cj4gPiAgICNpbmNsdWRlIDx4ZW4vc2NoZWQuaD4KPiA+ICsjaW5jbHVk ZSA8eGVuL2NvbnNvbGUuaD4KPiA+ICAgI2luY2x1ZGUgPHB1YmxpYy9kb21jdGwuaD4KPiA+ICAg I2luY2x1ZGUgPHB1YmxpYy9pby9jb25zb2xlLmg+Cj4gPiAgICNpbmNsdWRlIDxhc20vcGwwMTEt dWFydC5oPgo+ID4gQEAgLTg1LDEyICs4NiwyNiBAQCBzdGF0aWMgdm9pZCB2cGwwMTFfd3JpdGVf ZGF0YV94ZW4oc3RydWN0IGRvbWFpbiAqZCwKPiA+IHVpbnQ4X3QgZGF0YSkKPiA+ICAgewo+ID4g ICAgICAgdW5zaWduZWQgbG9uZyBmbGFnczsKPiA+ICAgICAgIHN0cnVjdCB2cGwwMTEgKnZwbDAx MSA9ICZkLT5hcmNoLnZwbDAxMTsKPiA+ICsgICAgc3RydWN0IHZwbDAxMV94ZW5fYmFja2VuZCAq aW50ZiA9IHZwbDAxMS0+eGVuOwo+ID4gKyAgICBzdHJ1Y3QgZG9tYWluICppbnB1dCA9IGNvbnNv bGVfaW5wdXRfZG9tYWluKCk7Cj4gPiAgICAgICAgIFZQTDAxMV9MT0NLKGQsIGZsYWdzKTsKPiA+ ICAgLSAgICBwcmludGsoIiVjIiwgZGF0YSk7Cj4gPiAtICAgIGlmIChkYXRhID09ICdcbicpCj4g PiAtICAgICAgICBwcmludGsoIkRPTSV1OiAiLCBkLT5kb21haW5faWQpOwo+ID4gKyAgICBpbnRm LT5vdXRbaW50Zi0+b3V0X3Byb2QrK10gPSBkYXRhOwo+ID4gKyAgICBpZiAoIGQgPT0gaW5wdXQg JiYgaW50Zi0+b3V0X3Byb2QgPT0gMSApCj4gPiArICAgIHsKPiA+ICsgICAgICAgIHByaW50aygi JWMiLCBkYXRhKTsKPiA+ICsgICAgICAgIGlmICggZGF0YSA9PSAnXG4nICkKPiA+ICsgICAgICAg ICAgICBwcmludGsoIkRPTSV1OiAiLCBkLT5kb21haW5faWQpOwo+ID4gKyAgICAgICAgaW50Zi0+ b3V0X3Byb2QgPSAwOwo+IAo+IFNlZSBteSByZW1hcmsgb24gdGhlIHBhdGNoIGltcGxlbWVudGlu ZyB2cGwwMTFfd3JpdGVfZGF0YV94ZW4uCgpXaXRoIHRoaXMgcGF0Y2gsIHRoZSBtaXNzaW5nICJE T00iIGF0IHRoZSBiZWdpbm5pbmcgY2Fubm90IGhhcHBlbgphbnltb3JlIGR1ZSB0byB0aGUgb3V0 IGJ1ZmZlcmluZy4gVGhlb3JldGljYWxseSBpdCBjYW4gc3RpbGwgaGFwcGVuIGJ5CnN3aXRjaGlu ZyB0byBET00xIGJlZm9yZSBET00xIHByaW50cyBhbnl0aGluZywgYnV0IGl0IGlzIGltcG9zc2li bGUgdG8KZG8gaW4gcHJhY3RpY2UuIEV2ZW4gaW4gdGhpcyB0aGVvcmV0aWNhbCBzY2VuYXJpbywg dGhlIHVzZXIgd291bGQgc3RpbGwKZ2V0IHRoZSB1c2VmdWwgIlN3aXRjaGluZyB0byBET00xIiBt ZXNzYWdlLCB0aGF0IHdvdWxkIGhlbHAgY2xhcmlmeSB3aGF0CmlzIGdvaW5nIG9uLiBUaHVzLCBt eSBwcmVmZXJlbmNlIGlzIHRvIGF2b2lkIG1ha2luZyB0aGUgY29kZSBtb3JlCmNvbXBsZXggdG8g Zml4IHRoaXMgaXNzdWUuCgoKPiA+ICsgICAgfSBlbHNlIGlmICggZCA9PSBpbnB1dCB8fAo+IAo+ IENvZGluZyBzdHlsZToKPiAKPiB9Cj4gZWxzZSBpZgo+IHsKCkknbGwgZml4CgoKPiA+ICsgICAg ICAgICAgICAgICAgaW50Zi0+b3V0X3Byb2QgPT0gU0JTQV9VQVJUX09VVF9CVUZfU0laRSAtIDEg fHwKPiA+ICsgICAgICAgICAgICAgICAgZGF0YSA9PSAnXG4nICkKPiA+ICsgICAgewo+ID4gKyAg ICAgICAgaW50Zi0+b3V0W2ludGYtPm91dF9wcm9kKytdID0gJ1wwJzsKPiA+ICsgICAgICAgIHBy aW50aygiRE9NJXU6ICVzIiwgZC0+ZG9tYWluX2lkLCBpbnRmLT5vdXQpOwo+ID4gKyAgICAgICAg aW50Zi0+b3V0X3Byb2QgPSAwOwo+ID4gKyAgICB9Cj4gCj4gVGhlIGNvZGUgaXMgcXVpdGUgZGlm ZmljdWx0IHRvIHJlYWQuIEl0IHdvdWxkIGJlIGVhc2llciB0byBkaWZmZXJlbnRpYXRlCj4gKGRv bWFpbiA9PSBpbnB1dCB2cyBkb21haW4gIT0gaW5wdXQpIGV2ZW4gaWYgaXQgbWVhbnMgYSBiaXQg b2YgZHVwbGljYXRpb24uCgpPSywgSSBjYW4gcmVhcnJhbmdlIHRoZSBjb2RlIHRoYXQgd2F5LiBG b3IgZXhhbXBsZToKCiAgICBpZiAoIGQgPT0gaW5wdXQgKXsKICAgICAgICBpZiAoIGludGYtPm91 dF9wcm9kID09IDEgKQogICAgICAgIHsKICAgICAgICAgICAgcHJpbnRrKCIlYyIsIGRhdGEpOwog ICAgICAgICAgICBpZiAoIGRhdGEgPT0gJ1xuJyApCiAgICAgICAgICAgICAgICBwcmludGsoIkRP TSV1OiAiLCBkLT5kb21haW5faWQpOwogICAgICAgICAgICBpbnRmLT5vdXRfcHJvZCA9IDA7CiAg ICAgICAgfQogICAgICAgIGVsc2UKICAgICAgICB7CiAgICAgICAgICAgIGlmICggZGF0YSAhPSAn XG4nICkKICAgICAgICAgICAgICAgIGludGYtPm91dFtpbnRmLT5vdXRfcHJvZCsrXSA9ICdcbic7 CiAgICAgICAgICAgIGludGYtPm91dFtpbnRmLT5vdXRfcHJvZCsrXSA9ICdcMCc7CiAgICAgICAg ICAgIHByaW50aygiRE9NJXU6ICVzIiwgZC0+ZG9tYWluX2lkLCBpbnRmLT5vdXQpOwogICAgICAg ICAgICBpbnRmLT5vdXRfcHJvZCA9IDA7CiAgICAgICAgfQogICAgfQogICAgZWxzZQogICAgewog ICAgICAgIGlmICggaW50Zi0+b3V0X3Byb2QgPT0gU0JTQV9VQVJUX09VVF9CVUZfU0laRSAtIDIg fHwKICAgICAgICAgICAgIGRhdGEgPT0gJ1xuJyApCiAgICAgICAgewogICAgICAgICAgICBpZiAo IGRhdGEgIT0gJ1xuJyApCiAgICAgICAgICAgICAgICBpbnRmLT5vdXRbaW50Zi0+b3V0X3Byb2Qr K10gPSAnXG4nOwogICAgICAgICAgICBpbnRmLT5vdXRbaW50Zi0+b3V0X3Byb2QrK10gPSAnXDAn OwogICAgICAgICAgICBwcmludGsoIkRPTSV1OiAlcyIsIGQtPmRvbWFpbl9pZCwgaW50Zi0+b3V0 KTsKICAgICAgICAgICAgaW50Zi0+b3V0X3Byb2QgPSAwOwogICAgICAgIH0KICAgIH0KCklzIGl0 IGJldHRlcj8KCgo+IFlvdSBhbHNvIGRvbid0IGhhbmRsZSBhbGwgdGhlIGNhc2VzLgo+IAo+IEZv ciB0aGUgaW5wdXQgZG9tYWluLCBJIGRvbid0IHRoaW5rIHlvdSB3YW50IHRvIHByaW50IHRoZSBk b21haW4gaW4gZnJvbnQuCj4gSW5zdGVhZCBJIHdvdWxkIHJlbHkgb24gdGhlICJTd2l0Y2ggdG8g Li4uIi4gCgpBY3R1YWxseSBpdCBpcyB2ZXJ5IGNvbnZlbmllbnQgdG8ga25vdyBhdCBhbnkgZ2l2 ZW4gdGltZSB3aGljaCBkb21haW4KeW91IGFyZSB0YWxraW5nIHRvLiBJIGNvdWxkbid0IGZpbmQg YW55IHByb2JsZW1zIHdpdGggdGhlIHByZWZpeCwgZXZlbgp1c2luZyBWSU0sIGV0Yy4gSSB3b3Vs ZCByYXRoZXIga2VlcCB0aGUgIkRPTSIgc3RyaW5nIGFyb3VuZC4KCgo+IFRoaXMgd291bGQgYXZv aWQgdGhlIHByb2JsZW0KPiB3aGVyZSBEb21CIG5lZWRzIHRvIGhhdmUgaGlzIGxpbmUgcHJpbnRl ZCB3aGlsZSBpdCBpcyBub3QgdGhlIGNvbnNvbGUgaW5wdXQuCj4gSWYgdGhpcyBoYXBwZW5zIGlu IHRoZSBtaWRkbGUgb2YgRG9tQSwgdGhlbiB5b3UgYXJlIGxvb3NpbmcgdHJhY2sgd2hhdCdzIGdv aW5nCj4gb24uCgpJIGRvbid0IHVuZGVyc3RhbmQgdGhlIGV4YW1wbGU6IGlmIERPTTEgaGFzIGlu cHV0LCBhbmQgRE9NMiBwcmludHMKc29tZXRoaW5nLCB0aGUgRE9NMiBvdXRwdXQgd2lsbCBiZSBw cmVwZW5kZWQgYnkgIkRPTTIiLCBhdm9pZGluZyBhbnkKY29uZnVzaW9uLiBXaGF0IGFtIEkgbWlz c2luZz8KCgo+IEFsc28gaWYgeW91IGhhdmUgdGhlIGJ1ZmZlciBmdWxsLCB5b3Ugd2lsbCB3cml0 ZSB0aGUgbGluZSB3aXRob3V0IGEgbmV3bGluZS4KPiBTbywgdGhlIG5leHQgbGluZSBpcyBnb2lu ZyB0byBiZSB3cm9uZy4gSW4gdGhhdCBjYXNlLCB5b3UgbmVlZCB0byBhZGQgYQo+IG5ld2xpbmUg YmVmb3JlIHByaW50ZWQuIEkgdGhpbmsgeW91IHdhbnQgdG8gbG9vayBhdCB3aGF0IHdlIGRpZCBp bgo+IHZ1YXJ0X3ByaW50X2NoYXIuCgpZZXMsIHRoaXMgaXMgYSBwcm9ibGVtLiBJJ2xsIGRvIHRo ZSBzYW1lIGFzIHZ1YXJ0X3ByaW50X2NoYXIuCgogCj4gPiAgICAgICAgIHZwbDAxMS0+dWFydHJp cyB8PSBUWEk7Cj4gPiAgICAgICB2cGwwMTEtPnVhcnRmciAmPSB+VFhGRTsKPiA+IGRpZmYgLS1n aXQgYS94ZW4vaW5jbHVkZS9hc20tYXJtL3ZwbDAxMS5oIGIveGVuL2luY2x1ZGUvYXNtLWFybS92 cGwwMTEuaAo+ID4gaW5kZXggYzk5MThjMS4uMzA0ODdlOCAxMDA2NDQKPiA+IC0tLSBhL3hlbi9p bmNsdWRlL2FzbS1hcm0vdnBsMDExLmgKPiA+ICsrKyBiL3hlbi9pbmNsdWRlL2FzbS1hcm0vdnBs MDExLmgKPiA+IEBAIC0zMCw5ICszMCwxMiBAQAo+ID4gICAjZGVmaW5lIFZQTDAxMV9VTkxPQ0so ZCxmbGFncykKPiA+IHNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJihkKS0+YXJjaC52cGwwMTEubG9j aywgZmxhZ3MpCj4gPiAgICAgI2RlZmluZSBTQlNBX1VBUlRfRklGT19TSVpFIDMyCj4gPiArI2Rl ZmluZSBTQlNBX1VBUlRfT1VUX0JVRl9TSVpFIDkxCj4gPiAgIHN0cnVjdCB2cGwwMTFfeGVuX2Jh Y2tlbmQgewo+ID4gICAgICAgY2hhciBpbltTQlNBX1VBUlRfRklGT19TSVpFXTsKPiA+ICsgICAg Y2hhciBvdXRbU0JTQV9VQVJUX09VVF9CVUZfU0laRV07Cj4gPiAgICAgICBYRU5DT05TX1JJTkdf SURYIGluX2NvbnMsIGluX3Byb2Q7Cj4gPiArICAgIFhFTkNPTlNfUklOR19JRFggb3V0X3Byb2Q7 Cj4gPiAgIH07Cj4gPiAgICAgc3RydWN0IHZwbDAxMSB7Cj4gPiAKPiAKPiBDaGVlcnMsCj4gCj4g LS0gCj4gSnVsaWVuIEdyYWxsCj4KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbnBy b2plY3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby94 ZW4tZGV2ZWw=