From mboxrd@z Thu Jan 1 00:00:00 1970 From: Boris Ostrovsky Subject: [PATCH v2 08/11] pvh/acpi: Handle ACPI accesses for PVH guests Date: Wed, 9 Nov 2016 09:39:56 -0500 Message-ID: <1478702399-14538-9-git-send-email-boris.ostrovsky@oracle.com> References: <1478702399-14538-1-git-send-email-boris.ostrovsky@oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1478702399-14538-1-git-send-email-boris.ostrovsky@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.xen.org Cc: wei.liu2@citrix.com, andrew.cooper3@citrix.com, ian.jackson@eu.citrix.com, Paul Durrant , jbeulich@suse.com, Boris Ostrovsky , roger.pau@citrix.com List-Id: xen-devel@lists.xenproject.org U2lnbmVkLW9mZi1ieTogQm9yaXMgT3N0cm92c2t5IDxib3Jpcy5vc3Ryb3Zza3lAb3JhY2xlLmNv bT4KLS0tCkNDOiBQYXVsIER1cnJhbnQgPHBhdWwuZHVycmFudEBjaXRyaXguY29tPgotLS0KQ2hh bmdlcyBpbiB2MjoKKiBVc2UgJ3RydWUvZmFsc2UnIHZhbHVlcyBmb3IgYm9vbHMKCgogeGVuL2Fy Y2gveDg2L2h2bS9pb3JlcS5jIHwgNzIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrCiAxIGZpbGUgY2hhbmdlZCwgNzIgaW5zZXJ0aW9ucygrKQoKZGlmZiAt LWdpdCBhL3hlbi9hcmNoL3g4Ni9odm0vaW9yZXEuYyBiL3hlbi9hcmNoL3g4Ni9odm0vaW9yZXEu YwppbmRleCBlNmZmNDhmLi4zZWYwMWNmIDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvaHZtL2lv cmVxLmMKKysrIGIveGVuL2FyY2gveDg2L2h2bS9pb3JlcS5jCkBAIC0xMzgzLDYgKzEzODMsNzgg QEAgc3RhdGljIGludCBodm1fYWNjZXNzX2NmOCgKIHN0YXRpYyBpbnQgYWNwaV9pb2FjY2VzcygK ICAgICBpbnQgZGlyLCB1bnNpZ25lZCBpbnQgcG9ydCwgdW5zaWduZWQgaW50IGJ5dGVzLCB1aW50 MzJfdCAqdmFsKQogeworICAgIHVuc2lnbmVkIGludCBpOworICAgIHVuc2lnbmVkIGludCBiaXRz ID0gYnl0ZXMgKiA4OworICAgIHVuc2lnbmVkIGludCBpZHggPSBwb3J0ICYgMzsKKyAgICB1aW50 OF90ICpyZWcgPSBOVUxMOworICAgIGJvb2wgaXNfY3B1X21hcCA9IGZhbHNlOworICAgIHN0cnVj dCBkb21haW4gKmN1cnJkID0gY3VycmVudC0+ZG9tYWluOworCisgICAgQlVJTERfQlVHX09OKChB Q1BJX1BNMUFfRVZUX0JMS19MRU4gIT0gNCkgfHwKKyAgICAgICAgICAgICAgICAgKEFDUElfR1BF MF9CTEtfTEVOX1YxICE9IDQpKTsKKworICAgIGlmICggaGFzX2lvcmVxX2NwdWhwKGN1cnJkKSAp CisgICAgICAgIHJldHVybiBYODZFTVVMX1VOSEFORExFQUJMRTsKKworICAgIHN3aXRjaCAocG9y dCkKKyAgICB7CisgICAgY2FzZSBBQ1BJX1BNMUFfRVZUX0JMS19BRERSRVNTX1YxIC4uLgorICAg ICAgICAoQUNQSV9QTTFBX0VWVF9CTEtfQUREUkVTU19WMSArIEFDUElfUE0xQV9FVlRfQkxLX0xF TiAtIDEpOgorICAgICAgICByZWcgPSBjdXJyZC0+YXJjaC5odm1fZG9tYWluLmFjcGlfaW8ucG0x YTsKKyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBBQ1BJX0dQRTBfQkxLX0FERFJFU1NfVjEgLi4u CisgICAgICAgIChBQ1BJX0dQRTBfQkxLX0FERFJFU1NfVjEgKyBBQ1BJX0dQRTBfQkxLX0xFTl9W MSAtIDEpOgorICAgICAgICByZWcgPSBjdXJyZC0+YXJjaC5odm1fZG9tYWluLmFjcGlfaW8uZ3Bl OworICAgICAgICBicmVhazsKKyAgICBjYXNlIEFDUElfQ1BVX01BUCAuLi4gKEFDUElfQ1BVX01B UCArIEFDUElfQ1BVX01BUF9MRU4gLSAxKToKKyAgICAgICAgaXNfY3B1X21hcCA9IHRydWU7Cisg ICAgICAgIGJyZWFrOworICAgIGRlZmF1bHQ6CisgICAgICAgIHJldHVybiBYODZFTVVMX1VOSEFO RExFQUJMRTsKKyAgICB9CisKKyAgICBpZiAoIGJ5dGVzID09IDAgKQorICAgICAgICByZXR1cm4g WDg2RU1VTF9PS0FZOworCisgICAgaWYgKCBkaXIgPT0gSU9SRVFfUkVBRCApCisgICAgeworICAg ICAgICAqdmFsICY9IH4oKDFVIDw8IGJpdHMpIC0gMSk7CisKKyAgICAgICAgaWYgKCBpc19jcHVf bWFwICkKKyAgICAgICAgeworICAgICAgICAgICAgdW5zaWduZWQgaW50IGZpcnN0X2JpdCwgbGFz dF9iaXQ7CisKKyAgICAgICAgICAgIGZpcnN0X2JpdCA9IChwb3J0IC0gQUNQSV9DUFVfTUFQKSAq IDg7CisgICAgICAgICAgICBsYXN0X2JpdCA9IG1pbihjdXJyZC0+YXJjaC5hdmFpbF92Y3B1cywg Zmlyc3RfYml0ICsgYml0cyk7CisgICAgICAgICAgICBmb3IgKCBpID0gZmlyc3RfYml0OyBpIDwg bGFzdF9iaXQ7IGkrKyApCisgICAgICAgICAgICAgICAgKnZhbCB8PSAoMVUgPDwgKGkgLSBmaXJz dF9iaXQpKTsKKyAgICAgICAgfQorICAgICAgICBlbHNlCisgICAgICAgICAgICBtZW1jcHkodmFs LCAmcmVnW2lkeF0sIGJ5dGVzKTsKKyAgICB9CisgICAgZWxzZQorICAgIHsKKyAgICAgICAgaWYg KCBpc19jcHVfbWFwICkKKyAgICAgICAgICAgIC8qCisgICAgICAgICAgICAgKiBDUFUgbWFwIGlz IG9ubHkgcmVhZCBieSBEU0RUJ3MgUFJTQyBtZXRob2QgYW5kIHNob3VsZCBuZXZlcgorICAgICAg ICAgICAgICogYmUgd3JpdHRlbiBieSBhIGd1ZXN0LgorICAgICAgICAgICAgICovCisgICAgICAg ICAgICByZXR1cm4gWDg2RU1VTF9VTkhBTkRMRUFCTEU7CisKKyAgICAgICAgLyogV3JpdGUgZWl0 aGVyIHN0YXR1cyBvciBlbmFibGUgcmVlZ2lzdGVyLiAqLworICAgICAgICBpZiAoIChieXRlcyA+ IDIpIHx8ICgoYnl0ZXMgPT0gMikgJiYgKHBvcnQgJiAxKSkgKQorICAgICAgICAgICAgcmV0dXJu IFg4NkVNVUxfVU5IQU5ETEVBQkxFOworCisgICAgICAgIGlmICggaWR4IDwgMiApIC8qIHN0YXR1 cywgd3JpdGUgMSB0byBjbGVhci4gKi8KKyAgICAgICAgeworICAgICAgICAgICAgcmVnW2lkeF0g Jj0gfigqdmFsICYgMHhmZik7CisgICAgICAgICAgICBpZiAoIGJ5dGVzID09IDIgKQorICAgICAg ICAgICAgICAgIHJlZ1tpZHggKyAxXSAmPSB+KCgqdmFsID4+IDgpICYgMHhmZik7CisgICAgICAg IH0KKyAgICAgICAgZWxzZSAgICAgICAgICAgLyogZW5hYmxlICovCisgICAgICAgICAgICBtZW1j cHkoJnJlZ1tpZHhdLCB2YWwsIGJ5dGVzKTsKKyAgICB9CisKICAgICByZXR1cm4gWDg2RU1VTF9P S0FZOwogfQogCi0tIAoyLjcuNAoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fClhlbi1kZXZlbCBtYWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5v cmcKaHR0cHM6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=