From mboxrd@z Thu Jan 1 00:00:00 1970 From: Konrad Rzeszutek Wilk Subject: [PATCH v2 2/2] hvmloader, pci: Don't try to relocate memory if 64-bit BAR is bigger than ~2GB Date: Wed, 28 Sep 2016 19:48:49 -0400 Message-ID: <1475106529-17443-3-git-send-email-konrad.wilk@oracle.com> References: <1475106529-17443-1-git-send-email-konrad.wilk@oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail6.bemta5.messagelabs.com ([195.245.231.135]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bpObB-0000sU-RR for xen-devel@lists.xenproject.org; Wed, 28 Sep 2016 23:49:13 +0000 In-Reply-To: <1475106529-17443-1-git-send-email-konrad.wilk@oracle.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org, konrad@kernel.org Cc: Andrew Cooper , Ian Jackson , Wei Liu , Jan Beulich , Konrad Rzeszutek Wilk List-Id: xen-devel@lists.xenproject.org V2hlcmUgfjJHQiBpcyBhY3R1YWxseSAyR0IgbWludXMgTU1JTyBzcGFjZSB1c2VkIGZvciBlbXVs YXRlZCBkZXZpY2VzCmFuZCBtaW51cyBBUElDIHNwYWNlLgoKVGhlcmUgaXMgbm8gcG9pbnQuIFdl IGNhbiB0cnkgdG8gYmFsbG9vbiBvdXQgdGhlIG1lbW9yeSBiZXR3ZWVuCmh2bV9pbmZvLT5sb3df bWVtX3BnZW5kIHRvIHBjaV9tZW1fZW5kIGFuZCB3ZSB3aWxsIG5ldmVyIGJlIGFibGUKaGF2ZSBh IGhvbGUgYmlnIGVub3VnaCBmb3IgMkdCIE1NSU8uIEFzIHdlIGNhbid0IGdvIGxvd2VyIHRoYW4K MHg4MDAwMDAwMCBhbmQgY2FuJ3QgZ28gYWJvdmUgMHhGMDAwMDAwMCB3aGljaCBlZmZlY3RpdmVs eSBsZWF2ZXMKdXMgd2l0aCAxNzkyTUIgb2YgTU1JTyBzcGFjZSAoLTMyTUIgZm9yIFZHQSBhbmQg LTE2IGZvciBwbGF0Zm9ybQpkZXZpY2UsIHNvIGluIHJlYWxpdHk6IDE3NDRNQikuCgpJbnN0ZWFk IGp1c3QgbGV0IGl0IGdvIGFib3ZlIDRHQiBpbiB0aGUgNjQtYml0IHpvbmUuCgpOb3RlIHRoYXQg cHJpb3IgdG8gdGhpcyBwYXRjaCB0aGUgaHZtbG9hZGVyIHdvdWxkIHJlbG9jYXRlIGFzIG11Y2gK bWVtb3J5IGFzIGl0IGNvdWxkIHVuZGVyIDRHQjoKCkxvdyBNTUlPIGhvbGUgbm90IGxhcmdlIGVu b3VnaCBmb3IgYWxsIGRldmljZXMsIHJlbG9jYXRpbmcgc29tZSBCQVJzIHRvIDY0LWJpdApSZWxv Y2F0aW5nIDB4ZmZmZiBwYWdlcyBmcm9tIDBlMDAwMTAwMCB0byAyMTAwMDAwMDAgZm9yIGxvd21l bSBNTUlPIGhvbGUKUmVsb2NhdGluZyAweGZmZmYgcGFnZXMgZnJvbSAwZDAwMDIwMDAgdG8gMjFm ZmZmMDAwIGZvciBsb3dtZW0gTU1JTyBob2xlClJlbG9jYXRpbmcgMHhmZmZmIHBhZ2VzIGZyb20g MGMwMDAzMDAwIHRvIDIyZmZmZTAwMCBmb3IgbG93bWVtIE1NSU8gaG9sZQpSZWxvY2F0aW5nIDB4 ZmZmZiBwYWdlcyBmcm9tIDBiMDAwNDAwMCB0byAyM2ZmZmQwMDAgZm9yIGxvd21lbSBNTUlPIGhv bGUKUmVsb2NhdGluZyAweGZmZmYgcGFnZXMgZnJvbSAwYTAwMDUwMDAgdG8gMjRmZmZjMDAwIGZv ciBsb3dtZW0gTU1JTyBob2xlClJlbG9jYXRpbmcgMHhmZmZmIHBhZ2VzIGZyb20gMDkwMDA2MDAw IHRvIDI1ZmZmYjAwMCBmb3IgbG93bWVtIE1NSU8gaG9sZQpSZWxvY2F0aW5nIDB4ZmZmZiBwYWdl cyBmcm9tIDA4MDAwNzAwMCB0byAyNmZmZmEwMDAgZm9yIGxvd21lbSBNTUlPIGhvbGUKUmVsb2Nh dGluZyAweDcgcGFnZXMgZnJvbSAwODAwMDAwMDAgdG8gMjdmZmY5MDAwIGZvciBsb3dtZW0gTU1J TyBob2xlCgp3aGljaCBpcyBjb21wbGV0ZWx5IHBvaW50bGVzcy4KClNpZ25lZC1vZmYtYnk6IEtv bnJhZCBSemVzenV0ZWsgV2lsayA8a29ucmFkLndpbGtAb3JhY2xlLmNvbT4KLS0tCkNjOiBKYW4g QmV1bGljaCA8amJldWxpY2hAc3VzZS5jb20+CkNjOiBBbmRyZXcgQ29vcGVyIDxhbmRyZXcuY29v cGVyM0BjaXRyaXguY29tPgpDYzogSWFuIEphY2tzb24gPGlhbi5qYWNrc29uQGV1LmNpdHJpeC5j b20+CkNjOiBXZWkgTGl1IDx3ZWkubGl1MkBjaXRyaXguY29tPgoKdjE6IEZpcnN0IHN1Ym1pc3Np b24uCgp2MjogQ2hlY2sgZm9yIHVwIHRvIDE3NDRNQi4KICAtIFVzZSBkZWZpbmVzIGZvciA0R0Is IDJHQi4KICAtIEZpeCBzdHlsZSBndWlkZSBpc3N1ZXMuCi0tLQogdG9vbHMvZmlybXdhcmUvaHZt bG9hZGVyL3BjaS5jIHwgMzMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tCiAxIGZp bGUgY2hhbmdlZCwgMjggaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS90b29scy9maXJtd2FyZS9odm1sb2FkZXIvcGNpLmMgYi90b29scy9maXJtd2FyZS9odm1sb2Fk ZXIvcGNpLmMKaW5kZXggNDE2ODI5ZC4uZjYxOTRiOSAxMDA2NDQKLS0tIGEvdG9vbHMvZmlybXdh cmUvaHZtbG9hZGVyL3BjaS5jCisrKyBiL3Rvb2xzL2Zpcm13YXJlL2h2bWxvYWRlci9wY2kuYwpA QCAtODAsNyArODAsNyBAQCB2b2lkIHBjaV9zZXR1cCh2b2lkKQogewogICAgIHVpbnQ4X3QgaXNf NjRiYXIsIHVzaW5nXzY0YmFyLCBiYXI2NF9yZWxvY2F0ZSA9IDA7CiAgICAgdWludDMyX3QgZGV2 Zm4sIGJhcl9yZWcsIGNtZCwgYmFyX2RhdGEsIGJhcl9kYXRhX3VwcGVyOwotICAgIHVpbnQ2NF90 IGJhc2UsIGJhcl9zeiwgYmFyX3N6X3VwcGVyLCBtbWlvX3RvdGFsID0gMDsKKyAgICB1aW50NjRf dCBiYXNlLCBiYXJfc3osIGJhcl9zel91cHBlciwgbW1pb190b3RhbCA9IDAsIG1taW9fNjRiaXRf dG90YWwgPSAwOwogICAgIHVpbnQzMl90IHZnYV9kZXZmbiA9IDI1NjsKICAgICB1aW50MTZfdCBj bGFzcywgdmVuZG9yX2lkLCBkZXZpY2VfaWQ7CiAgICAgdW5zaWduZWQgaW50IGJhciwgcGluLCBs aW5rLCBpc2FfaXJxOwpAQCAtOTcsNiArOTcsNyBAQCB2b2lkIHBjaV9zZXR1cCh2b2lkKQogICAg ICAgICB1aW50MzJfdCBkZXZmbjsKICAgICAgICAgdWludDMyX3QgYmFyX3JlZzsKICAgICAgICAg dWludDY0X3QgYmFyX3N6OworICAgICAgICBib29sIGFib3ZlXzRnYjsKICAgICB9ICpiYXJzID0g KHN0cnVjdCBiYXJzICopc2NyYXRjaF9zdGFydDsKICAgICB1bnNpZ25lZCBpbnQgaSwgbnJfYmFy cyA9IDA7CiAgICAgdWludDY0X3QgbW1pb19ob2xlX3NpemUgPSAwOwpAQCAtMjY1LDExICsyNjYs MzAgQEAgdm9pZCBwY2lfc2V0dXAodm9pZCkKICAgICAgICAgICAgIGJhcnNbaV0uZGV2Zm4gICA9 IGRldmZuOwogICAgICAgICAgICAgYmFyc1tpXS5iYXJfcmVnID0gYmFyX3JlZzsKICAgICAgICAg ICAgIGJhcnNbaV0uYmFyX3N6ICA9IGJhcl9zejsKKyAgICAgICAgICAgIGJhcnNbaV0uYWJvdmVf NGdiID0gZmFsc2U7CiAKICAgICAgICAgICAgIGlmICggKChiYXJfZGF0YSAmIFBDSV9CQVNFX0FE RFJFU1NfU1BBQ0UpID09CiAgICAgICAgICAgICAgICAgICBQQ0lfQkFTRV9BRERSRVNTX1NQQUNF X01FTU9SWSkgfHwKICAgICAgICAgICAgICAgICAgKGJhcl9yZWcgPT0gUENJX1JPTV9BRERSRVNT KSApCi0gICAgICAgICAgICAgICAgbW1pb190b3RhbCArPSBiYXJfc3o7CisgICAgICAgICAgICB7 CisgICAgICAgICAgICAgICAgLyoKKyAgICAgICAgICAgICAgICAgKiBJZiBiaWdnZXIgdGhhbiAy R0IgbWludXMgZW11bGF0ZWQgZGV2aWNlcyBCQVIgc3BhY2UgYW5kCisgICAgICAgICAgICAgICAg ICogQVBJQyBzcGFjZSwgdGhlbiBkb24ndCB0cnkgdG8gcHV0IHVuZGVyIDRHQi4KKyAgICAgICAg ICAgICAgICAgKi8KKyAgICAgICAgICAgICAgICBpZiAoIGlzXzY0YmFyICYmIChtbWlvX3RvdGFs ID49IEdCKDIpIHx8IGJhcl9zeiA+PQorICAgICAgICAgICAgICAgICAgICAgKEdCKDIpIC0gSFZN X0JFTE9XXzRHX01NSU9fTEVOR1RIIC0gbW1pb190b3RhbCkpICkKKyAgICAgICAgICAgICAgICB7 CisgICAgICAgICAgICAgICAgICAgIG1taW9fNjRiaXRfdG90YWwgKz0gYmFyX3N6OworICAgICAg ICAgICAgICAgICAgICBiYXJzW2ldLmFib3ZlXzRnYiA9IHRydWU7CisgICAgICAgICAgICAgICAg ICAgIC8qCisgICAgICAgICAgICAgICAgICAgICAqIEFzIHRoaXMgbWF5IG5vdCB0cmlnZ2VyIG5v dyB0aGF0IG1taW9fdG90YWwgY291bGQgYmUKKyAgICAgICAgICAgICAgICAgICAgICogbGVzcyB0 aGFuIDJHQiwgc28gZm9yY2UgaXQuCisgICAgICAgICAgICAgICAgICAgICAqLworICAgICAgICAg ICAgICAgICAgICBiYXI2NF9yZWxvY2F0ZSA9IDE7CisgICAgICAgICAgICAgICAgfQorICAgICAg ICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgbW1pb190b3RhbCArPSBiYXJfc3o7 CisgICAgICAgICAgICB9CiAKICAgICAgICAgICAgIG5yX2JhcnMrKzsKIApAQCAtMzQ5LDcgKzM2 OSw3IEBAIHZvaWQgcGNpX3NldHVwKHZvaWQpCiAgICAgICAgICAgICBwY2lfbWVtX3N0YXJ0ID0g aHZtX2luZm8tPmxvd19tZW1fcGdlbmQgPDwgUEFHRV9TSElGVDsKICAgICB9CiAKLSAgICBpZiAo IG1taW9fdG90YWwgPiAocGNpX21lbV9lbmQgLSBwY2lfbWVtX3N0YXJ0KSApCisgICAgaWYgKCBt bWlvX3RvdGFsID4gKHBjaV9tZW1fZW5kIC0gcGNpX21lbV9zdGFydCkgfHwgYmFyNjRfcmVsb2Nh dGUgKQogICAgIHsKICAgICAgICAgcHJpbnRmKCJMb3cgTU1JTyBob2xlIG5vdCBsYXJnZSBlbm91 Z2ggZm9yIGFsbCBkZXZpY2VzLCIKICAgICAgICAgICAgICAgICIgcmVsb2NhdGluZyBzb21lIEJB UnMgdG8gNjQtYml0XG4iKTsKQEAgLTQzMSw3ICs0NTEsNyBAQCB2b2lkIHBjaV9zZXR1cCh2b2lk KQogICAgICAgICAgKiBTaG91bGQgZWl0aGVyIG9mIHRob3NlIHR3byBjb25kaXRpb25zIGNoYW5n ZSwgdGhpcyBjb2RlIHdpbGwgYnJlYWsuCiAgICAgICAgICAqLwogICAgICAgICB1c2luZ182NGJh ciA9IGJhcnNbaV0uaXNfNjRiYXIgJiYgYmFyNjRfcmVsb2NhdGUKLSAgICAgICAgICAgICYmICht bWlvX3RvdGFsID4gKG1lbV9yZXNvdXJjZS5tYXggLSBtZW1fcmVzb3VyY2UuYmFzZSkpOworICAg ICAgICAgICAgJiYgKChtbWlvX3RvdGFsICsgbW1pb182NGJpdF90b3RhbCkgPiAobWVtX3Jlc291 cmNlLm1heCAtIG1lbV9yZXNvdXJjZS5iYXNlKSk7CiAgICAgICAgIGJhcl9kYXRhID0gcGNpX3Jl YWRsKGRldmZuLCBiYXJfcmVnKTsKIAogICAgICAgICBpZiAoIChiYXJfZGF0YSAmIFBDSV9CQVNF X0FERFJFU1NfU1BBQ0UpID09CkBAIC00NTEsNyArNDcxLDEwIEBAIHZvaWQgcGNpX3NldHVwKHZv aWQpCiAgICAgICAgICAgICAgICAgcmVzb3VyY2UgPSAmbWVtX3Jlc291cmNlOwogICAgICAgICAg ICAgICAgIGJhcl9kYXRhICY9IH5QQ0lfQkFTRV9BRERSRVNTX01FTV9NQVNLOwogICAgICAgICAg ICAgfQotICAgICAgICAgICAgbW1pb190b3RhbCAtPSBiYXJfc3o7CisgICAgICAgICAgICBpZiAo IGJhcnNbaV0uYWJvdmVfNGdiICkKKyAgICAgICAgICAgICAgICBtbWlvXzY0Yml0X3RvdGFsIC09 IGJhcl9zejsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBtbWlvX3RvdGFsIC09 IGJhcl9zejsKICAgICAgICAgfQogICAgICAgICBlbHNlCiAgICAgICAgIHsKLS0gCjIuNC4xMQoK Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZl bCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cHM6Ly9saXN0cy54ZW4u b3JnL3hlbi1kZXZlbAo=