From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chao Gao Subject: Re: [PATCH v3 3/3] VT-d PI: restrict the vcpu number on a given pcpu Date: Fri, 23 Jun 2017 12:22:10 +0800 Message-ID: <20170623042207.GA57685@skl-2s3.sh.intel.com> References: <1495608977-15921-1-git-send-email-chao.gao@intel.com> <1495608977-15921-4-git-send-email-chao.gao@intel.com> <594410B9020000780016380D@prv-mh.provo.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <594410B9020000780016380D@prv-mh.provo.novell.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Jan Beulich Cc: Andrew Cooper , Kevin Tian , Jun Nakajima , xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org T24gRnJpLCBKdW4gMTYsIDIwMTcgYXQgMDk6MDk6MTNBTSAtMDYwMCwgSmFuIEJldWxpY2ggd3Jv dGU6Cj4+Pj4gT24gMjQuMDUuMTcgYXQgMDg6NTYsIDxjaGFvLmdhb0BpbnRlbC5jb20+IHdyb3Rl Ogo+PiBDdXJyZW50bHksIGEgYmxvY2tlZCB2Q1BVIGlzIHB1dCBpbiBpdHMgcENQVSdzIHBpIGJs b2NraW5nIGxpc3QuIElmCj4+IHRvbyBtYW55IHZDUFVzIGFyZSBibG9ja2VkIG9uIGEgZ2l2ZW4g cENQVSwgaXQgd2lsbCBpbmN1ciB0aGF0IHRoZSBsaXN0Cj4+IGdyb3dzIHRvbyBsb25nLiBBZnRl ciBhIHNpbXBsZSBhbmFseXNpcywgdGhlcmUgYXJlIDMyayBkb21haW5zIGFuZAo+PiAxMjggdmNw dSBwZXIgZG9tYWluLCB0aHVzIGFib3V0IDRNIHZDUFVzIG1heSBiZSBibG9ja2VkIGluIG9uZSBw Q1BVJ3MKPj4gUEkgYmxvY2tpbmcgbGlzdC4gV2hlbiBhIHdha2V1cCBpbnRlcnJ1cHQgYXJyaXZl cywgdGhlIGxpc3QgaXMKPj4gdHJhdmVyc2VkIHRvIGZpbmQgc29tZSBzcGVjaWZpYyB2Q1BVcyB0 byB3YWtlIHRoZW0gdXAuIFRoaXMgdHJhdmVyc2FsIGluCj4+IHRoYXQgY2FzZSB3b3VsZCBjb25z dW1lIG11Y2ggdGltZS4KPj4gCj4+IFRvIG1pdGlnYXRlIHRoaXMgaXNzdWUsIHRoaXMgcGF0Y2gg bGltaXRzIHRoZSB2Y3B1IG51bWJlciBvbiBhIGdpdmVuCj4+IHBDUFUsCj4KPlRoaXMgd291bGQg YmUgYSBidWcsIGJ1dCBJIHRoaW5rIGl0J3MgdGhlIGRlc2NyaXB0aW9uIHdoaWNoIGlzIHdyb25n Cj4ob3IgYXQgbGVhc3QgaW1wcmVjaXNlKTogWW91IGRvbid0IGxpbWl0IHRoZSBudW1iZXIgb2Yg dkNQVS1zIF9ydW5fCj5vbiBhbnkgcENQVSwgYnV0IHRob3NlIHRyYWNrZWQgb24gYW55IHBDUFUt cyBibG9ja2luZyBsaXN0LiBQbGVhc2UKPnNheSBzbyBoZXJlIHRvIGF2b2lkIGNvbmZ1c2lvbi4K CkFncmVlLgoKPgo+PiB0YWtpbmcgZmFjdG9ycyBzdWNoIGFzIHBlcmZvbWFuY2Ugb2YgY29tbW9u IGNhc2UsIGN1cnJlbnQgaHZtIHZjcHUKPj4gY291bnQgYW5kIGN1cnJlbnQgcGNwdSBjb3VudCBp bnRvIGNvbnNpZGVyYXRpb24uIFdpdGggdGhpcyBtZXRob2QsIGZvcgo+PiB0aGUgY29tbW9uIGNh c2UsIGl0IHdvcmtzIGZhc3QgYW5kIGZvciBzb21lIGV4dHJlbWUgY2FzZXMsIHRoZSBsaXN0Cj4+ IGxlbmd0aCBpcyB1bmRlciBjb250cm9sLgo+PiAKPj4gVGhlIGNoYW5nZSBpbiB2bXhfcGlfdW5i bG9ja192Y3B1KCkgaXMgZm9yIHRoZSBmb2xsb3dpbmcgY2FzZToKPj4gdmNwdSBpcyBydW5uaW5n IC0+IHRyeSB0byBibG9jayAodGhpcyBwYXRjaCBtYXkgY2hhbmdlIE5TRFQgdG8KPj4gYW5vdGhl ciBwQ1BVKSBidXQgbm90aWZpY2F0aW9uIGNvbWVzIGluIHRpbWUsIHRodXMgdGhlIHZjcHUKPgo+ V2hhdCBkb2VzICJidXQgbm90aWZpY2F0aW9uIGNvbWVzIGluIHRpbWUiIG1lYW4/Cj4KCkkgbWVh biB3aGVuIGxvY2FsX2V2ZW50c19uZWVkX2RlbGl2ZXJ5KCkgaW4gdmNwdV9ibG9jaygpIHJldHVy biB0cnVlLgoKPj4gZ29lcyBiYWNrIHRvIHJ1bm5pbmcgc3RhdGlvbiAtPiBWTS1lbnRyeSAod2Ug c2hvdWxkIHNldCBOU0RUIGFnYWluLAo+Cj5zL3N0YXRpb24vc3RhdGUvID8KPgo+PiByZXZlcnRp bmcgdGhlIGNoYW5nZSB3ZSBtYWtlIHRvIE5TRFQgaW4gdm14X3ZjcHVfYmxvY2soKSkKPgo+T3Zl cmFsbCBJJ20gbm90IHN1cmUgSSByZWFsbHkgdW5kZXJzdGFuZCB3aGF0IHlvdSB0cnkgdG8gZXhw bGFpbgo+aGVyZS4KCldpbGwgcHV0IGl0IGFib3ZlIHRoZSByZWxhdGVkIGNoYW5nZS4KCkkgd2Fu dGVkIHRvIGV4cGxhaW4gd2h5IHdlIG5lZWQgdGhpcyBjaGFuZ2UgaWYgYSB2Y3B1IGNhbiBiZSBh ZGRlZAp0byBhIHJlbW90ZSBwY3B1IChtZWFucyB0aGUgdmNwdSBpc24ndCBydW5uaW5nIG9uIHRo aXMgcGNwdSkuCgphIHZjcHUgbWF5IGdvIHRocm91Z2ggdGhlIHR3byBkaWZmZXJlbnQgcGF0aHMg ZnJvbSBjYWxsaW5nIHZjcHVfYmxvY2soKQp0byBWTS1lbnRyeToKUGF0aDE6IHZjcHVfYmxvY2so KS0+dm14X3ZjcHVfYmxvY2soKS0+bG9jYWxfZXZlbnRzX25lZWRfZGVsaXZlcnkocmV0dXJuCnRy dWUpIC0+IHZteF9waV91bmJsb2NrX3ZjcHUgKGR1cmluZyBWTS1lbnRyeSkKUGF0aDI6IHZjcHVf YmxvY2soKS0+dm14X3ZjcHVfYmxvY2soKS0+bG9jYWxfZXZlbnRzX25lZWRfZGVsaXZlcnkocmV0 dXJuCmZhbHNlKSAtPiB2bXhfcGlfc3dpdGNoX2Zyb20oKSAtPiB2bXhfcGlfc3dpdGNoX3RvKCkK LT52bXhfcGlfdW5ibG9ja192Y3B1IChkdXJpbmcgVk0tZW50cnkpCgpGb3IgbWlncmF0aW9uIGEg dmNwdSB0byBhbm90aGVyIHBjcHUgd291bGQgbGVhZCB0byBhIGluY29ycmVjdApwaV9kZXNjLT5u ZHN0LCB2bXhfcGlfc3dpdGNoX3RvKCkgcmUtYXNzaWducyBwaV9kZXNjLT5uZHN0LgpJdCB3YXMg ZW5vdWdoIGZvciBQYXRoMSAobm8gb25lIGNoYW5nZWQgdGhlIHBpX2Rlc2MtPm5kc3QgZmllbGQg YW5kCmNoYW5nZWQgdGhlIGJpbmRpbmcgYmV0d2VlbiBwY3B1IGFuZCB2Y3B1KSBhbmQgUGF0aDIu IEJ1dCwgbm93CnZteF92Y3B1X2Jsb2NrKCkgd291bGQgY2hhbmdlIHBpX2Rlc2MtPm5kc3QgdG8g YW5vdGhlciBwY3B1IHRvIHJlY2VpdmUKd2FrZXVwIGludGVycnVwdC4gSWYgbG9jYWxfZXZlbnRz X25lZWRfZGVsaXZlcnkoKSByZXR1cm5zIHRydWUsIHdlCnNob3VsZCBjb3JyZWN0IHBpX2Rlc2Mt Pm5kc3QgdG8gY3VycmVudCBwY3B1IGluIHZteF9waV91bmJsb2NrX3ZjcHUoKS4KCj4KPj4gLS0t IGEveGVuL2FyY2gveDg2L2h2bS92bXgvdm14LmMKPj4gKysrIGIveGVuL2FyY2gveDg2L2h2bS92 bXgvdm14LmMKPj4gQEAgLTEwMCwxNiArMTAwLDYyIEBAIHZvaWQgdm14X3BpX3Blcl9jcHVfaW5p dCh1bnNpZ25lZCBpbnQgY3B1KQo+PiAgICAgIHNwaW5fbG9ja19pbml0KCZwZXJfY3B1KHZteF9w aV9ibG9ja2luZywgY3B1KS5sb2NrKTsKPj4gIH0KPj4gIAo+PiArLyoKPj4gKyAqIEJ5IGRlZmF1 bHQsIHRoZSBsb2NhbCBwY3B1IChtZWFucyB0aGUgb25lIHRoZSB2Y3B1IGlzIGN1cnJlbnRseSBy dW5uaW5nIG9uKQo+PiArICogaXMgY2hvc2VuIGFzIHRoZSBkZXN0aW5hdGlvbiBvZiB3YWtldXAg aW50ZXJydXB0LiBCdXQgaWYgdGhlIHZjcHUgbnVtYmVyIG9mCj4+ICsgKiB0aGUgcGNwdSBleGNl ZWRzIGEgbGltaXQsIGFub3RoZXIgcGNwdSBpcyBjaG9zZW4gdW50aWwgd2UgZmluZCBhIHN1aXRh YmxlCj4+ICsgKiBvbmUuCj4+ICsgKgo+PiArICogQ3VycmVudGx5LCBjaG9vc2UgKHZfdG90L3Bf dG90KSArIEsgYXMgdGhlIGxpbWl0IG9mIHZjcHUgY291bnQsIHdoZXJlCj4+ICsgKiB2X3RvdCBp cyB0aGUgdG90YWwgbnVtYmVyIG9mIGh2bSB2Y3B1cyBvbiB0aGUgc3lzdGVtLCBwX3RvdCBpcyB0 aGUgdG90YWwKPj4gKyAqIG51bWJlciBvZiBwY3B1cyBpbiB0aGUgc3lzdGVtLCBhbmQgSyBpcyBh IGZpeGVkIG51bWJlci4gRXhwZXJtZW50cyBzaG93cwo+PiArICogdGhlIG1heGltdW0gdGltZSB0 byB3YWtldXAgYSB2Y3B1IGZyb20gYSAxMjgtZW50cnkgYmxvY2tpbmcgbGlzdCBpcyBhYm91dAo+ PiArICogMjJ1cywgd2hpY2ggaXMgdG9sZXJhYmxlLiBTbyBjaG9vc2UgMTI4IGFzIHRoZSBmaXhl ZCBudW1iZXIgSy4KPgo+R2l2aW5nIGFuZCBraW5kIG9mIGFic29sdXRlIHRpbWUgdmFsdWUgcmVx dWlyZXMgYWxzbyBzdGF0aW5nIG9uIHdoYXQKPmhhcmR3YXJlIHRoaXMgd2FzIG1lYXN1cmVkLgo+ Cj4+ICsgKiBUaGlzIHBvbGljeSBtYWtlcyBzdXJlOgo+PiArICogMSkgZm9yIGNvbW1vbiBjYXNl cywgdGhlIGxpbWl0IHdvbid0IGJlIHJlYWNoZWQgYW5kIHRoZSBsb2NhbCBwY3B1IGlzIHVzZWQK Pj4gKyAqIHdoaWNoIGlzIGJlbmVmaWNpYWwgdG8gcGVyZm9ybWFuY2UgKGF0IGxlYXN0LCBhdm9p ZCBhbiBJUEkgd2hlbiB1bmJsb2NraW5nCj4+ICsgKiB2Y3B1KS4KPj4gKyAqIDIpIGZvciB0aGUg d29yc3QgY2FzZSwgdGhlIGJsb2NraW5nIGxpc3QgbGVuZ3RoIHNjYWxlcyB3aXRoIHRoZSB2Y3B1 IGNvdW50Cj4+ICsgKiBkaXZpZGVkIGJ5IHRoZSBwY3B1IGNvdW50Lgo+PiArICovCj4+ICsjZGVm aW5lIFBJX0xJU1RfRklYRURfTlVNIDEyOAo+PiArI2RlZmluZSBQSV9MSVNUX0xJTUlUICAgICAo YXRvbWljX3JlYWQoJm51bV9odm1fdmNwdXMpIC8gbnVtX29ubGluZV9jcHVzKCkgKyBcCj4+ICsg ICAgICAgICAgICAgICAgICAgICAgICAgICBQSV9MSVNUX0ZJWEVEX05VTSkKPj4gKwo+PiArc3Rh dGljIGJvb2wgcGlfb3Zlcl9saW1pdChpbnQgY291bnQpCj4KPkNhbiBhIGNhbGxlciB2YWxpZGx5 IHBhc3MgYSBuZWdhdGl2ZSBhcmd1bWVudD8gT3RoZXJ3aXNlIHVuc2lnbmVkIGludAo+cGxlYXNl Lgo+Cj4+ICt7Cj4+ICsgICAgLyogQ29tcGFyZSB3LyBjb25zdGFudCBmaXJzdCB0byBzYXZlIGFu IGF0b21pYyByZWFkIGluIHRoZSBjb21tb24gY2FzZSAqLwo+Cj5BcyBhbiBhdG9taWMgcmVhZCBp cyBqdXN0IGEgbm9ybWFsIHJlYWQgb24geDg2LCBkb2VzIHRoaXMgcmVhbGx5IG1hdHRlcj8KCmFn cmVlLgoKPgo+PiArICAgIHJldHVybiAoKGNvdW50ID4gUElfTElTVF9GSVhFRF9OVU0pICYmCj4+ ICsgICAgICAgICAgICAoY291bnQgPiAoYXRvbWljX3JlYWQoJm51bV9odm1fdmNwdXMpIC8gbnVt X29ubGluZV9jcHVzKCkpICsKPj4gKyAgICAgICAgICAgICAgICBQSV9MSVNUX0ZJWEVEX05VTSkp Owo+Cj5SaWdodCBhYm92ZSB5b3UndmUgI2RlZmluZS1kIFBJX0xJU1RfTElNSVQgLSB3aHkgZG8g eW91IG9wZW4gY29kZQo+aXQgaGVyZT8gQWxzbyBub3RlIHRoYXQgdGhlIG91dGVyIHBhaXIgb2Yg cGFyZW50aGVzZXMgaXMgcG9pbnRsZXNzIChhbmQKPmhhbXBlcmluZyByZWFkYWJpbGl0eSkuCj4K Pj4gIHN0YXRpYyB2b2lkIHZteF92Y3B1X2Jsb2NrKHN0cnVjdCB2Y3B1ICp2KQo+PiAgewo+PiAg ICAgIHVuc2lnbmVkIGxvbmcgZmxhZ3M7Cj4+IC0gICAgdW5zaWduZWQgaW50IGRlc3Q7Cj4+ICsg ICAgdW5zaWduZWQgaW50IGRlc3QsIHBpX2NwdTsKPj4gICAgICBzcGlubG9ja190ICpvbGRfbG9j azsKPj4gLSAgICBzcGlubG9ja190ICpwaV9ibG9ja2luZ19saXN0X2xvY2sgPQo+PiAtCQkmcGVy X2NwdSh2bXhfcGlfYmxvY2tpbmcsIHYtPnByb2Nlc3NvcikubG9jazsKPj4gICAgICBzdHJ1Y3Qg cGlfZGVzYyAqcGlfZGVzYyA9ICZ2LT5hcmNoLmh2bV92bXgucGlfZGVzYzsKPj4gKyAgICBzcGlu bG9ja190ICpwaV9ibG9ja2luZ19saXN0X2xvY2s7Cj4+ICsKPj4gKyAgICBwaV9jcHUgPSB2LT5w cm9jZXNzb3I7Cj4+ICsgcmV0cnk6Cj4+ICsgICAgcGlfYmxvY2tpbmdfbGlzdF9sb2NrID0gJnBl cl9jcHUodm14X3BpX2Jsb2NraW5nLCBwaV9jcHUpLmxvY2s7Cj4+ICAKPj4gICAgICBzcGluX2xv Y2tfaXJxc2F2ZShwaV9ibG9ja2luZ19saXN0X2xvY2ssIGZsYWdzKTsKPj4gKyAgICAvKgo+PiAr ICAgICAqIFNpbmNlIHBpX2NwdSBtYXkgbm93IGJlIG9uZSBvdGhlciB0aGFuIHRoZSBvbmUgdiBp cyBjdXJyZW50bHkKPj4gKyAgICAgKiBydW5uaW5nIG9uLCBjaGVjayB0byBtYWtlIHN1cmUgdGhh dCBpdCdzIHN0aWxsIHVwLgo+PiArICAgICAqLwo+PiArICAgIGlmICggdW5saWtlbHkoKCFjcHVf b25saW5lKHBpX2NwdSkpIHx8Cj4KPkJ1dCB0aGlzIGNoZWNrIGNvbWVzdCB0byBsYXRlIHRoZW46 IFlvdSd2ZSBhbHJlYWR5IHVzZWQgcGVyLUNQVQo+ZGF0YSBvZiBhbiBvZmZsaW5lIENQVSBieSB0 aGUgdGltZSB5b3UgbWFrZSBpdCBoZXJlLiBJJ20gYWxzbyBub3QKPnlvdSByZWFsbHkgbmVlZCB0 aGUgbG9jayBoZXJlLiBBIHJlYWRfYXRvbWljKCkgb3IgdGhlIGNvdW50ZXIKPndvdWxkIHN1ZmZp Y2UgYWZhaWNzIChvZiBjb3Vyc2UgdGhlIHdyaXRlcnMgdGhlbiB3b3VsZCBuZWVkIHRvCj51c2Ug d3JpdGVfYXRvbWljKCkgb3IgYWRkX3NpemVkKCkpLgo+Cj4+ICsgICAgICAgICAgICAgcGlfb3Zl cl9saW1pdChwZXJfY3B1KHZteF9waV9ibG9ja2luZywgcGlfY3B1KS5jb3VudGVyKSkgKQo+Cj5J bmRlbnRhdGlvbi4KPgo+PiArICAgIHsKPj4gKyAgICAgICAgcGlfY3B1ID0gY3B1bWFza19jeWNs ZShwaV9jcHUsICZjcHVfb25saW5lX21hcCk7Cj4KPldpdGggdGhpcywgaG93IGNvdWxkIHRoZSBD UFUgYmUgb2ZmbGluZSBieSB0aGUgdGltZSB5b3UgbWFrZSBpdAo+YmFjayB0byB0aGUgY2hlY2sg YWJvdmUuCgpUaGFua3MgdG8gcG9pbnQgaXQgb3V0LiBJdCB3b3VsZCBpbmN1ciBhIGJ1Zy4KCkkg dGhpbmsgd2Ugc2hvdWxkIGRvIHRoaW5ncyBsaWtlIHRoaXM6CgpJRiBwaV9ibG9ja2luZ19saXN0 IG9mIGN1cnJlbnQgcGNwdSBkb2Vzbid0IG92ZXIgdGhlIGxpbWl0OgoJYWRkIHRoZSB2Y3B1IHRv IGN1cnJlbnQgcGNwdS4KRUxTRQoJYWRkIHRoZSB2Y3B1IHRvIGFub3RoZXIgcGNwdS4KClRvIGFk ZCB0aGUgdmNwdSB0byBhbm90aGVyIHBjcHUsIHdlIHNob3VsZCBhdm9pZCBjb25jdXJyZW5jeSB3 aXRoCnZteF9waV9kZXNjX2ZpeHVwKCkuIFRodXMsIGEgbG9jayAoZS5nLiByZW1vdGVfcGlfbGlz dF9sb2NrKQpjYW4gc29sdmUgdGhpcyBwb3RlbnRpYWwgY29uY3VycmVuY3kuIFVzaW5nIHRoaXMg bG9jayBsaWtlIGJlbG93OgoKaW4gdm14X3ZjcHVfYmxvY2soKToKCklGIHBpX2Jsb2NraW5nX2xp c3Qgb2YgY3VycmVudCBwY3B1IGRvZXNuJ3Qgb3ZlciB0aGUgbGltaXQ6CglhZGQgdGhlIHZjcHUg dG8gY3VycmVudCBwY3B1CkVMU0UKCWFjcXVpcmUgcmVtb3RlX3BpX2xpc3RfbG9jawoJY2hvb3Nl IGFub3RoZXIgb25saW5lIHBjcHUJKGRvbid0IHdvcnJ5IHRoaXMgcGNwdSB3b3VsZCBnb2VzCgkJ CQkJIG9mZmxpbmUgZm9yIHdlIGhvbGQgdGhlCgkJCQkJIHJlbW90ZV9waV9saXN0X2xvY2ssIHdo aWNoIGJsb2NrcwoJCQkJCSBjYWxsaW5nIHZteF9waV9kZXNjX2ZpeHVwKCksCgkJCQkJIHRodXMg YXQgbGVhc3Qgd2UgY2FuIGFkZCB0aGlzCgkJCQkJIHZjcHUgdG8gdGhlIHBpX2Jsb2NraW5nX2xp c3QKCQkJCQkgYmVmb3JlIGNsZWFudXApCglhZGQgdGhlIHZjcHUgdG8gdGhlIGNob3NlbiBwY3B1 CglyZWxlYXNlIHJlbW90ZV9waV9saXN0X2xvY2sKCmluIHZteF9waV9kZXNjX2ZpeHVwKCk6CmFj cXVpcmUgcmVtb3RlX3BpX2xpc3RfbG9jawouLi4KcmVsZWFzZSByZW1vdGVfcGlfbGlzdF9sb2Nr CgpUaGFua3MKQ2hhbwoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRw czovL2xpc3RzLnhlbi5vcmcveGVuLWRldmVsCg==