From: Andra Paraschiv Subject: [PATCH RESEND qemu-xen-traditional] xen/pt: allow QEMU to request MSI unmasking at bind time Date: Wed, 10 Oct 2018 18:52:54 +0000 Message-ID: <20181010185254.110354-1-andraprs@amazon.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1gAJbU-0007uc-E3 for xen-devel@lists.xenproject.org; Wed, 10 Oct 2018 18:53:04 +0000 List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: ian.jackson@citrix.com Cc: sstabellini@kernel.org, Andra Paraschiv , andrew.cooper3@citrix.com, jbeulich@suse.com, xen-devel@lists.xenproject.org, dwmw@amazon.co.uk, roger.pau@citrix.com List-Id: xen-devel@lists.xenproject.org V2hlbiBhIE1TSSBpbnRlcnJ1cHQgaXMgYm91bmQgdG8gYSBndWVzdCB1c2luZwp4Y19kb21haW5f dXBkYXRlX21zaV9pcnEgKFhFTl9ET01DVExfYmluZF9wdF9pcnEpIHRoZSBpbnRlcnJ1cHQgaXMK bGVmdCBtYXNrZWQgYnkgZGVmYXVsdC4KClRoaXMgY2F1c2VzIHByb2JsZW1zIHdpdGggZ3Vlc3Rz IHRoYXQgZmlyc3QgY29uZmlndXJlIGludGVycnVwdHMgYW5kCmNsZWFuIHRoZSBwZXItZW50cnkg TVNJWCB0YWJsZSBtYXNrIGJpdCBhbmQgYWZ0ZXJ3YXJkcyBlbmFibGUgTVNJWApnbG9iYWxseS4g SW4gc3VjaCBzY2VuYXJpbyB0aGUgWGVuIGludGVybmFsIG1zaXh0YmwgaGFuZGxlcnMgd291bGQg bm90CmRldGVjdCB0aGUgdW5tYXNraW5nIG9mIE1TSVggZW50cmllcyBiZWNhdXNlIHZlY3RvcnMg YXJlIG5vdCB5ZXQKcmVnaXN0ZXJlZCBzaW5jZSBNU0lYIGlzIG5vdCBlbmFibGVkLCBhbmQgdmVj dG9ycyB3b3VsZCBiZSBsZWZ0Cm1hc2tlZC4KCkludHJvZHVjZSBhIG5ldyBmbGFnIGluIHRoZSBn ZmxhZ3MgZmllbGQgdG8gc2lnbmFsIFhlbiB3aGV0aGVyIGEgTVNJCmludGVycnVwdCBzaG91bGQg YmUgdW5tYXNrZWQgYWZ0ZXIgYmVpbmcgYm91bmQuCgpUaGlzIGFsc28gcmVxdWlyZXMgdG8gdHJh Y2sgdGhlIG1hc2sgcmVnaXN0ZXIgZm9yIE1TSSBpbnRlcnJ1cHRzLCBzbwpRRU1VIGNhbiBhbHNv IG5vdGlmeSB0byBYZW4gd2hldGhlciB0aGUgTVNJIGludGVycnVwdCBzaG91bGQgYmUgYm91bmQK bWFza2VkIG9yIHVubWFza2VkCgpTaWduZWQtb2ZmLWJ5OiBSb2dlciBQYXUgTW9ubsOpIDxyb2dl ci5wYXVAY2l0cml4LmNvbT4KUmV2aWV3ZWQtYnk6IEphbiBCZXVsaWNoIDxqYmV1bGljaEBzdXNl LmNvbT4KUmVwb3J0ZWQtYnk6IEFuZHJlYXMgS2luemxlciA8aGZwQHBvc3Rlby5kZT4KUmV2aWV3 ZWQtYnk6IFN0ZWZhbm8gU3RhYmVsbGluaSA8c3N0YWJlbGxpbmlAa2VybmVsLm9yZz4KU2lnbmVk LW9mZi1ieTogU3RlZmFubyBTdGFiZWxsaW5pIDxzc3RhYmVsbGluaUBrZXJuZWwub3JnPgoKW0Jh Y2twb3J0ZWQgZnJvbSBjb21taXQgYTgwMzYzMzY2MDlkMmUxODRmYzM1NDNhNGM0MzljMGJhN2Q3 ZjNhMgogaHR0cHM6Ly9naXQucWVtdS5vcmcvP3A9cWVtdS5naXQ7YT1jb21taXQ7aD1hODAzNjMz NjYwOWQyZTE4NGZjMzU0M2E0YzQzOWMwYmE3ZDdmM2EyCiBodHRwczovL3hlbmJpdHMueGVuLm9y Zy9naXR3ZWIvP3A9cWVtdS14ZW4uZ2l0O2E9Y29tbWl0O2g9YTgwMzYzMzY2MDlkMmUxODRmYzM1 NDNhNGM0MzljMGJhN2Q3ZjNhMl0KClNpZ25lZC1vZmYtYnk6IEFuZHJhIFBhcmFzY2hpdiA8YW5k cmFwcnNAYW1hem9uLmNvbT4KLS0tCiBody9wYXNzLXRocm91Z2guYyB8IDIzICsrKysrKysrKysr KysrKysrKysrKy0tCiBody9wYXNzLXRocm91Z2guaCB8ICAxICsKIGh3L3B0LW1zaS5jICAgICAg IHwgMjUgKysrKysrKysrKysrKysrKysrKysrLS0tLQogaHcvcHQtbXNpLmggICAgICAgfCAgOSAr KysrKysrKysKIDQgZmlsZXMgY2hhbmdlZCwgNTIgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9ody9wYXNzLXRocm91Z2guYyBiL2h3L3Bhc3MtdGhyb3VnaC5jCmlu ZGV4IDBiNzY1ODU4Li5jNmNiNjBlMiAxMDA2NDQKLS0tIGEvaHcvcGFzcy10aHJvdWdoLmMKKysr IGIvaHcvcGFzcy10aHJvdWdoLmMKQEAgLTE4OCw2ICsxODgsOSBAQCBzdGF0aWMgaW50IHB0X3dv cmRfcmVnX3dyaXRlKHN0cnVjdCBwdF9kZXYgKnB0ZGV2LAogc3RhdGljIGludCBwdF9sb25nX3Jl Z193cml0ZShzdHJ1Y3QgcHRfZGV2ICpwdGRldiwKICAgICBzdHJ1Y3QgcHRfcmVnX3RibCAqY2Zn X2VudHJ5LAogICAgIHVpbnQzMl90ICp2YWx1ZSwgdWludDMyX3QgZGV2X3ZhbHVlLCB1aW50MzJf dCB2YWxpZF9tYXNrKTsKK3N0YXRpYyBpbnQgcHRfbWFza19yZWdfd3JpdGUoc3RydWN0IHB0X2Rl diAqcHRkZXYsCisgICAgc3RydWN0IHB0X3JlZ190YmwgKmNmZ19lbnRyeSwKKyAgICB1aW50MzJf dCAqdmFsdWUsIHVpbnQzMl90IGRldl92YWx1ZSwgdWludDMyX3QgdmFsaWRfbWFzayk7CiBzdGF0 aWMgaW50IHB0X2NtZF9yZWdfd3JpdGUoc3RydWN0IHB0X2RldiAqcHRkZXYsCiAgICAgc3RydWN0 IHB0X3JlZ190YmwgKmNmZ19lbnRyeSwKICAgICB1aW50MTZfdCAqdmFsdWUsIHVpbnQxNl90IGRl dl92YWx1ZSwgdWludDE2X3QgdmFsaWRfbWFzayk7CkBAIC03NTUsNyArNzU4LDcgQEAgc3RhdGlj IHN0cnVjdCBwdF9yZWdfaW5mb190YmwgcHRfZW11X3JlZ19tc2lfdGJsW10gPSB7CiAgICAgICAg IC5lbXVfbWFzayAgID0gMHhGRkZGRkZGRiwKICAgICAgICAgLmluaXQgICAgICAgPSBwdF9tYXNr X3JlZ19pbml0LAogICAgICAgICAudS5kdy5yZWFkICA9IHB0X2xvbmdfcmVnX3JlYWQsCi0gICAg ICAgIC51LmR3LndyaXRlID0gcHRfbG9uZ19yZWdfd3JpdGUsCisgICAgICAgIC51LmR3LndyaXRl ID0gcHRfbWFza19yZWdfd3JpdGUsCiAgICAgfSwKICAgICAvKiBNYXNrIHJlZyAoaWYgUENJX01T SV9GTEFHU19NQVNLX0JJVCBzZXQsIGZvciA2NC1iaXQgZGV2aWNlcykgKi8KICAgICB7CkBAIC03 NjYsNyArNzY5LDcgQEAgc3RhdGljIHN0cnVjdCBwdF9yZWdfaW5mb190YmwgcHRfZW11X3JlZ19t c2lfdGJsW10gPSB7CiAgICAgICAgIC5lbXVfbWFzayAgID0gMHhGRkZGRkZGRiwKICAgICAgICAg LmluaXQgICAgICAgPSBwdF9tYXNrX3JlZ19pbml0LAogICAgICAgICAudS5kdy5yZWFkICA9IHB0 X2xvbmdfcmVnX3JlYWQsCi0gICAgICAgIC51LmR3LndyaXRlID0gcHRfbG9uZ19yZWdfd3JpdGUs CisgICAgICAgIC51LmR3LndyaXRlID0gcHRfbWFza19yZWdfd3JpdGUsCiAgICAgfSwKICAgICAv KiBQZW5kaW5nIHJlZyAoaWYgUENJX01TSV9GTEFHU19NQVNLX0JJVCBzZXQsIGZvciAzMi1iaXQg ZGV2aWNlcykgKi8KICAgICB7CkBAIC0zNTcyLDYgKzM1NzUsMjIgQEAgc3RhdGljIGludCBwdF9s b25nX3JlZ193cml0ZShzdHJ1Y3QgcHRfZGV2ICpwdGRldiwKICAgICByZXR1cm4gMDsKIH0KIAor Lyogd3JpdGUgZ3Vlc3QgbWFzayBiaXRzICovCitzdGF0aWMgaW50IHB0X21hc2tfcmVnX3dyaXRl KHN0cnVjdCBwdF9kZXYgKnB0ZGV2LAorICAgICAgICBzdHJ1Y3QgcHRfcmVnX3RibCAqY2ZnX2Vu dHJ5LAorICAgICAgICB1aW50MzJfdCAqdmFsdWUsIHVpbnQzMl90IGRldl92YWx1ZSwgdWludDMy X3QgdmFsaWRfbWFzaykKK3sKKyAgICBpbnQgcmM7CisKKyAgICByYyA9IHB0X2xvbmdfcmVnX3dy aXRlKHB0ZGV2LCBjZmdfZW50cnksIHZhbHVlLCBkZXZfdmFsdWUsIHZhbGlkX21hc2spOworICAg IGlmIChyYykKKyAgICAgICAgcmV0dXJuIHJjOworCisgICAgcHRkZXYtPm1zaS0+bWFzayA9ICp2 YWx1ZTsKKworICAgIHJldHVybiAwOworfQorCiAvKiB3cml0ZSBDb21tYW5kIHJlZ2lzdGVyICov CiBzdGF0aWMgaW50IHB0X2NtZF9yZWdfd3JpdGUoc3RydWN0IHB0X2RldiAqcHRkZXYsCiAgICAg ICAgIHN0cnVjdCBwdF9yZWdfdGJsICpjZmdfZW50cnksCmRpZmYgLS1naXQgYS9ody9wYXNzLXRo cm91Z2guaCBiL2h3L3Bhc3MtdGhyb3VnaC5oCmluZGV4IGJiNmRkY2UwLi4wYjU4MjI0MSAxMDA2 NDQKLS0tIGEvaHcvcGFzcy10aHJvdWdoLmgKKysrIGIvaHcvcGFzcy10aHJvdWdoLmgKQEAgLTE5 MSw2ICsxOTEsNyBAQCBzdHJ1Y3QgcHRfcmVnaW9uIHsKIHN0cnVjdCBwdF9tc2lfaW5mbyB7CiAg ICAgdWludDMyX3QgZmxhZ3M7CiAgICAgdWludDMyX3QgY3RybF9vZmZzZXQ7IC8qIHNhdmVkIGNv bnRyb2wgb2Zmc2V0ICovCisgICAgdWludDMyX3QgbWFzazsgICAgIC8qIGd1ZXN0IG1hc2sgYml0 cyAqLwogICAgIGludCBwaXJxOyAgICAgICAgICAvKiBndWVzdCBwaXJxIGNvcnJlc3BvbmRpbmcg Ki8KICAgICB1aW50MzJfdCBhZGRyX2xvOyAgLyogZ3Vlc3QgbWVzc2FnZSBhZGRyZXNzICovCiAg ICAgdWludDMyX3QgYWRkcl9oaTsgIC8qIGd1ZXN0IG1lc3NhZ2UgdXBwZXIgYWRkcmVzcyAqLwpk aWZmIC0tZ2l0IGEvaHcvcHQtbXNpLmMgYi9ody9wdC1tc2kuYwppbmRleCBjNmJhZWE5NC4uOGIw NjQ1MGYgMTAwNjQ0Ci0tLSBhL2h3L3B0LW1zaS5jCisrKyBiL2h3L3B0LW1zaS5jCkBAIC0xMzgs NiArMTM4LDkgQEAgaW50IHB0X21zaV91cGRhdGUoc3RydWN0IHB0X2RldiAqZCkKICAgICBhZGRy ID0gKHVpbnQ2NF90KWQtPm1zaS0+YWRkcl9oaSA8PCAzMiB8IGQtPm1zaS0+YWRkcl9sbzsKICAg ICBnZmxhZ3MgPSBfX2dldF9tc2lfZ2ZsYWdzKGQtPm1zaS0+ZGF0YSwgYWRkcik7CiAKKyAgICAv KiBDdXJyZW50IE1TSSBlbXVsYXRpb24gaW4gUUVNVSBvbmx5IHN1cHBvcnRzIDEgdmVjdG9yICov CisgICAgZ2ZsYWdzIHw9IChkLT5tc2ktPm1hc2sgJiAxKSA/IDAgOiAoMXUgPDwgR0xGQUdTX1NI SUZUX1VOTUFTS0VEKTsKKwogICAgIFBUX0xPRygiVXBkYXRlIG1zaSB3aXRoIHBpcnEgJXggZ3Zl YyAleCBnZmxhZ3MgJXhcbiIsCiAgICAgICAgICAgIGQtPm1zaS0+cGlycSwgZ3ZlYywgZ2ZsYWdz KTsKIApAQCAtMjc1LDcgKzI3OCw4IEBAIHZvaWQgcHRfZGlzYWJsZV9tc2lfdHJhbnNsYXRlKHN0 cnVjdCBwdF9kZXYgKmRldikKICAgICB9CiB9CiAKLXN0YXRpYyBpbnQgcHRfbXNpeF91cGRhdGVf b25lKHN0cnVjdCBwdF9kZXYgKmRldiwgaW50IGVudHJ5X25yKQorc3RhdGljIGludCBwdF9tc2l4 X3VwZGF0ZV9vbmUoc3RydWN0IHB0X2RldiAqZGV2LCBpbnQgZW50cnlfbnIsCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCB2ZWNfY3RybCkKIHsKICAgICBzdHJ1Y3QgbXNp eF9lbnRyeV9pbmZvICplbnRyeSA9ICZkZXYtPm1zaXgtPm1zaXhfZW50cnlbZW50cnlfbnJdOwog ICAgIGludCBwaXJxID0gZW50cnktPnBpcnE7CkBAIC0zMTYsNiArMzIwLDkgQEAgc3RhdGljIGlu dCBwdF9tc2l4X3VwZGF0ZV9vbmUoc3RydWN0IHB0X2RldiAqZGV2LCBpbnQgZW50cnlfbnIpCiAg ICAgICAgIGVudHJ5LT5waXJxID0gcGlycTsKICAgICB9CiAKKyAgICBnZmxhZ3MgfD0gKHZlY19j dHJsICYgUENJX01TSVhfRU5UUllfQ1RSTF9NQVNLQklUKSA/IDAgOgorICAgICAgICAoMXUgPDwg R0xGQUdTX1NISUZUX1VOTUFTS0VEKTsKKwogICAgIFBUX0xPRygiVXBkYXRlIG1zaXggZW50cnkg JXggd2l0aCBwaXJxICV4IGd2ZWMgJXhcbiIsCiAgICAgICAgICAgICBlbnRyeV9uciwgcGlycSwg Z3ZlYyk7CiAKQEAgLTM0Myw3ICszNTAsNyBAQCBpbnQgcHRfbXNpeF91cGRhdGUoc3RydWN0IHB0 X2RldiAqZGV2KQogCiAgICAgZm9yICggaSA9IDA7IGkgPCBtc2l4LT50b3RhbF9lbnRyaWVzOyBp KysgKQogICAgIHsKLSAgICAgICAgcHRfbXNpeF91cGRhdGVfb25lKGRldiwgaSk7CisgICAgICAg IHB0X21zaXhfdXBkYXRlX29uZShkZXYsIGksIG1zaXgtPm1zaXhfZW50cnlbaV0uaW9fbWVtWzNd KTsKICAgICB9CiAKICAgICByZXR1cm4gMDsKQEAgLTQ3OSw4ICs0ODYsMTggQEAgc3RhdGljIHZv aWQgcGNpX21zaXhfd3JpdGVsKHZvaWQgKm9wYXF1ZSwgdGFyZ2V0X3BoeXNfYWRkcl90IGFkZHIs IHVpbnQzMl90IHZhbCkKIAogICAgIGlmICggb2Zmc2V0ID09IDMgKQogICAgIHsKLSAgICAgICAg aWYgKCBtc2l4LT5lbmFibGVkICYmICEodmFsICYgMHgxKSApCi0gICAgICAgICAgICBwdF9tc2l4 X3VwZGF0ZV9vbmUoZGV2LCBlbnRyeV9ucik7CisgICAgICAgIGlmICggbXNpeC0+ZW5hYmxlZCAm JiAhKHZhbCAmIDB4MSkgKSB7CisgICAgICAgICAgICBjb25zdCB2b2xhdGlsZSB1aW50MzJfdCAq dmVjX2N0cmw7CisKKyAgICAgICAgICAgIC8qCisgICAgICAgICAgICAgKiBJZiBYZW4gaW50ZXJj ZXB0cyB0aGUgbWFzayBiaXQgYWNjZXNzLCBpb19tZW1bM10gbWF5IG5vdCBiZQorICAgICAgICAg ICAgICogdXAtdG8tZGF0ZS4gUmVhZCBmcm9tIGhhcmR3YXJlIGRpcmVjdGx5LgorICAgICAgICAg ICAgICovCisgICAgICAgICAgICB2ZWNfY3RybCA9IGRldi0+bXNpeC0+cGh5c19pb21lbV9iYXNl ICsKKyAgICAgICAgICAgICAgICBQQ0lfTVNJWF9FTlRSWV9TSVpFICogZW50cnlfbnIgKyBQQ0lf TVNJWF9FTlRSWV9WRUNUT1JfQ1RSTDsKKworICAgICAgICAgICAgcHRfbXNpeF91cGRhdGVfb25l KGRldiwgZW50cnlfbnIsICp2ZWNfY3RybCk7CisgICAgICAgIH0KICAgICB9CiB9CiAKZGlmZiAt LWdpdCBhL2h3L3B0LW1zaS5oIGIvaHcvcHQtbXNpLmgKaW5kZXggOTRlMGQzNWYuLmE4MGQ3NmU4 IDEwMDY0NAotLS0gYS9ody9wdC1tc2kuaAorKysgYi9ody9wdC1tc2kuaApAQCAtMzMsNiArMzMs MTQgQEAKICNkZWZpbmUgUENJX01TSVhfUEJBICAgICAgICA4CiAjZGVmaW5lICBQQ0lfTVNJWF9C SVIgICAgICAgMHg3CiAKKy8qIE1TSS1YIFRhYmxlIGVudHJ5IGZvcm1hdCAqLworI2RlZmluZSBQ Q0lfTVNJWF9FTlRSWV9TSVpFICAgICAgICAgICAgIDE2CisjZGVmaW5lICBQQ0lfTVNJWF9FTlRS WV9MT1dFUl9BRERSICAgICAgMAorI2RlZmluZSAgUENJX01TSVhfRU5UUllfVVBQRVJfQUREUiAg ICAgIDQKKyNkZWZpbmUgIFBDSV9NU0lYX0VOVFJZX0RBVEEgICAgICAgICAgICA4CisjZGVmaW5l ICBQQ0lfTVNJWF9FTlRSWV9WRUNUT1JfQ1RSTCAgICAgMTIKKyNkZWZpbmUgICBQQ0lfTVNJWF9F TlRSWV9DVFJMX01BU0tCSVQgICAxCisKICNkZWZpbmUgTVNJX0ZMQUdfVU5JTklUIDB4MTAwMAog I2RlZmluZSBQVF9NU0lfTUFQUEVEICAgMHgyMDAwCiAKQEAgLTc3LDYgKzg1LDcgQEAKICNkZWZp bmUgR0ZMQUdTX1NISUZUX0RNICAgICAgICAgICAgIDkKICNkZWZpbmUgR0xGQUdTX1NISUZUX0RF TElWX01PREUgICAgIDEyCiAjZGVmaW5lIEdMRkFHU19TSElGVF9UUkdfTU9ERSAgICAgICAxNQor I2RlZmluZSBHTEZBR1NfU0hJRlRfVU5NQVNLRUQgICAgICAgMTYKIAogdm9pZAogbXNpX3NldF9l bmFibGUoc3RydWN0IHB0X2RldiAqZGV2LCBpbnQgZW4pOwotLSAKMi4xNS4yLkFNWk4KCgoKCkFt YXpvbiBEZXZlbG9wbWVudCBDZW50ZXIgKFJvbWFuaWEpIFMuUi5MLiByZWdpc3RlcmVkIG9mZmlj ZTogMjdBIFNmLiBMYXphciBTdHJlZXQsIFVCQzUsIGZsb29yIDIsIElhc2ksIElhc2kgQ291bnR5 LCA3MDAwNDUsIFJvbWFuaWEuIFJlZ2lzdGVyZWQgaW4gUm9tYW5pYS4gUmVnaXN0cmF0aW9uIG51 bWJlciBKMjIvMjYyMS8yMDA1LgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9q ZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVu LWRldmVs