From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: [PATCH 6/9] x86/amd: Allocate resources to cope with LS_CFG being per-core on Fam17h Date: Mon, 3 Dec 2018 16:18:19 +0000 Message-ID: <1543853902-6257-7-git-send-email-andrew.cooper3@citrix.com> References: <1543853902-6257-1-git-send-email-andrew.cooper3@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1543853902-6257-1-git-send-email-andrew.cooper3@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: Xen-devel Cc: Andrew Cooper , "Signed-off-by: Brian Woods" , Wei Liu , Jan Beulich , =?UTF-8?q?Roger=20Pau=20Monn=C3=A9?= List-Id: xen-devel@lists.xenproject.org VGhlIG5lZWQgZm9yIHBlci1jb3JlIHJlc291cmNlcyBpcyBhIHByb3BlcnR5IG9mIEZhbTE3aCBo YXJkd2FyZS4gIFRoZQptZWNoYW5pbSBmb3IgY2FsY3VsYXRpbmcgLyBhbGxvY2F0aW5nIHNwYWNl IGlzIGFsbCBhIGJpdCBob3JyaWJsZSwgYnV0IGlzIHRoZQpiZXN0IHdoaWNoIGNhbiBiZSBkb25l IGF0IHRoaXMgcG9pbnQuICBTZWUgdGhlIGNvZGUgY29tbWVudHMgZm9yIGRldGFpbHMuCgpTaWdu ZWQtb2ZmLWJ5OiBBbmRyZXcgQ29vcGVyIDxhbmRyZXcuY29vcGVyM0BjaXRyaXguY29tPgpQYXJ0 cyBiYXNlZCBvbiBhbiBlYXJsaWVyIHBhdGNoIGJ5IEJyaWFuClNpZ25lZC1vZmYtYnk6IFNpZ25l ZC1vZmYtYnk6IEJyaWFuIFdvb2RzIDxicmlhbi53b29kc0BhbWQuY29tPgotLS0KQ0M6IEphbiBC ZXVsaWNoIDxKQmV1bGljaEBzdXNlLmNvbT4KQ0M6IFdlaSBMaXUgPHdlaS5saXUyQGNpdHJpeC5j b20+CkNDOiBSb2dlciBQYXUgTW9ubsOpIDxyb2dlci5wYXVAY2l0cml4LmNvbT4KQ0M6IEJyaWFu IFdvb2RzIDxicmlhbi53b29kc0BhbWQuY29tPgotLS0KIHhlbi9hcmNoL3g4Ni9jcHUvYW1kLmMg fCA5MSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwog MSBmaWxlIGNoYW5nZWQsIDkxIGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94 ODYvY3B1L2FtZC5jIGIveGVuL2FyY2gveDg2L2NwdS9hbWQuYwppbmRleCA4OTdjMDYwLi5lYTEw ZGJkIDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvY3B1L2FtZC5jCisrKyBiL3hlbi9hcmNoL3g4 Ni9jcHUvYW1kLmMKQEAgLTQxOSw2ICs0MTksOTcgQEAgc3RhdGljIHZvaWQgX19pbml0IG5vaW5s aW5lIGFtZF9wcm9iZV9sZWdhY3lfc3NiZCh2b2lkKQogfQogCiAvKgorICogVGhpcyBpcyBhbGwg YSBncm9zcyBoYWNrLCBidXQgWGVuIHJlYWxseSBkb2Vzbid0IGhhdmUgZmxleGlibGUtZW5vdWdo CisgKiBwZXItY3B1IGluZnJhc3RydWN0dXJlIHRvIGRvIGl0IHByb3Blcmx5LiAgRm9yIFplbih2 MSkgd2l0aCBTTVQgYWN0aXZlLAorICogTVNSX0FNRDY0X0xTX0NGRyBpcyBwZXItY29yZSByYXRo ZXIgdGhhbiBwZXItdGhyZWFkLCBzbyB3ZSBuZWVkIGEgcGVyLWNvcmUKKyAqIHNwaW5sb2NrIHRv IHN5bmNocm9uaXNlIHVwZGF0ZXMgb2YgdGhlIE1TUi4KKyAqCisgKiBXZSBjYW4ndCB1c2UgcGVy LWNwdSBzdGF0ZSBiZWNhdXNlIHRha2luZyBvbmUgQ1BVIG9mZmxpbmUgd291bGQgZnJlZSBzdGF0 ZQorICogdW5kZXIgdGhlIGZlZXQgb2YgYW5vdGhlci4gIElkZWFsbHksIHdlJ2QgYWxsb2NhdGUg bWVtb3J5IG9uIHRoZSBBUCBib290CisgKiBwYXRoLCBidXQgYnkgdGhlIHRpbWUgdGhlIHNpYmxp bmcgaW5mb3JtYXRpb24gaXMgY2FsY3VsYXRlZCBzdWZmaWNpZW50bHkKKyAqIGZvciB1cyB0byBs b2NhdGUgdGhlIHBlci1jb3JlIHN0YXRlLCBpdCdzIHRvbyBsYXRlIHRvIGZhaWwgdGhlIEFQIGJv b3QuCisgKgorICogV2UgYWxzbyBjYW4ndCBhZmZvcmQgdG8gZW5kIHVwIGluIGEgaGV0ZXJvZ2Vu ZW91cyBzY2VuYXJpbyB3aXRoIHNvbWUgQ1BVcworICogdW5hYmxlIHRvIHNhZmVseSB1c2UgTFNf Q0ZHLgorICoKKyAqIFRoZXJlZm9yZSwgd2UgaGF2ZSB0byBhbGxvY2F0ZSBmb3IgdGhlIHdvcnNl LWNhc2Ugc2NlbmFyaW8sIHdoaWNoIGlzCisgKiBiZWxpZXZlZCB0byBiZSA0IHNvY2tldHMuICBB bnkgYWxsb2NhdGlvbiBmYWlsdXJlIGNhdXNlIHVzIHRvIHR1cm4gTFNfQ0ZHCisgKiBvZmYsIGFz IHRoaXMgaXMgZnJhY3Rpb25hbGx5IGJldHRlciB0aGFuIGZhaWxpbmcgdG8gYm9vdC4KKyAqLwor c3RhdGljIHN0cnVjdCBzc2JkX2xzX2NmZyB7CisJc3BpbmxvY2tfdCBsb2NrOworCXVuc2lnbmVk IGludCBkaXNhYmxlX2NvdW50OworfSAqc3NiZF9sc19jZmdbNF07CitzdGF0aWMgdW5zaWduZWQg aW50IHNzYmRfbWF4X2NvcmVzOworCitzdGF0aWMgaW50IF9faW5pdCBhbWRfaW5pdF9sZWdhY3lf c3NiZCh2b2lkKQoreworCWNvbnN0IHN0cnVjdCBjcHVpbmZvX3g4NiAqYyA9ICZib290X2NwdV9k YXRhOworCXVuc2lnbmVkIGludCBzb2NrZXQsIGNvcmU7CisKKwkvKiBObyBsZWdhY3kgU1NCRCBp bnRlcmZhY2U/ICBOb3RoaW5nIHRvIGRvLiAqLworCWlmICghY3B1X2hhc19sZWdhY3lfc3NiZCkK KwkJcmV0dXJuIDA7CisKKwkvKgorCSAqIE5vIHNldHVwIHJlcXVpcmVkIGZvcjoKKwkgKiAgLSBV c2luZyBNU1JfVklSVF9TUEVDX0NUUkwKKwkgKiAgLSBQcmUtRmFtMTdoIGhhcmR3YXJlCisJICog IC0gRmFtMTdoIHdpdGggU01UIGRpc2FibGVkCisJICovCisJaWYgKGNwdV9oYXNfdmlydF9zY19z c2JkIHx8IGMtPng4NiA8IDB4MTcgfHwgYy0+eDg2X251bV9zaWJsaW5ncyA9PSAxKQorCQlyZXR1 cm4gMDsKKworCS8qCisJICogT25lIGNvdWxkIGJlIGZvcmdpdmVuIGZvciB0aGlua2luZyB0aGF0 IGMtPng4Nl9tYXhfY29yZXMgaXMgdGhlCisJICogY29ycmVjdCB2YWx1ZSB0byB1c2UgaGVyZS4K KwkgKgorCSAqIEhvd2V2ZXIsIHRoYXQgdmFsdWUgaXMgZGVyaXZlZCBmcm9tIHRoZSBjdXJyZW50 IGNvbmZpZ3VyYXRpb24sIGFuZAorCSAqIGMtPmNwdV9jb3JlX2lkIGlzIHNwYXJzZSBvbiBhbGwg YnV0IHRoZSB0b3AgZW5kIENQVXMuICBEZXJpdmUKKwkgKiBtYXhfY3B1cyBmcm9tIEFwaWNJZENv cmVJZFNpemUgd2hpY2ggd2lsbCBjb3ZlciBhbnkgc3BhcnNlbmVzcy4KKwkgKi8KKwlpZiAoYy0+ ZXh0ZW5kZWRfY3B1aWRfbGV2ZWwgPj0gMHg4MDAwMDAwOCkgeworCQlzc2JkX21heF9jb3JlcyA9 IDF1IDw8IE1BU0tfRVhUUihjcHVpZF9lY3goMHg4MDAwMDAwOCksIDB4ZjAwMCk7CisJCXNzYmRf bWF4X2NvcmVzIC89IGMtPng4Nl9udW1fc2libGluZ3M7CisJfQorCisJaWYgKHNzYmRfbWF4X2Nv cmVzID09IDApIHsKKwkJcHJpbnRrKFhFTkxPR19XQVJOSU5HCisJCSAgICAgICAiRmFpbGVkIHRv IGNhbGN1bGF0ZSBtYXhfY29yZXMuIERpc2FibGluZyBMRUdBQ1lfU1NCRFxuIik7CisJCXNldHVw X2NsZWFyX2NwdV9jYXAoWDg2X0ZFQVRVUkVfTEVHQUNZX1NTQkQpOworCisJCXJldHVybiAwOwor CX0KKworCS8qCisJICogQWxsb2NhdGUgdGhlIHdvcnNlIGNhc2UgY29yZXMtcGVyLXNvY2tldCB3 b3J0aCBvZiBzdGF0ZSwgYXMKKwkgKiBkZXNjcmliZWQgYnkgaGFyZHdhcmUuCisJICovCisJZm9y IChzb2NrZXQgPSAwOyBzb2NrZXQgPCBBUlJBWV9TSVpFKHNzYmRfbHNfY2ZnKTsgKytzb2NrZXQp IHsKKwkJc3NiZF9sc19jZmdbc29ja2V0XSA9CisJCQl4emFsbG9jX2FycmF5KHN0cnVjdCBzc2Jk X2xzX2NmZywgc3NiZF9tYXhfY29yZXMpOworCisJCWlmICghc3NiZF9sc19jZmdbc29ja2V0XSkg eworCQkJLyoKKwkJCSAqIE1lbW9yeSBhbGxvY2F0aW9uIGZhaWx1cmUuICBCYWNrdHJhY2sgYW5k IHByZXRlbmQKKwkJCSAqIHRoYXQgdGhlIExFR0FDWV9TU0JEIGludGVyZmFjZSBpc24ndCBhdmFp bGFibGUuCisJCQkgKi8KKwkJCXByaW50ayhYRU5MT0dfV0FSTklORworCQkJICAgICAgICJPdXQg b2YgbWVtb3J5LiAgRGlzYWJsaW5nIExFR0FDWV9TU0JEXG4iKTsKKwkJCXNldHVwX2NsZWFyX2Nw dV9jYXAoWDg2X0ZFQVRVUkVfTEVHQUNZX1NTQkQpOworCisJCQlyZXR1cm4gMDsKKwkJfQorCisJ CWZvciAoY29yZSA9IDA7IGNvcmUgPCBzc2JkX21heF9jb3JlczsgKytjb3JlKQorCQkJc3Bpbl9s b2NrX2luaXQoJnNzYmRfbHNfY2ZnW3NvY2tldF1bY29yZV0ubG9jayk7CisJfQorCisJcmV0dXJu IDA7Cit9CitwcmVzbXBfaW5pdGNhbGwoYW1kX2luaXRfbGVnYWN5X3NzYmQpOworCisvKgogICog Q2hlY2sgZm9yIHRoZSBwcmVzZW5jZSBvZiBhbiBBTUQgZXJyYXR1bS4gQXJndW1lbnRzIGFyZSBk ZWZpbmVkIGluIGFtZC5oIAogICogZm9yIGVhY2gga25vd24gZXJyYXR1bS4gUmV0dXJuIDEgaWYg ZXJyYXR1bSBpcyBmb3VuZC4KICAqLwotLSAKMi4xLjQKCgpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZl bEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxt YW4vbGlzdGluZm8veGVuLWRldmVs