From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ian Campbell Subject: Re: [PATCH RFC XEN v1 09/14] xen: arm: Save and restore GIC state. Date: Thu, 17 Dec 2015 09:54:44 +0000 Message-ID: <1450346084.4053.87.camel@citrix.com> References: <1449671507.16124.264.camel@citrix.com> <1449671548-4050-9-git-send-email-ian.campbell@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Stefano Stabellini Cc: julien.grall@citrix.com, wei.liu2@citrix.com, andrew.cooper3@citrix.com, ian.jackson@eu.citrix.com, xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org T24gV2VkLCAyMDE1LTEyLTE2IGF0IDE4OjMwICswMDAwLCBTdGVmYW5vIFN0YWJlbGxpbmkgd3Jv dGU6Cj4gT24gV2VkLCA5IERlYyAyMDE1LCBJYW4gQ2FtcGJlbGwgd3JvdGU6Cj4gPiBDdXJyZW50 bHkgb25seSBHSUN2MiBzdXBwb3J0IGlzIGltcGxlbWVudGVkLgo+ID4gCj4gPiBHaXZlbiB0aGUg ZGlmZmVyaW5nIGFyY2hpdGVjdHVyYWwgc3RhdGUgYmV0d2VlbiB0aGUgR0lDdjIgYW5kIHYzIEkK PiA+IGVuZGVkIHVwIHdpdGggc2VwYXJhdGUgc2F2ZSByZWNvcmRzLiBJJ20gbm90IHN1cmUgaWYg dGhpcyBpcyB0aGUgYmVzdAo+ID4gcGxhbi4gSSBoYXZlIGFsc28gc3BsaXQgdGhlIHN0YXRlIGlu dG8gR0lDRCAocGVyIGRvbWFpbikgYW5kIEdJQ0MgKHBlcgo+ID4gdmNwdSwgYWx0aG91Z2ggYWxz byBpbmNsdWRpbmcgYmFua2VkIEdJQ0Qgc3RhdGUpLgo+IAo+IEkgdGhpbmsgaXQgbWFrZXMgc2Vu c2UgdG8gaGF2ZSBhIHBlci12Y3B1IGFuZCBhIHBlci1kb21haW4gc2F2ZS9yZXN0b3JlCj4gZnVu Y3Rpb24gcGFpci4KCkkgYWdyZWUuIFRoZSBtYWluIHF1ZXN0aW9uIEkgd2FzIGFza2luZyBhYm92 ZSB3YXMgd2hldGhlciB0aGVyZSBzaG91bGQgYQpzZXBhcmF0ZSBzdHJ1Y3QgYW5kIHBhaXIgb2Yg ZnVuY3Rpb25zIGZvciBlYWNoIHZlcnNpb24gb2YgdGhlIGdpYy4gQXQgdGhlCnRpbWUgSSB3YXNu J3Qgc28gc3VyZSwgYnV0IGhhdmluZyBzbGVwdCBvbiBpdCBhIGJpdCBJIHRoaW5rIGl0IGlzIGJl c3QgdGhpcwp3YXkuCgo+ID4gKwo+ID4gK8KgwqDCoMKgY3R4dC5jdGxyID0gZC0+YXJjaC52Z2lj LmN0bHI7Cj4gCj4gRG8gd2UgbmVlZCB0byBzYXZlL3Jlc3RvcmUgdmdpYy5kYmFzZT8KClllcywg aW4gZmFjdCB3ZSBzaG91bGQgc2F2ZSBldmVyeXRoaW5nIHdoaWNoIGNvbWVzIGZyb20gcHVibGlj L2FyY2gtYXJtLmgKR1VFU1RfKiAjZGVmaW5lcyBhbmQgY29uZmlybSBvbiByZXN0b3JlIHRoYXQg dGhleSBtYXRjaCB0aGUgaGFyZGNvZGVkCnZhbHVlcyBpbiB0aGUgbmV3IFhlbiAoYW5kIGlmIHRo ZXkgZXZlciBjaGFuZ2Ugd2UnbGwgbmVlZCBjb21wYXQgc3VwcG9ydCkuCisKPiA+ICvCoMKgwqDC oMKgwqDCoMKgLyogU2F2ZSBQUEkgYW5kIFNHSSBzdGF0ZXMgKHBlci1DUFUpICovCj4gPiArwqDC oMKgwqDCoMKgwqDCoHNwaW5fbG9jaygmdi0+YXJjaC52Z2ljLmxvY2spOwo+IAo+IHZnaWNfbG9j awoKQWgsIHllcywgdGhpcyBmdW5jdGlvbiB3YXMgb3JpZ2luYWxseSBpbiBzYXZlLmMgc28gZGlk bid0IGhhdmUgYWNjZXNzLCBidXQKbm93IGl0IGlzIGluIHRoZSByaWdodCBwbGFjZSBJIHNob3Vs ZCB1c2UgYWxsIHRoZSBjb3JyZWN0IGZ1bmN0aW9ucy4KCj4gSXMgdGhlIGRvbWFpbiBhbHJlYWR5 IHBhdXNlZCBhdCB0aGlzIHBvaW50PyBJZiBzbywgbWF5YmUgd2UgY291bGQgZ2V0Cj4gYXdheSB3 aXRob3V0IGxvY2tpbmc/CgpNYXliZSB3ZSBjb3VsZCB0aGluayBhYm91dCBpdCBoYXJkIGVub3Vn aCB0byByYXRpb25hbGlzZSB0aGF0LCBidXQgaXQgc2VlbXMKc2FmZXIgYW5kIGVhc2llciB0byBq dXN0IGZvbGxvdyB0aGUgbG9ja2luZyBydWxlcyByZWdhcmRsZXNzLgoKPiA+ICtpbnQgdmdpY19p cnFfc2F2ZV9jb3JlKHN0cnVjdCB2Y3B1ICp2LCB1bnNpZ25lZCBpcnEsIHN0cnVjdCBodm1faHdf aXJxCj4gPiAqcykKPiA+ICt7Cj4gPiArwqDCoMKgwqBzdHJ1Y3QgcGVuZGluZ19pcnEgKnAgPSBp cnFfdG9fcGVuZGluZyh2LCBpcnEpOwo+ID4gK8KgwqDCoMKgc3RydWN0IHZnaWNfaXJxX3Jhbmsg KnJhbmsgPSB2Z2ljX3JhbmtfaXJxKHYsIHAtPmlycSk7Cj4gPiArCj4gPiArwqDCoMKgwqBjb25z dCBib29sIGVuYWJsZWQgPSB0ZXN0X2JpdChHSUNfSVJRX0dVRVNUX0VOQUJMRUQsICZwLT5zdGF0 dXMpOwo+ID4gK8KgwqDCoMKgY29uc3QgYm9vbCBxdWV1ZWQgPSB0ZXN0X2JpdChHSUNfSVJRX0dV RVNUX1FVRVVFRCwgJnAtPnN0YXR1cyk7Cj4gPiArwqDCoMKgwqBjb25zdCBib29sIHZpc2libGUg PSB0ZXN0X2JpdChHSUNfSVJRX0dVRVNUX1ZJU0lCTEUsICZwLT5zdGF0dXMpOwo+ID4gKwo+ID4g K8KgwqDCoMKgc3Bpbl9sb2NrKCZyYW5rLT5sb2NrKTsKPiAKPiB2Z2ljX3JhbmtfbG9jay4gTWF5 YmUgd2UgbmVlZCB0byB0YWtlIHRoZSB2Z2ljIGxvY2sgYmVjYXVzZSB0aGVyZSBtaWdodAo+IGJl IGluY29taW5nIGhhcmR3YXJlIGludGVycnVwdHMgZm9yIHRoZSBkb21haW4gYnV0IEkgZG9uJ3Qg dGhpbmsgd2UgbmVlZAo+IHRoZSByYW5rIGxvY2ssIGRvIHdlPwoKQXMgYWJvdmUgSSB0aGluayBp dCBpcyBzaW1wbGVyIGFuZCBzYWZlciB0byBqdXN0IGZvbGxvdyB0aGUgdXN1YWwgcnVsZXMKcmF0 aGVyIHRoYW4gdG8gc3BlY2lhbCBjYXNlIHRoaW5ncy4KPsKgCj4gPiArwqDCoMKgwqDCoMKgwqDC oGlmICggbHIuc3RhdGUgJiBHSUNIX0xSX1BFTkRJTkcgKQo+ID4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoHMtPnN0YXRlIHw9IEhWTV9IV19JUlFfU1RBVEVfUEVORElORzsKPiAKPiBUaGlzIGlz IHVubmVjZXNzYXJ5OiBnaXZlbiB0aGF0IHRoZSBMUnMgYXJlIHVwZGF0ZWQgb24gaHlwZXJ2aXNv ciBlbnRyeSwKPiB5b3UgY2FuIGJlIHN1cmUgYXQgdGhpcyBwb2ludCB0aGV5IGFyZSB1cCB0byBk YXRlLsKgwqBJZiBhbiBpcnEgaXMKPiBHSUNfSVJRX0dVRVNUX1ZJU0lCTEUsIHRoZW4gaXQgbWVh bnMgdGhhdCBpcyBQRU5ESU5HIG9yIEFDVElWRSAob3IKPiBQRU5ESU5HIGFuZCBBQ1RJVkUpLiBH aXZlbiB0aGF0IHdlIGhhdmUgbWFuZGF0ZWQgdGhhdCB0aGVyZSBjYW5ub3QgYmUKPiBhbnkgQUNU SVZFIGludGVycnVwdHMsIHRoZW4gd2UgY291bGQgc2tpcCBhbGwgdGhpcyBhbmQganVzdAo+IAo+ IGlmICggdmlzaWJsZSApCj4gwqDCoMKgwqBzLT5zdGF0ZSB8PSBIVk1fSFdfSVJRX1NUQVRFX1BF TkRJTkc7CgpBaCwgdGhlIHVwZGF0ZSBvbiBlbnRyeSB3YXMgdGhlIGJpdCBJIGhhZCBtaXNzZWQg aGVyZSB3aGljaCBhbGxvd3MgdGhpcy4KSSdsbCByZXBsYWNlIHRoZSBsb2dpYyBhcyB5b3Ugc3Vn Z2VzdCBhbmQgYWRkIGEgY29tbWVudC4KCj4gCj4gCj4gPiArwqDCoMKgwqDCoMKgwqDCoC8qCj4g PiArwqDCoMKgwqDCoMKgwqDCoMKgKiBIVk1fSFdfSVJRX1NUQVRFX0FDVElWRTogV2UgY3VycmVu dGx5IGRvIG5vdCBoYW5kbGUKPiA+IHNhdmUvcmVzdG9yZQo+ID4gK8KgwqDCoMKgwqDCoMKgwqDC oCogd2l0aCBhY3RpdmUgaW50ZXJydXB0cy4KPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqAqLwo+ID4g K8KgwqDCoMKgwqDCoMKgwqBpZiAoIGxyLnN0YXRlICYgR0lDSF9MUl9BQ1RJVkUgKQo+ID4gK8Kg wqDCoMKgwqDCoMKgwqB7Cj4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgZHByaW50ayhYRU5M T0dfR19FUlIsCj4gPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCJI Vk0lZCBzYXZlOiBDYW5ub3Qgc2F2ZSBhY3RpdmUgbG9jYWwgSVJRJXVcbiIsCj4gPiArwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHYtPmRvbWFpbi0+ZG9tYWluX2lkLCBp cnEpOwo+ID4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoHJldHVybiAtRUlOVkFMOwo+ID4gK8Kg wqDCoMKgwqDCoMKgwqB9Cj4gPiArwqDCoMKgwqB9Cj4gPiArCj4gPiArwqDCoMKgwqAvKgo+ID4g K8KgwqDCoMKgwqAqIEhWTV9IV19JUlFfU1RBVEVfRURHRTogd2UgaW1wbGVtZW50IElDRkdbMF0g YW5kIFsxXSBhcyBSQVovV0kuCj4gPiArwqDCoMKgwqDCoCovCj4gPiArCj4gPiArwqDCoMKgwqBz cGluX3VubG9jaygmcmFuay0+bG9jayk7Cj4gPiArCj4gPiArwqDCoMKgwqByZXR1cm4gMDsKPiA+ ICt9Cj4gCj4gV2UgbmVlZCB0byBzYXZlL3Jlc3RvcmUgdGhlIHRhcmdldCB2Y3B1IGZvciBlYWNo IHZpcnEuCgpXZSBvbmx5IHN1cHBvcnQgUFBJcyBhbmQgU0dJcyBoZXJlLCBhbmQgSVRBUkdFVFNS IGFuZCBJUk9VVEVSUiBhcmVuJ3QKd3JpdGVhYmxlIGZvciB0aG9zZS4gSWYvd2hlbiBQUElzIGFy ZSBhZGRlZCAod2hpY2ggd291bGQgYmUgaWYvd2hlbiB3ZSBhZGQKSFZNIHN0eWxlIGd1ZXN0cykg d2Ugd291bGQgcmVhbGx5IG5lZWQgdG8gZG8gc28uCgpIb3dldmVyLCBmb3IgdGhlIHNha2Ugb2Yg QUJJIGNvbXBhdGliaWxpdHkgaW4gdGhlIGZ1dHVyZSwgSSB0aGluayBhZGRpbmcKdGhlIGZpZWxk cyB0byB0aGUgc3RydWN0cyBhbmQgaW5pdGlhbGlzaW5nIHRoZW0gMToxIHdpdGggdGhlIHZjcHVz IGFuZApjaGVja2luZyB0aGF0IG9uIHJlc3RvcmUgZG9lcyBtYWtlIHNlbnNlLCBzbyBJJ2xsIGRv IHRoYXQuCj4gClsuLi5dCj4gPiArwqDCoMKgwqBBU1NFUlQocy0+aXJxIDwgMzIpOyAvKiBTUEkg bm90IHN1cHBvcnRlZCB5ZXQgKi8KPiA+ICsKPiA+ICvCoMKgwqDCoHJhbmstPnByaW9yaXR5W3Mt PmlycSAlIDMyXSA9IHMtPnByaW9yaXR5Owo+IAo+IHdlIG5lZWQgdG8gcmVzdG9yZSB0aGUgdGFy Z2V0IHZjcHUKCldlIGp1c3QgbmVlZCB0byBjaGVjayBpdCBpcyAxOjEgc2luY2UgaXQgY2FuJ3Qg YmUgYW4gU1BJLgoKPiAKPiAKPiA+ICvCoMKgwqDCoGlmICggcy0+c3RhdGUgJiBIVk1fSFdfSVJR X1NUQVRFX0VOQUJMRUQgKQo+ID4gK8KgwqDCoMKgwqDCoMKgwqBzZXRfYml0KEdJQ19JUlFfR1VF U1RfRU5BQkxFRCwgJnAtPnN0YXR1cyk7Cj4gPiArCj4gPiArwqDCoMKgwqAvKiBJZiB0aGUgSVJR IHdhcyBlaXRoZXIgUEVORElORyBvciBBQ1RJVkUsIHRoZW4gUVVFVUUgaXQgdG8gYmUKPiA+IHJl aW5qZWN0ZWQuICovCj4gPiArwqDCoMKgwqBpZiAoIHMtPnN0YXRlICYgKEhWTV9IV19JUlFfU1RB VEVfUEVORElOR3xIVk1fSFdfSVJRX1NUQVRFX0FDVElWRSkKPiA+ICkKPiA+ICvCoMKgwqDCoHsK PiA+ICvCoMKgwqDCoMKgwqDCoMKgcmVyYWlzZSA9IDE7Cj4gPiArwqDCoMKgwqDCoMKgwqDCoHNl dF9iaXQoR0lDX0lSUV9HVUVTVF9RVUVVRUQsICZwLT5zdGF0dXMpOwo+ID4gK8KgwqDCoMKgfQo+ ID4gKwo+ID4gK8KgwqDCoMKgLyogVGhpcyB3aWxsIGNoZWNrIGZvciBlbmFibGVkIGV0YyAqLwo+ ID4gK8KgwqDCoMKgaWYgKCByZXJhaXNlICkgLyogdiAhPSBjdXJyZW50LCBzbyB3aWxsIGFkZCB0 byBscl9wZW5kaW5nICovCj4gCj4gWW91IGRvbid0IG5lZWQgcmVyYWlzZToganVzdCBhZGQgdGhl IGNhbGwgdG8gZ2ljX3JhaXNlX2d1ZXN0X2lycSB1bmRlcgo+IHRoZSBwcmV2aW91cyBpZiBzdGF0 ZW1lbnQuCgpUaGlzIHdhcyBhIHZlc3RpZ2Ugb2YgdGhlcmUgYmVpbmcgb3RoZXIgcmVhc29ucyB0 byByZXJhaXNlIHdoaWNoIHR1cm5lZCBvdXQKbm90IHRvIGJlIG5lZWRlZCwgSSdsbCBtb3ZlLgoK PiArwqDCoMKgwqB7Cj4gPiArwqDCoMKgwqDCoMKgwqDCoC8qCj4gPiArwqDCoMKgwqDCoMKgwqDC oMKgKiBUaGlzIHVzZXMgdGhlIGN1cnJlbnQgSVBSSU9SSVRZUiwgd2hpY2ggbWF5IGRpZmZlciBm cm9tCj4gPiArwqDCoMKgwqDCoMKgwqDCoMKgKiB3aGVuIHRoZSBJUlEgd2FzIGFjdHVhbGx5IG1h ZGUgcGVuZGluZy4gaC93IHNwZWMgcHJvYmFibHkKPiA+ICvCoMKgwqDCoMKgwqDCoMKgwqAqIGFs bG93cyB0aGlzLCBYWFhYIGNoZWNrCj4gPiArwqDCoMKgwqDCoMKgwqDCoMKgKi8KPiAKPiBGcm9t IHRoaXMgVk0gcG9pbnQgb2YgdmlldyB0aGUgSVBSSU9SSVRZUiBpcyBzLT5wcmlvcml0eS4gSSB3 b3VsZCByZW1vdmUKPiB0aGUgY29tbWVudC4KCklmIHlvdSBoYXZlIGFuIElSUTxBPiB3aXRoIHBy aW9yaXR5IDU1IHdoaWNoIGZpcmVzIGFuZCB0aGVuIHdoaWxlIGl0IGlzCnBlbmRpbmcgdGhlIHBy aW9yaXR5IGlzIGNoYW5nZWQgdG8gNzUgdGhlbiBJJ20gbm90IHN1cmUgd2hhdCBpbXBhY3QgdGhh dApoYXMgb24gdGhlIHByaW9yaXR5IHdoaWNoIHRoZSBoYXJkd2FyZSBjb25zaWRlcnMgdGhlIGFs cmVhZHkgcGVuZGluZwppbnRlcnJ1cHQgdG8gaGF2ZS4KClRvIG1ha2UgaXQgbW9yZSBjb21wbGV4 IGNvbnNpZGVyIGlmIHRoZXJlIHdhcyBhIHNlY29uZCBpbnRlcnJ1cHQgSVJRPEI+CndpdGggcHJp b3JpdHkgNjUsIGlmIHRoZSBoYW5kbGVyIGZvciB0aGF0IHdhcyB0aGUgb25lIGNoYW5nZWQgSVJR PEE+J3MKcHJpb3JpdHkgc2hvdWxkIGl0IGV4cGVjdCB0byBnZXQgaW1tZWRpYXRlbHkgcHJlZW1w dGVkIGJ5IElSUTxBPgoKVGhlIGNvbW1lbnQgaXMgdGhlcmUgYmVjYXVzZSBJJ20gbm90IHN1cmUg d2hhdCBiZWhhdmlvdXIgdGhlIHNwZWMgcmVxdWlyZXMuCgpJbiB0ZXJtcyBvZiBvdXIgY29kZSB3 aXRob3V0IHRoZSBzYXZlIHJlc3RvcmUgSSB0aGluayB0aGUgcGVuZGluZyBJUlE8QT4Kd291bGQg cmVtYWluIGF0IHByaW9yaXR5IDU1IGFuZCB0aGUgZ3Vlc3Qgd291bGQgZ2V0IElSUTxBPiB3aGVu IElSUTxCPgpFT0lzLiBXaGVyZWFzIHVwb24gcmVzdG9yZSB3ZSB3b3VsZCByZXJhaXNlIGl0IHdp dGggcHJpb3JpdHkgNzUgYW5kIElSUTxBPgp3b3VsZCBhcHBlYXIgdG8gcHJlZW1wdCBJUlE8Qj4s IHdoaWNoIHdvdWxkIGJlIGFuIGludGVyZXN0aW5nIGRpZmZlcmVuY2UgaW4KYmVoYXZpb3VyIGZy b20gdGhlIFBvViBvZiB0aGUgZ3Vlc3QuCgpJYW4uCgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBs aXN0cy54ZW4ub3JnCmh0dHA6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=