From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jan Beulich" Subject: Re: [PATCH v2 1/4] VMX: Properly handle pi when all the assigned devices are removed Date: Fri, 27 May 2016 07:43:28 -0600 Message-ID: <57486B2002000078000EF3D0@prv-mh.provo.novell.com> References: <1464269954-8056-1-git-send-email-feng.wu@intel.com> <1464269954-8056-2-git-send-email-feng.wu@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1464269954-8056-2-git-send-email-feng.wu@intel.com> Content-Disposition: inline List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Feng Wu Cc: kevin.tian@intel.com, keir@xen.org, george.dunlap@eu.citrix.com, andrew.cooper3@citrix.com, dario.faggioli@citrix.com, xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org Pj4+IE9uIDI2LjA1LjE2IGF0IDE1OjM5LCA8ZmVuZy53dUBpbnRlbC5jb20+IHdyb3RlOgo+IC0t LSBhL3hlbi9hcmNoL3g4Ni9odm0vdm14L3ZteC5jCj4gKysrIGIveGVuL2FyY2gveDg2L2h2bS92 bXgvdm14LmMKPiBAQCAtMTEzLDcgKzExMywxOSBAQCBzdGF0aWMgdm9pZCB2bXhfdmNwdV9ibG9j ayhzdHJ1Y3QgdmNwdSAqdikKPiAgCQkmcGVyX2NwdSh2bXhfcGlfYmxvY2tpbmcsIHYtPnByb2Nl c3NvcikubG9jazsKPiAgICAgIHN0cnVjdCBwaV9kZXNjICpwaV9kZXNjID0gJnYtPmFyY2guaHZt X3ZteC5waV9kZXNjOwo+ICAKPiAtICAgIHNwaW5fbG9ja19pcnFzYXZlKHBpX2Jsb2NraW5nX2xp c3RfbG9jaywgZmxhZ3MpOwo+ICsgICAgc3Bpbl9sb2NrX2lycXNhdmUoJnYtPmFyY2guaHZtX3Zt eC5waV9ob3RwbHVnX2xvY2ssIGZsYWdzKTsKPiArICAgIGlmICggdW5saWtlbHkodi0+YXJjaC5o dm1fdm14LnBpX2Jsb2NraW5nX2NsZWFuZWRfdXApICkKPiArICAgIHsKPiArICAgICAgICAvKgo+ ICsgICAgICAgICAqIFRoZSB2Y3B1IGlzIHRvIGJlIGRlc3Ryb3llZCBhbmQgaXQgaGFzIGFscmVh ZHkgYmVlbiByZW1vdmVkCj4gKyAgICAgICAgICogZnJvbSB0aGUgcGVyLUNQVSBsaXN0IGlmIGl0 IGlzIGJsb2NraW5nLCB3ZSBzaG91bGRuJ3QgYWRkCj4gKyAgICAgICAgICogbmV3IHZDUFUgdG8g dGhlIGxpc3QuCj4gKyAgICAgICAgICovCgpUaGlzIGNvbW1lbnQgYXBwZWFycyB0byBiZSBzdGFs ZSB3cnQgdGhlIGltcGxlbWVudGF0aW9uIGZ1cnRoZXIKZG93bi4gQnV0IHNlZSB0aGVyZSBmb3Ig d2hldGhlciBpdCdzIHRoZSBjb21tZW50IG9yIHRoZSBjb2RlCnRoYXQgbmVlZCB0byBjaGFuZ2Uu Cgo+ICsgICAgICAgIHNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJnYtPmFyY2guaHZtX3ZteC5waV9o b3RwbHVnX2xvY2ssIGZsYWdzKTsKPiArICAgICAgICByZXR1cm47Cj4gKyAgICB9Cj4gKwo+ICsg ICAgc3Bpbl9sb2NrKHBpX2Jsb2NraW5nX2xpc3RfbG9jayk7CgpUaGVyZSBkb2Vzbid0IGFwcGVh ciB0byBiZSBhbiBhY3RpdmUgcHJvYmxlbSB3aXRoIHRoaXMsIGJ1dAp0YWtpbmcgYSBnbG9iYWwg bG9jayBpbnNpZGUgYSBwZXItdkNQVSBvbmUgZmVlbHMgYmFkLiBCb3RoIGhlcmUKYW5kIGluIHZt eF9waV9ibG9ja2luZ19jbGVhbnVwKCkgSSBjYW4ndCBzZWUgd2h5IHRoZSBnbG9iYWwKbG9jayBh bG9uZSB3b24ndCBkbyAtIHlvdSBhY3F1aXJlIGl0IGFueXdheS4KCj4gK3N0YXRpYyB2b2lkIHZt eF9waV9ibG9ja2luZ19jbGVhbnVwKHN0cnVjdCB2Y3B1ICp2KQo+ICt7Cj4gKyAgICB1bnNpZ25l ZCBsb25nIGZsYWdzOwo+ICsgICAgc3BpbmxvY2tfdCAqcGlfYmxvY2tpbmdfbGlzdF9sb2NrOwo+ ICsKPiArICAgIGlmICggIWlvbW11X2ludHBvc3QgKQo+ICsgICAgICAgIHJldHVybjsKCklmIHRo ZSBmdW5jdGlvbiBpcyB0byByZW1haW4gdG8gYmUgY2FsbGVkIGZyb20ganVzdCB0aGUgYm9keSBv ZiBhIGxvb3AKb3ZlciBhbGwgdkNQVS1zLCBwbGVhc2UgbWFrZSB0aGF0IGxvb3AgY29uZGl0aW9u YWwgdXBvbiBpb21tdV9pbnRwb3N0Cmluc3RlYWQgb2YgY2hlY2tpbmcgaXQgaGVyZSAoYW5kIGJh aWxpbmcpIGZvciBldmVyeSB2Q1BVLgoKPiArICAgIHNwaW5fbG9ja19pcnFzYXZlKCZ2LT5hcmNo Lmh2bV92bXgucGlfaG90cGx1Z19sb2NrLCBmbGFncyk7Cj4gKyAgICB2LT5hcmNoLmh2bV92bXgu cGlfYmxvY2tpbmdfY2xlYW5lZF91cCA9IDE7Cj4gKwo+ICsgICAgcGlfYmxvY2tpbmdfbGlzdF9s b2NrID0gdi0+YXJjaC5odm1fdm14LnBpX2Jsb2NraW5nLmxvY2s7Cj4gKyAgICBpZiAocGlfYmxv Y2tpbmdfbGlzdF9sb2NrID09IE5VTEwpCgpDb2Rpbmcgc3R5bGUuCgo+ICsgICAgewo+ICsgICAg ICAgIHNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJnYtPmFyY2guaHZtX3ZteC5waV9ob3RwbHVnX2xv Y2ssIGZsYWdzKTsKPiArICAgICAgICByZXR1cm47Cj4gKyAgICB9Cj4gKwo+ICsgICAgc3Bpbl9s b2NrKHBpX2Jsb2NraW5nX2xpc3RfbG9jayk7Cj4gKyAgICBpZiAoIHYtPmFyY2guaHZtX3ZteC5w aV9ibG9ja2luZy5sb2NrICE9IE5VTEwgKQo+ICsgICAgewo+ICsgICAgICAgIEFTU0VSVCh2LT5h cmNoLmh2bV92bXgucGlfYmxvY2tpbmcubG9jayA9PSBwaV9ibG9ja2luZ19saXN0X2xvY2spOwo+ ICsgICAgICAgIGxpc3RfZGVsKCZ2LT5hcmNoLmh2bV92bXgucGlfYmxvY2tpbmcubGlzdCk7Cj4g KyAgICAgICAgdi0+YXJjaC5odm1fdm14LnBpX2Jsb2NraW5nLmxvY2sgPSBOVUxMOwo+ICsgICAg fQo+ICsgICAgc3Bpbl91bmxvY2socGlfYmxvY2tpbmdfbGlzdF9sb2NrKTsKPiArICAgIHNwaW5f dW5sb2NrX2lycXJlc3RvcmUoJnYtPmFyY2guaHZtX3ZteC5waV9ob3RwbHVnX2xvY2ssIGZsYWdz KTsKPiArfQo+ICsKPiAgLyogVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgd2hlbiBwY2lkZXZzX2xv Y2sgaXMgaGVsZCAqLwo+ICB2b2lkIHZteF9waV9ob29rc19hc3NpZ24oc3RydWN0IGRvbWFpbiAq ZCkKPiAgewo+ICsgICAgc3RydWN0IHZjcHUgKnY7Cj4gKwo+ICAgICAgaWYgKCAhaW9tbXVfaW50 cG9zdCB8fCAhaGFzX2h2bV9jb250YWluZXJfZG9tYWluKGQpICkKPiAgICAgICAgICByZXR1cm47 Cj4gIAo+IC0gICAgQVNTRVJUKCFkLT5hcmNoLmh2bV9kb21haW4udm14LnZjcHVfYmxvY2spOwo+ ICsgICAgZm9yX2VhY2hfdmNwdSAoIGQsIHYgKQo+ICsgICAgICAgIHYtPmFyY2guaHZtX3ZteC5w aV9ibG9ja2luZ19jbGVhbmVkX3VwID0gMDsKPiAgCj4gLSAgICBkLT5hcmNoLmh2bV9kb21haW4u dm14LnZjcHVfYmxvY2sgPSB2bXhfdmNwdV9ibG9jazsKPiAtICAgIGQtPmFyY2guaHZtX2RvbWFp bi52bXgucGlfc3dpdGNoX2Zyb20gPSB2bXhfcGlfc3dpdGNoX2Zyb207Cj4gLSAgICBkLT5hcmNo Lmh2bV9kb21haW4udm14LnBpX3N3aXRjaF90byA9IHZteF9waV9zd2l0Y2hfdG87Cj4gLSAgICBk LT5hcmNoLmh2bV9kb21haW4udm14LnBpX2RvX3Jlc3VtZSA9IHZteF9waV9kb19yZXN1bWU7Cj4g KyAgICBpZiAoICFkLT5hcmNoLmh2bV9kb21haW4udm14LnZjcHVfYmxvY2sgKQo+ICsgICAgewo+ ICsgICAgICAgIGQtPmFyY2guaHZtX2RvbWFpbi52bXgudmNwdV9ibG9jayA9IHZteF92Y3B1X2Js b2NrOwo+ICsgICAgICAgIGQtPmFyY2guaHZtX2RvbWFpbi52bXgucGlfc3dpdGNoX2Zyb20gPSB2 bXhfcGlfc3dpdGNoX2Zyb207Cj4gKyAgICAgICAgZC0+YXJjaC5odm1fZG9tYWluLnZteC5waV9z d2l0Y2hfdG8gPSB2bXhfcGlfc3dpdGNoX3RvOwo+ICsgICAgICAgIGQtPmFyY2guaHZtX2RvbWFp bi52bXgucGlfZG9fcmVzdW1lID0gdm14X3BpX2RvX3Jlc3VtZTsKPiArICAgIH0KPiAgfQo+ICAK PiAgLyogVGhpcyBmdW5jdGlvbiBpcyBjYWxsZWQgd2hlbiBwY2lkZXZzX2xvY2sgaXMgaGVsZCAq Lwo+ICB2b2lkIHZteF9waV9ob29rc19kZWFzc2lnbihzdHJ1Y3QgZG9tYWluICpkKQo+ICB7Cj4g KyAgICBzdHJ1Y3QgdmNwdSAqdjsKPiArCj4gICAgICBpZiAoICFpb21tdV9pbnRwb3N0IHx8ICFo YXNfaHZtX2NvbnRhaW5lcl9kb21haW4oZCkgKQo+ICAgICAgICAgIHJldHVybjsKPiAgCj4gLSAg ICBBU1NFUlQoZC0+YXJjaC5odm1fZG9tYWluLnZteC52Y3B1X2Jsb2NrKTsKPiAtCj4gLSAgICBk LT5hcmNoLmh2bV9kb21haW4udm14LnZjcHVfYmxvY2sgPSBOVUxMOwo+IC0gICAgZC0+YXJjaC5o dm1fZG9tYWluLnZteC5waV9zd2l0Y2hfZnJvbSA9IE5VTEw7Cj4gLSAgICBkLT5hcmNoLmh2bV9k b21haW4udm14LnBpX3N3aXRjaF90byA9IE5VTEw7Cj4gLSAgICBkLT5hcmNoLmh2bV9kb21haW4u dm14LnBpX2RvX3Jlc3VtZSA9IE5VTEw7Cj4gKyAgICBmb3JfZWFjaF92Y3B1ICggZCwgdiApCj4g KyAgICAgICAgdm14X3BpX2Jsb2NraW5nX2NsZWFudXAodik7CgpJZiB5b3Uga2VlcCB0aGUgaG9v a3MgaW4gcGxhY2UsIHdoeSBpcyBpdCByZWxldmFudCB0byBkbyB0aGUgY2xlYW51cApoZXJlIGlu c3RlYWQgb2YganVzdCBhdCBkb21haW4gZGVhdGg/IEFzIHN1Z2dlc3RlZCBiZWZvcmUsIGlmIHlv dQpkaWQgaXQgdGhlcmUsIHlvdSdkIGxpa2VseSBnZXQgYXdheSB3aXRob3V0IGFkZGluZyB0aGUg bmV3IHBlci12Q1BVCmZsYWcuCgpGdXJ0aGVybW9yZSwgaWYgdGhpbmdzIHJlbWFpbiB0aGUgd2F5 IHRoZXkgYXJlIG5vdywgYSBwZXItZG9tYWluCmZsYWcgd291bGQgc3VmZmljZS4KCkFuZCBmaW5h bGx5IC0gZG8geW91IHJlYWxseSBuZWVkIHRvIHJldGFpbiBhbGwgZm91ciBob29rcz8gU2luY2Ug aWYgbm90LApvbmUgdGhhdCBnZXRzIHphcHBlZCBoZXJlIGNvdWxkIGJlIHVzZWQgaW4gcGxhY2Ug b2Ygc3VjaCBhIHBlci0KZG9tYWluIGZsYWcuCgo+IC0tLSBhL3hlbi9pbmNsdWRlL2FzbS14ODYv aHZtL3ZteC92bWNzLmgKPiArKysgYi94ZW4vaW5jbHVkZS9hc20teDg2L2h2bS92bXgvdm1jcy5o Cj4gQEAgLTIzMSw2ICsyMzEsOSBAQCBzdHJ1Y3QgYXJjaF92bXhfc3RydWN0IHsKPiAgICAgICAq IHBDUFUgYW5kIHdha2V1cCB0aGUgcmVsYXRlZCB2Q1BVLgo+ICAgICAgICovCj4gICAgICBzdHJ1 Y3QgcGlfYmxvY2tpbmdfdmNwdSBwaV9ibG9ja2luZzsKPiArCj4gKyAgICBzcGlubG9ja190ICAg ICAgICAgICAgcGlfaG90cGx1Z19sb2NrOwoKQmVpbmcgdGhyb3VnaCBhbGwgb2YgdGhlIHBhdGNo LCBJIGhhdmUgYSBwcm9ibGVtIHNlZWluZyB0aGUgaG90cGx1ZwpuYXR1cmUgb2YgdGhpcy4KCj4g KyAgICBib29sX3QgICAgICAgICAgICAgICAgcGlfYmxvY2tpbmdfY2xlYW5lZF91cDsKCklmIHRo aXMgZmxhZyBpcyB0byByZW1haW4sIGl0IHNob3VsZCBtb3ZlIGludG8gaXRzIGRlc2lnbmF0ZWQg c3RydWN0dXJlCihyaWdodCBhYm92ZSB5b3VyIGFkZGl0aW9uKS4KCkphbgoKX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlz dApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwOi8vbGlzdHMueGVuLm9yZy94ZW4tZGV2ZWwK