From mboxrd@z Thu Jan 1 00:00:00 1970 From: Konrad Rzeszutek Wilk Subject: [PATCH v1] hvmloader, pci: Don't try to relocate memory if 64-bit BAR is bigger than 4GB Date: Wed, 6 Jul 2016 14:16:12 -0400 Message-ID: <1467828972-14485-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 1bKrNE-0001CO-So for xen-devel@lists.xenproject.org; Wed, 06 Jul 2016 18:16:36 +0000 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 Cc: Andrew Cooper , Jan Beulich , Konrad Rzeszutek Wilk List-Id: xen-devel@lists.xenproject.org VGhlcmUgaXMgbm8gcG9pbnQuIFdlIGNhbiB0cnkgdG8gYmFsbG9vbiBvdXQgdGhlIG1lbW9yeSBi ZXR3ZWVuCmh2bV9pbmZvLT5sb3dfbWVtX3BnZW5kIHRvIHBjaV9tZW1fZW5kIGFuZCB3ZSB3aWxs IG5ldmVyIGJlIGFibGUKaGF2ZSBhIGhvbGUgYmlnIGVub3VnaCBmb3IgNEdCIE1NSU8uCgpJbnN0 ZWFkIGp1c3QgbGV0IGl0IGdvIGFib3ZlIDRHQiBpbiB0aGUgNjQtYml0IHpvbmUuCgpOb3RlIHRo YXQgcHJpb3IgdG8gdGhpcyBwYXRjaCB0aGUgaHZtbG9hZGVyIHdvdWxkIHJlbG9jYXRlIGFzIG11 Y2gKbWVtb3J5IGFzIGl0IGNvdWxkIHVuZGVyIDRHQjoKTG93IE1NSU8gaG9sZSBub3QgbGFyZ2Ug ZW5vdWdoIGZvciBhbGwgZGV2aWNlcywgcmVsb2NhdGluZyBzb21lIEJBUnMgdG8gNjQtYml0ClJl bG9jYXRpbmcgMHhmZmZmIHBhZ2VzIGZyb20gMGUwMDAxMDAwIHRvIDIxMDAwMDAwMCBmb3IgbG93 bWVtIE1NSU8gaG9sZQpSZWxvY2F0aW5nIDB4ZmZmZiBwYWdlcyBmcm9tIDBkMDAwMjAwMCB0byAy MWZmZmYwMDAgZm9yIGxvd21lbSBNTUlPIGhvbGUKUmVsb2NhdGluZyAweGZmZmYgcGFnZXMgZnJv bSAwYzAwMDMwMDAgdG8gMjJmZmZlMDAwIGZvciBsb3dtZW0gTU1JTyBob2xlClJlbG9jYXRpbmcg MHhmZmZmIHBhZ2VzIGZyb20gMGIwMDA0MDAwIHRvIDIzZmZmZDAwMCBmb3IgbG93bWVtIE1NSU8g aG9sZQpSZWxvY2F0aW5nIDB4ZmZmZiBwYWdlcyBmcm9tIDBhMDAwNTAwMCB0byAyNGZmZmMwMDAg Zm9yIGxvd21lbSBNTUlPIGhvbGUKUmVsb2NhdGluZyAweGZmZmYgcGFnZXMgZnJvbSAwOTAwMDYw MDAgdG8gMjVmZmZiMDAwIGZvciBsb3dtZW0gTU1JTyBob2xlClJlbG9jYXRpbmcgMHhmZmZmIHBh Z2VzIGZyb20gMDgwMDA3MDAwIHRvIDI2ZmZmYTAwMCBmb3IgbG93bWVtIE1NSU8gaG9sZQpSZWxv Y2F0aW5nIDB4NyBwYWdlcyBmcm9tIDA4MDAwMDAwMCB0byAyN2ZmZjkwMDAgZm9yIGxvd21lbSBN TUlPIGhvbGUKCndoaWNoIGlzIGNvbXBsZXRlbHkgcG9pbnRsZXNzLgoKU2lnbmVkLW9mZi1ieTog S29ucmFkIFJ6ZXN6dXRlayBXaWxrIDxrb25yYWQud2lsa0BvcmFjbGUuY29tPgotLS0KQ2M6IEph biBCZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KQ2M6IEFuZHJldyBDb29wZXIgPGFuZHJldy5j b29wZXIzQGNpdHJpeC5jb20+Ci0tLQogdG9vbHMvZmlybXdhcmUvaHZtbG9hZGVyL3BjaS5jIHwg MjYgKysrKysrKysrKysrKysrKysrKystLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAyMCBpbnNlcnRp b25zKCspLCA2IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3Rvb2xzL2Zpcm13YXJlL2h2bWxv YWRlci9wY2kuYyBiL3Rvb2xzL2Zpcm13YXJlL2h2bWxvYWRlci9wY2kuYwppbmRleCA0ZWIxYTMx Li4yOWMwYTlhIDEwMDY0NAotLS0gYS90b29scy9maXJtd2FyZS9odm1sb2FkZXIvcGNpLmMKKysr IGIvdG9vbHMvZmlybXdhcmUvaHZtbG9hZGVyL3BjaS5jCkBAIC04MCw3ICs4MCw3IEBAIHZvaWQg cGNpX3NldHVwKHZvaWQpCiB7CiAgICAgdWludDhfdCBpc182NGJhciwgdXNpbmdfNjRiYXIsIGJh cjY0X3JlbG9jYXRlID0gMDsKICAgICB1aW50MzJfdCBkZXZmbiwgYmFyX3JlZywgY21kLCBiYXJf ZGF0YSwgYmFyX2RhdGFfdXBwZXI7Ci0gICAgdWludDY0X3QgYmFzZSwgYmFyX3N6LCBiYXJfc3pf dXBwZXIsIG1taW9fdG90YWwgPSAwOworICAgIHVpbnQ2NF90IGJhc2UsIGJhcl9zeiwgYmFyX3N6 X3VwcGVyLCBtbWlvX3RvdGFsID0gMCwgbW1pb182NGJpdF90b3RhbCA9IDA7CiAgICAgdWludDMy X3QgdmdhX2RldmZuID0gMjU2OwogICAgIHVpbnQxNl90IGNsYXNzLCB2ZW5kb3JfaWQsIGRldmlj ZV9pZDsKICAgICB1bnNpZ25lZCBpbnQgYmFyLCBwaW4sIGxpbmssIGlzYV9pcnE7CkBAIC0yNjks OCArMjY5LDE5IEBAIHZvaWQgcGNpX3NldHVwKHZvaWQpCiAgICAgICAgICAgICBpZiAoICgoYmFy X2RhdGEgJiBQQ0lfQkFTRV9BRERSRVNTX1NQQUNFKSA9PQogICAgICAgICAgICAgICAgICAgUENJ X0JBU0VfQUREUkVTU19TUEFDRV9NRU1PUlkpIHx8CiAgICAgICAgICAgICAgICAgIChiYXJfcmVn ID09IFBDSV9ST01fQUREUkVTUykgKQotICAgICAgICAgICAgICAgIG1taW9fdG90YWwgKz0gYmFy X3N6OwotCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgLyogSWYgYmlnZ2VyIHRoYW4g NEdCLCBkb24ndCB0cnkgdG8gcHV0IHVuZGVyIDRHQi4gKi8KKyAgICAgICAgICAgICAgICBpZiAo IGlzXzY0YmFyICYmIGJhcl9zeiA+ICgxdWxsPDwzMikgKQorICAgICAgICAgICAgICAgIHsKKyAg ICAgICAgICAgICAgICAgICAgbW1pb182NGJpdF90b3RhbCArPSBiYXJfc3o7CisgICAgICAgICAg ICAgICAgICAgIC8qCisgICAgICAgICAgICAgICAgICAgICAqIEFzIHRoaXMgbWF5IG5vdCB0cmln Z2VyIG5vdyB0aGF0IG1taW9fdG90YWwgY291bGQgYmUKKyAgICAgICAgICAgICAgICAgICAgICog bGVzcyB0aGFuIDJHQiwgc28gZm9yY2UgaXQuCisgICAgICAgICAgICAgICAgICAgICAqLworICAg ICAgICAgICAgICAgICAgICBiYXI2NF9yZWxvY2F0ZSA9IDE7CisgICAgICAgICAgICAgICAgfSBl bHNlCisgICAgICAgICAgICAgICAgICAgIG1taW9fdG90YWwgKz0gYmFyX3N6OworICAgICAgICAg ICAgfQogICAgICAgICAgICAgbnJfYmFycysrOwogCiAgICAgICAgICAgICAvKlRoZSB1cHBlciBo YWxmIGlzIGFscmVhZHkgY2FsY3VsYXRlZCwgc2tpcCBpdCEgKi8KQEAgLTM0OSw3ICszNjAsNyBA QCB2b2lkIHBjaV9zZXR1cCh2b2lkKQogICAgICAgICAgICAgcGNpX21lbV9zdGFydCA9IGh2bV9p bmZvLT5sb3dfbWVtX3BnZW5kIDw8IFBBR0VfU0hJRlQ7CiAgICAgfQogCi0gICAgaWYgKCBtbWlv X3RvdGFsID4gKHBjaV9tZW1fZW5kIC0gcGNpX21lbV9zdGFydCkgKQorICAgIGlmICggbW1pb190 b3RhbCA+IChwY2lfbWVtX2VuZCAtIHBjaV9tZW1fc3RhcnQpIHx8IGJhcjY0X3JlbG9jYXRlICkK ICAgICB7CiAgICAgICAgIHByaW50ZigiTG93IE1NSU8gaG9sZSBub3QgbGFyZ2UgZW5vdWdoIGZv ciBhbGwgZGV2aWNlcywiCiAgICAgICAgICAgICAgICAiIHJlbG9jYXRpbmcgc29tZSBCQVJzIHRv IDY0LWJpdFxuIik7CkBAIC00MzEsNyArNDQyLDcgQEAgdm9pZCBwY2lfc2V0dXAodm9pZCkKICAg ICAgICAgICogU2hvdWxkIGVpdGhlciBvZiB0aG9zZSB0d28gY29uZGl0aW9ucyBjaGFuZ2UsIHRo aXMgY29kZSB3aWxsIGJyZWFrLgogICAgICAgICAgKi8KICAgICAgICAgdXNpbmdfNjRiYXIgPSBi YXJzW2ldLmlzXzY0YmFyICYmIGJhcjY0X3JlbG9jYXRlCi0gICAgICAgICAgICAmJiAobW1pb190 b3RhbCA+IChtZW1fcmVzb3VyY2UubWF4IC0gbWVtX3Jlc291cmNlLmJhc2UpKTsKKyAgICAgICAg ICAgICYmIChtbWlvX3RvdGFsICsgbW1pb182NGJpdF90b3RhbCA+IChtZW1fcmVzb3VyY2UubWF4 IC0gbWVtX3Jlc291cmNlLmJhc2UpKTsKICAgICAgICAgYmFyX2RhdGEgPSBwY2lfcmVhZGwoZGV2 Zm4sIGJhcl9yZWcpOwogCiAgICAgICAgIGlmICggKGJhcl9kYXRhICYgUENJX0JBU0VfQUREUkVT U19TUEFDRSkgPT0KQEAgLTQ1MSw3ICs0NjIsMTAgQEAgdm9pZCBwY2lfc2V0dXAodm9pZCkKICAg ICAgICAgICAgICAgICByZXNvdXJjZSA9ICZtZW1fcmVzb3VyY2U7CiAgICAgICAgICAgICAgICAg YmFyX2RhdGEgJj0gflBDSV9CQVNFX0FERFJFU1NfTUVNX01BU0s7CiAgICAgICAgICAgICB9Ci0g ICAgICAgICAgICBtbWlvX3RvdGFsIC09IGJhcl9zejsKKyAgICAgICAgICAgIGlmICggYmFyc1tp XS5pc182NGJhciAmJiBiYXJfc3ogPiAoMXVsbDw8MzIpICkKKyAgICAgICAgICAgICAgICBtbWlv XzY0Yml0X3RvdGFsIC09IGJhcl9zejsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAg ICBtbWlvX3RvdGFsIC09IGJhcl9zejsKICAgICAgICAgfQogICAgICAgICBlbHNlCiAgICAgICAg IHsKLS0gCjIuNC4xMQoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0 cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=