From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julien Grall Subject: Re: [PATCH v2 20/21] xen: support console_switching between Dom0 and DomUs on ARM Date: Tue, 17 Jul 2018 21:34:16 +0100 Message-ID: References: <1530918736-13965-20-git-send-email-sstabellini@kernel.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1530918736-13965-20-git-send-email-sstabellini@kernel.org> Content-Language: en-US List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Stefano Stabellini Cc: Stefano Stabellini , andrii_anisov@epam.com, George.Dunlap@eu.citrix.com, andrew.cooper3@citrix.com, ian.jackson@eu.citrix.com, xen-devel@lists.xen.org, tim@xen.org, jbeulich@suse.com, wei.liu2@citrix.com, nd@arm.com List-Id: xen-devel@lists.xenproject.org SGkgU3RlZmFubywKCk9uIDA3LzA3LzIwMTggMDA6MTIsIFN0ZWZhbm8gU3RhYmVsbGluaSB3cm90 ZToKPiBUb2RheSBDdHJsLUFBQSBpcyB1c2VkIHRvIHN3aXRjaCBiZXR3ZWVuIFhlbiBhbmQgRG9t MC4gRXh0ZW5kIHRoZQo+IG1lY2hhbmlzbSB0byBhbGxvdyBmb3Igc3dpdGNoaW5nIGJldHdlZW4g WGVuLCBEb20wLCBhbmQgYW55IG9mIHRoZQo+IGluaXRpYWwgRG9tVSBjcmVhdGVkIGZyb20gWGVu IGFsb25nc2lkZSBEb20wIG91dCBvZiBpbmZvcm1hdGlvbiBwcm92aWRlZAo+IHZpYSBkZXZpY2Ug dHJlZS4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBTdGVmYW5vIFN0YWJlbGxpbmkgPHN0ZWZhbm9zQHhp bGlueC5jb20+Cj4gQ0M6IGFuZHJldy5jb29wZXIzQGNpdHJpeC5jb20KPiBDQzogR2VvcmdlLkR1 bmxhcEBldS5jaXRyaXguY29tCj4gQ0M6IGlhbi5qYWNrc29uQGV1LmNpdHJpeC5jb20KPiBDQzog amJldWxpY2hAc3VzZS5jb20KPiBDQzoga29ucmFkLndpbGtAb3JhY2xlLmNvbQo+IENDOiB0aW1A eGVuLm9yZwo+IENDOiB3ZWkubGl1MkBjaXRyaXguY29tCj4gLS0tCj4gQ2hhbmdlcyBpbiB2MjoK PiAtIG9ubHkgY2FsbCB2cGwwMTFfcnhfY2hhciBpZiB0aGUgdnBsMDExIGhhcyBiZWVuIGluaXRp YWxpemVkCj4gLS0tCj4gICB4ZW4vZHJpdmVycy9jaGFyL2NvbnNvbGUuYyB8IDUwICsrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0KPiAgIDEgZmlsZSBjaGFuZ2Vk LCAzNSBpbnNlcnRpb25zKCspLCAxNSBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEveGVu L2RyaXZlcnMvY2hhci9jb25zb2xlLmMgYi94ZW4vZHJpdmVycy9jaGFyL2NvbnNvbGUuYwo+IGlu ZGV4IDBmMDUzNjkuLmQ1OTBiYzAgMTAwNjQ0Cj4gLS0tIGEveGVuL2RyaXZlcnMvY2hhci9jb25z b2xlLmMKPiArKysgYi94ZW4vZHJpdmVycy9jaGFyL2NvbnNvbGUuYwo+IEBAIC0zMSwxMCArMzEs MTMgQEAKPiAgICNpbmNsdWRlIDx4ZW4vZWFybHlfcHJpbnRrLmg+Cj4gICAjaW5jbHVkZSA8eGVu L3dhcm5pbmcuaD4KPiAgICNpbmNsdWRlIDx4ZW4vcHZfY29uc29sZS5oPgo+ICsjaW5jbHVkZSA8 YXNtL3NldHVwLmg+Cj4gICAKPiAgICNpZmRlZiBDT05GSUdfWDg2Cj4gICAjaW5jbHVkZSA8eGVu L2NvbnNvbGVkLmg+Cj4gICAjaW5jbHVkZSA8YXNtL2d1ZXN0Lmg+Cj4gKyNlbHNlCj4gKyNpbmNs dWRlIDxhc20vdnBsMDExLmg+Cj4gICAjZW5kaWYKPiAgIAo+ICAgLyogY29uc29sZTogY29tbWEt c2VwYXJhdGVkIGxpc3Qgb2YgY29uc29sZSBvdXRwdXRzLiAqLwo+IEBAIC0zODksMjkgKzM5Miw0 OSBAQCBzdGF0aWMgdm9pZCBkdW1wX2NvbnNvbGVfcmluZ19rZXkodW5zaWduZWQgY2hhciBrZXkp Cj4gICAgICAgZnJlZV94ZW5oZWFwX3BhZ2VzKGJ1Ziwgb3JkZXIpOwo+ICAgfQo+ICAgCj4gLS8q IENUUkwtPHN3aXRjaF9jaGFyPiBzd2l0Y2hlcyBpbnB1dCBkaXJlY3Rpb24gYmV0d2VlbiBYZW4g YW5kIERPTTAuICovCj4gKy8qCj4gKyAqIENUUkwtPHN3aXRjaF9jaGFyPiBzd2l0Y2hlcyBpbnB1 dCBkaXJlY3Rpb24gYmV0d2VlbiBYZW4sIERvbTAgYW5kCj4gKyAqIERvbVVzLgo+ICsgKi8KPiAg ICNkZWZpbmUgc3dpdGNoX2NvZGUgKG9wdF9jb25zd2l0Y2hbMF0tJ2EnKzEpCj4gLXN0YXRpYyBp bnQgX19yZWFkX21vc3RseSB4ZW5fcnggPSAxOyAvKiBGQUxTRSA9PiBpbnB1dCBwYXNzZWQgdG8g ZG9tYWluIDAuICovCj4gK3N0YXRpYyBpbnQgX19yZWFkX21vc3RseSB4ZW5fcnggPSAxOyAvKiAx ID0+IGlucHV0IHBhc3NlZCB0byBkb21haW4gMC4gKi8KPiAgIAo+ICAgc3RhdGljIHZvaWQgc3dp dGNoX3NlcmlhbF9pbnB1dCh2b2lkKQo+ICAgewo+IC0gICAgc3RhdGljIGNoYXIgKmlucHV0X3N0 clsyXSA9IHsgIkRPTTAiLCAiWGVuIiB9Owo+IC0gICAgeGVuX3J4ID0gIXhlbl9yeDsKPiAtICAg IHByaW50aygiKioqIFNlcmlhbCBpbnB1dCAtPiAlcyIsIGlucHV0X3N0clt4ZW5fcnhdKTsKPiAr ICAgIHhlbl9yeCsrOwo+ICsgICAgaWYgKCB4ZW5fcnggPT0gbWF4X2luaXRfZG9taWQgKyAxICkK PiArICAgICAgICB4ZW5fcnggPSAwOwo+ICsKPiArICAgIGlmICggIXhlbl9yeCApCj4gKyAgICAg ICAgcHJpbnRrKCIqKiogU2VyaWFsIGlucHV0IHhlbl9yeD0lZCAtPiAlcyIsIHhlbl9yeCwgIlhl biIpOwo+ICsgICAgZWxzZQo+ICsgICAgICAgIHByaW50aygiKioqIFNlcmlhbCBpbnB1dCB4ZW5f cng9JWQgLT4gRE9NJWQiLCB4ZW5fcngsIHhlbl9yeCAtIDEpOwo+ICsKPiAgICAgICBpZiAoIHN3 aXRjaF9jb2RlICkKPiAtICAgICAgICBwcmludGsoIiAodHlwZSAnQ1RSTC0lYycgdGhyZWUgdGlt ZXMgdG8gc3dpdGNoIGlucHV0IHRvICVzKSIsCj4gLSAgICAgICAgICAgICAgIG9wdF9jb25zd2l0 Y2hbMF0sIGlucHV0X3N0clsheGVuX3J4XSk7Cj4gKyAgICAgICAgcHJpbnRrKCIgKHR5cGUgJ0NU UkwtJWMnIHRocmVlIHRpbWVzIHRvIHN3aXRjaCBpbnB1dCkiLAo+ICsgICAgICAgICAgICAgICBv cHRfY29uc3dpdGNoWzBdKTsKPiAgICAgICBwcmludGsoIlxuIik7Cj4gICB9Cj4gICAKPiAgIHN0 YXRpYyB2b2lkIF9fc2VyaWFsX3J4KGNoYXIgYywgc3RydWN0IGNwdV91c2VyX3JlZ3MgKnJlZ3Mp Cj4gICB7Cj4gLSAgICBpZiAoIHhlbl9yeCApCj4gKyAgICBpZiAoIHhlbl9yeCA9PSAwICkKPiAg ICAgICAgICAgcmV0dXJuIGhhbmRsZV9rZXlwcmVzcyhjLCByZWdzKTsKPiAgIAo+IC0gICAgLyog RGVsaXZlciBpbnB1dCB0byBndWVzdCBidWZmZXIsIHVubGVzcyBpdCBpcyBhbHJlYWR5IGZ1bGwu ICovCj4gLSAgICBpZiAoIChzZXJpYWxfcnhfcHJvZC1zZXJpYWxfcnhfY29ucykgIT0gU0VSSUFM X1JYX1NJWkUgKQo+IC0gICAgICAgIHNlcmlhbF9yeF9yaW5nW1NFUklBTF9SWF9NQVNLKHNlcmlh bF9yeF9wcm9kKyspXSA9IGM7Cj4gKyAgICBpZiAoIHhlbl9yeCA9PSAxICkKPiArICAgIHsKPiAr ICAgICAgICAvKiBEZWxpdmVyIGlucHV0IHRvIGd1ZXN0IGJ1ZmZlciwgdW5sZXNzIGl0IGlzIGFs cmVhZHkgZnVsbC4gKi8KPiArICAgICAgICBpZiAoIChzZXJpYWxfcnhfcHJvZC1zZXJpYWxfcnhf Y29ucykgIT0gU0VSSUFMX1JYX1NJWkUgKQo+ICsgICAgICAgICAgICBzZXJpYWxfcnhfcmluZ1tT RVJJQUxfUlhfTUFTSyhzZXJpYWxfcnhfcHJvZCsrKV0gPSBjOwo+ICsgICAgfQo+ICsjaWZkZWYg Q09ORklHX0FSTQo+ICsgICAgZWxzZQo+ICsgICAgewo+ICsgICAgICAgIHN0cnVjdCBkb21haW4g KmQgPSBnZXRfZG9tYWluX2J5X2lkKHhlbl9yeCAtIDEpOwo+ICsgICAgICAgIGlmICggIWQtPmFy Y2gudnBsMDExLnJpbmdfZW5hYmxlICYmIGQtPmFyY2gudnBsMDExLmlucmluZyAhPSBOVUxMICkK Ckl0IHNvdW5kcyBsaWtlIHlvdSB3YW50IHRvIHByb3ZpZGUgYSBtYWNybyBoZXJlLiBTbyB3b3Vs ZCBtYWtlIGNsZWFyZXIgCndoYXQgeW91IGFyZSBhY3R1YWxseSBjaGVja2luZy4KCj4gKyAgICAg ICAgICAgIHZwbDAxMV9yeF9jaGFyKGQsIGMpOwoKV2hhdCBoYXBwZW4gaW4gdGhlIGNhc2UgdnBs MDExIGlzIG5vdCBlbmFibGVkIGZvciB0aGF0IGRvbWFpbj8gU2hvdWxkbid0IAp5b3UgYXQgbGVh c3Qgd2FybiB0aGVyZSBhcmUgbm8gY29uc29sZSBhdmFpbGFibGU/Cgo+ICsgICAgfQo+ICsjZW5k aWYKPiAgICAgICAvKiBBbHdheXMgbm90aWZ5IHRoZSBndWVzdDogcHJldmVudHMgcmVjZWl2ZSBw YXRoIGZyb20gZ2V0dGluZyBzdHVjay4gKi8KClRoaXMgY29tbWVudCBzZWVtcyBhIGJpdCB3cm9u ZyBub3csIGFsdG91Z2ggdGhlIGNvbW1lbnQgc2VlbSB0byBzdWdnZXN0IAptYXkgbmVlZCB0byBi ZSB0YWtlbiBjYXJlLgoKPiAgICAgICBzZW5kX2dsb2JhbF92aXJxKFZJUlFfQ09OU09MRSk7Cj4g ICAKPiBAQCAtOTIzLDcgKzk0Niw3IEBAIHZvaWQgX19pbml0IGNvbnNvbGVfZW5kYm9vdCh2b2lk KQo+ICAgICAgICAqIGEgdXNlZnVsICdob3cgdG8gc3dpdGNoJyBtZXNzYWdlLgo+ICAgICAgICAq Lwo+ICAgICAgIGlmICggb3B0X2NvbnN3aXRjaFsxXSA9PSAneCcgKQo+IC0gICAgICAgIHhlbl9y eCA9ICF4ZW5fcng7Cj4gKyAgICAgICAgeGVuX3J4ID0gMDsKPiAgIAo+ICAgICAgIHJlZ2lzdGVy X2tleWhhbmRsZXIoJ3cnLCBkdW1wX2NvbnNvbGVfcmluZ19rZXksCj4gICAgICAgICAgICAgICAg ICAgICAgICAgICAic3luY2hyb25vdXNseSBkdW1wIGNvbnNvbGUgcmluZyBidWZmZXIgKGRtZXNn KSIsIDApOwo+IEBAIC05MzMsOSArOTU2LDYgQEAgdm9pZCBfX2luaXQgY29uc29sZV9lbmRib290 KHZvaWQpCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImRlY3JlYXNlIGxvZyBsZXZl bCB0aHJlc2hvbGQiLCAwKTsKPiAgICAgICByZWdpc3Rlcl9pcnFfa2V5aGFuZGxlcignRycsICZk b190b2dnbGVfZ3Vlc3QsCj4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInRvZ2dsZSBo b3N0L2d1ZXN0IGxvZyBsZXZlbCBhZGp1c3RtZW50IiwgMCk7Cj4gLQo+IC0gICAgLyogU2VyaWFs IGlucHV0IGlzIGRpcmVjdGVkIHRvIERPTTAgYnkgZGVmYXVsdC4gKi8KPiAtICAgIHN3aXRjaF9z ZXJpYWxfaW5wdXQoKTsKPiAgIH0KPiAgIAo+ICAgaW50IF9faW5pdCBjb25zb2xlX2hhcyhjb25z dCBjaGFyICpkZXZpY2UpCj4gCgpDaGVlcnMsCgotLSAKSnVsaWVuIEdyYWxsCgpfX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBs aXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2pl Y3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVuLWRldmVs