From mboxrd@z Thu Jan 1 00:00:00 1970 From: Boris Ostrovsky Subject: [PATCH RFC 04/20] acpi/hvmloader: Decide which SSDTs to build in hvmloader Date: Tue, 5 Apr 2016 21:25:33 -0400 Message-ID: <1459905949-10358-5-git-send-email-boris.ostrovsky@oracle.com> References: <1459905949-10358-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: <1459905949-10358-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: Keir Fraser , Stefano Stabellini , Andrew Cooper , Ian Jackson , Jan Beulich , Wei Liu , Boris Ostrovsky , roger.pau@citrix.com List-Id: xen-devel@lists.xenproject.org V2l0aCB0aGF0LCB4ZW5zdG9yZV9yZWFkKCkgd29uJ3QgbmVlZCB0byBiZSBkb25lIGluIEFDUEkg Y29kZQoKU2lnbmVkLW9mZi1ieTogQm9yaXMgT3N0cm92c2t5IDxib3Jpcy5vc3Ryb3Zza3lAb3Jh Y2xlLmNvbT4KLS0tCiB0b29scy9maXJtd2FyZS9odm1sb2FkZXIvYWNwaS9hY3BpMl8wLmggfCAg NiArKysrKysKIHRvb2xzL2Zpcm13YXJlL2h2bWxvYWRlci9hY3BpL2J1aWxkLmMgICB8IDIwICsr KysrKystLS0tLS0tLS0tLS0tCiB0b29scy9maXJtd2FyZS9odm1sb2FkZXIvdXRpbC5jICAgICAg ICAgfCAxMiArKysrKysrKysrKysKIDMgZmlsZXMgY2hhbmdlZCwgMjUgaW5zZXJ0aW9ucygrKSwg MTMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvdG9vbHMvZmlybXdhcmUvaHZtbG9hZGVyL2Fj cGkvYWNwaTJfMC5oIGIvdG9vbHMvZmlybXdhcmUvaHZtbG9hZGVyL2FjcGkvYWNwaTJfMC5oCmlu ZGV4IDI3NTk4MWUuLjFlZDBkNDQgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2Zpcm13YXJlL2h2bWxvYWRl ci9hY3BpL2FjcGkyXzAuaAorKysgYi90b29scy9maXJtd2FyZS9odm1sb2FkZXIvYWNwaS9hY3Bp Ml8wLmgKQEAgLTQ1MSw2ICs0NTEsMTEgQEAgc3RydWN0IGFjcGlfMjBfc2xpdCB7CiAKICNwcmFn bWEgcGFjayAoKQogCisvKiBGbGFncyBpbmRpY2F0aW5nIHdoaWNoIHRhYmxlcyB0byBidWlsZCAq LworI2RlZmluZSBBQ1BJX0JVSUxEX1NTRFRfUE0gICAgICAgICgxPDwwKQorI2RlZmluZSBBQ1BJ X0JVSUxEX1NTRFRfUzMgICAgICAgICgxPDwxKQorI2RlZmluZSBBQ1BJX0JVSUxEX1NTRFRfUzQg ICAgICAgICgxPDwyKQorCiAvKgogICogTG9jYXRlZCBhdCBBQ1BJX0lORk9fUEhZU0lDQUxfQURE UkVTUy4KICAqCkBAIC00NzUsNiArNDgwLDcgQEAgc3RydWN0IGFjcGlfY29uZmlnIHsKICAgICBp bnQgZHNkdF8xNWNwdV9sZW47CiAgICAgc3RydWN0IGFjcGlfaW5mbyBhY3BpX2luZm87CiAgICAg dWludDY0X3Qgdm1fZ2lkWzJdOworICAgIHVpbnQzMl90IHRhYmxlX2ZsYWdzOwogfTsKIAogdm9p ZCBhY3BpX2J1aWxkX3RhYmxlcyhzdHJ1Y3QgYWNwaV9jb25maWcgKmNvbmZpZywgdW5zaWduZWQg aW50IHBoeXNpY2FsKTsKZGlmZiAtLWdpdCBhL3Rvb2xzL2Zpcm13YXJlL2h2bWxvYWRlci9hY3Bp L2J1aWxkLmMgYi90b29scy9maXJtd2FyZS9odm1sb2FkZXIvYWNwaS9idWlsZC5jCmluZGV4IGUz ZThiMDUuLjlmNDVmMjYgMTAwNjQ0Ci0tLSBhL3Rvb2xzL2Zpcm13YXJlL2h2bWxvYWRlci9hY3Bp L2J1aWxkLmMKKysrIGIvdG9vbHMvZmlybXdhcmUvaHZtbG9hZGVyL2FjcGkvYnVpbGQuYwpAQCAt NTYsMTEgKzU2LDYgQEAgc3RhdGljIHZvaWQgc2V0X2NoZWNrc3VtKAogICAgIHBbY2hlY2tzdW1f b2Zmc2V0XSA9IC1zdW07CiB9CiAKLXN0YXRpYyB1aW50OF90IGJhdHRlcnlfcG9ydF9leGlzdHMo dm9pZCkKLXsKLSAgICByZXR1cm4gKGluYigweDg4KSA9PSAweDFGKTsKLX0KLQogc3RhdGljIHN0 cnVjdCBhY3BpXzIwX21hZHQgKmNvbnN0cnVjdF9tYWR0KHN0cnVjdCBhY3BpX2luZm8gKmluZm8p CiB7CiAgICAgc3RydWN0IGFjcGlfMjBfbWFkdCAgICAgICAgICAgKm1hZHQ7CkBAIC0zMjIsNyAr MzE3LDcgQEAgc3RhdGljIGludCBjb25zdHJ1Y3RfcGFzc3Rocm91Z2hfdGFibGVzKHVuc2lnbmVk IGxvbmcgKnRhYmxlX3B0cnMsCiB9CiAKIHN0YXRpYyBpbnQgY29uc3RydWN0X3NlY29uZGFyeV90 YWJsZXModW5zaWduZWQgbG9uZyAqdGFibGVfcHRycywKLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgc3RydWN0IGFjcGlfaW5mbyAqaW5mbykKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgc3RydWN0IGFjcGlfY29uZmlnICpjb25maWcpCiB7CiAgICAg aW50IG5yX3RhYmxlcyA9IDA7CiAgICAgc3RydWN0IGFjcGlfMjBfbWFkdCAqbWFkdDsKQEAgLTMz NywxMyArMzMyLDEzIEBAIHN0YXRpYyBpbnQgY29uc3RydWN0X3NlY29uZGFyeV90YWJsZXModW5z aWduZWQgbG9uZyAqdGFibGVfcHRycywKICAgICAvKiBNQURULiAqLwogICAgIGlmICggKGh2bV9p bmZvLT5ucl92Y3B1cyA+IDEpIHx8IGh2bV9pbmZvLT5hcGljX21vZGUgKQogICAgIHsKLSAgICAg ICAgbWFkdCA9IGNvbnN0cnVjdF9tYWR0KGluZm8pOworICAgICAgICBtYWR0ID0gY29uc3RydWN0 X21hZHQoJmNvbmZpZy0+YWNwaV9pbmZvKTsKICAgICAgICAgaWYgKCFtYWR0KSByZXR1cm4gLTE7 CiAgICAgICAgIHRhYmxlX3B0cnNbbnJfdGFibGVzKytdID0gKHVuc2lnbmVkIGxvbmcpbWFkdDsK ICAgICB9CiAKICAgICAvKiBIUEVULiAqLwotICAgIGlmICggaW5mby0+aHBldF9wcmVzZW50ICkK KyAgICBpZiAoIGNvbmZpZy0+YWNwaV9pbmZvLmhwZXRfcHJlc2VudCApCiAgICAgewogICAgICAg ICBocGV0ID0gY29uc3RydWN0X2hwZXQoKTsKICAgICAgICAgaWYgKCFocGV0KSByZXR1cm4gLTE7 CkBAIC0zNTUsNyArMzUwLDcgQEAgc3RhdGljIGludCBjb25zdHJ1Y3Rfc2Vjb25kYXJ5X3RhYmxl cyh1bnNpZ25lZCBsb25nICp0YWJsZV9wdHJzLAogICAgIGlmICghd2FldCkgcmV0dXJuIC0xOwog ICAgIHRhYmxlX3B0cnNbbnJfdGFibGVzKytdID0gKHVuc2lnbmVkIGxvbmcpd2FldDsKIAotICAg IGlmICggYmF0dGVyeV9wb3J0X2V4aXN0cygpICkKKyAgICBpZiAoIGNvbmZpZy0+dGFibGVfZmxh Z3MgJiBBQ1BJX0JVSUxEX1NTRFRfUE0gKQogICAgIHsKICAgICAgICAgc3NkdCA9IG1lbV9hbGxv YyhzaXplb2Yoc3NkdF9wbSksIDE2KTsKICAgICAgICAgaWYgKCFzc2R0KSByZXR1cm4gLTE7CkBA IC0zNjMsNyArMzU4LDcgQEAgc3RhdGljIGludCBjb25zdHJ1Y3Rfc2Vjb25kYXJ5X3RhYmxlcyh1 bnNpZ25lZCBsb25nICp0YWJsZV9wdHJzLAogICAgICAgICB0YWJsZV9wdHJzW25yX3RhYmxlcysr XSA9ICh1bnNpZ25lZCBsb25nKXNzZHQ7CiAgICAgfQogCi0gICAgaWYgKCAhc3RybmNtcCh4ZW5z dG9yZV9yZWFkKCJwbGF0Zm9ybS9hY3BpX3MzIiwgIjEiKSwgIjEiLCAxKSApCisgICAgaWYgKCBj b25maWctPnRhYmxlX2ZsYWdzICYgQUNQSV9CVUlMRF9TU0RUX1MzICkKICAgICB7CiAgICAgICAg IHNzZHQgPSBtZW1fYWxsb2Moc2l6ZW9mKHNzZHRfczMpLCAxNik7CiAgICAgICAgIGlmICghc3Nk dCkgcmV0dXJuIC0xOwpAQCAtMzczLDcgKzM2OCw3IEBAIHN0YXRpYyBpbnQgY29uc3RydWN0X3Nl Y29uZGFyeV90YWJsZXModW5zaWduZWQgbG9uZyAqdGFibGVfcHRycywKICAgICAgICAgcHJpbnRm KCJTMyBkaXNhYmxlZFxuIik7CiAgICAgfQogCi0gICAgaWYgKCAhc3RybmNtcCh4ZW5zdG9yZV9y ZWFkKCJwbGF0Zm9ybS9hY3BpX3M0IiwgIjEiKSwgIjEiLCAxKSApCisgICAgaWYgKCBjb25maWct PnRhYmxlX2ZsYWdzICYgQUNQSV9CVUlMRF9TU0RUX1M0ICkKICAgICB7CiAgICAgICAgIHNzZHQg PSBtZW1fYWxsb2Moc2l6ZW9mKHNzZHRfczQpLCAxNik7CiAgICAgICAgIGlmICghc3NkdCkgcmV0 dXJuIC0xOwpAQCAtNTQzLDggKzUzOCw3IEBAIHZvaWQgYWNwaV9idWlsZF90YWJsZXMoc3RydWN0 IGFjcGlfY29uZmlnICpjb25maWcsIHVuc2lnbmVkIGludCBwaHlzaWNhbCkKICAgICAgICAgICAg ICAgICAgb2Zmc2V0b2Yoc3RydWN0IGFjcGlfaGVhZGVyLCBjaGVja3N1bSksCiAgICAgICAgICAg ICAgICAgIHNpemVvZihzdHJ1Y3QgYWNwaV8yMF9mYWR0KSk7CiAKLSAgICBucl9zZWNvbmRhcmll cyA9IGNvbnN0cnVjdF9zZWNvbmRhcnlfdGFibGVzKHNlY29uZGFyeV90YWJsZXMsCi0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmY29uZmlnLT5hY3BpX2lu Zm8pOworICAgIG5yX3NlY29uZGFyaWVzID0gY29uc3RydWN0X3NlY29uZGFyeV90YWJsZXMoc2Vj b25kYXJ5X3RhYmxlcywgY29uZmlnKTsKICAgICBpZiAoIG5yX3NlY29uZGFyaWVzIDwgMCApCiAg ICAgICAgIGdvdG8gb29tOwogCmRpZmYgLS1naXQgYS90b29scy9maXJtd2FyZS9odm1sb2FkZXIv dXRpbC5jIGIvdG9vbHMvZmlybXdhcmUvaHZtbG9hZGVyL3V0aWwuYwppbmRleCBlNGMxODhjLi41 NDI2MWFlIDEwMDY0NAotLS0gYS90b29scy9maXJtd2FyZS9odm1sb2FkZXIvdXRpbC5jCisrKyBi L3Rvb2xzL2Zpcm13YXJlL2h2bWxvYWRlci91dGlsLmMKQEAgLTg1OCw2ICs4NTgsMTEgQEAgaW50 IGhwZXRfZXhpc3RzKHVuc2lnbmVkIGxvbmcgaHBldF9iYXNlKQogICAgIHJldHVybiAoKGhwZXRf aWQgPj4gMTYpID09IDB4ODA4Nik7CiB9CiAKK3N0YXRpYyB1aW50OF90IGJhdHRlcnlfcG9ydF9l eGlzdHModm9pZCkKK3sKKyAgICByZXR1cm4gKGluYigweDg4KSA9PSAweDFGKTsKK30KKwogdm9p ZCBodm1sb2FkZXJfYWNwaV9idWlsZF90YWJsZXMoc3RydWN0IGFjcGlfY29uZmlnICpjb25maWcs CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bnNpZ25lZCBpbnQgcGh5c2ljYWwp CiB7CkBAIC04ODgsNiArODkzLDEzIEBAIHZvaWQgaHZtbG9hZGVyX2FjcGlfYnVpbGRfdGFibGVz KHN0cnVjdCBhY3BpX2NvbmZpZyAqY29uZmlnLAogICAgICAgICAgICAgY29uZmlnLT52bV9naWRb MV0gPSBzdHJ0b2xsKGVuZCsxLCBOVUxMLCAwKTsKICAgICB9CiAKKyAgICBpZiAoIGJhdHRlcnlf cG9ydF9leGlzdHMoKSApCisgICAgICAgIGNvbmZpZy0+dGFibGVfZmxhZ3MgfD0gQUNQSV9CVUlM RF9TU0RUX1BNOworICAgIGlmICggIXN0cm5jbXAoeGVuc3RvcmVfcmVhZCgicGxhdGZvcm0vYWNw aV9zMyIsICIxIiksICIxIiwgMSkgICkKKyAgICAgICAgY29uZmlnLT50YWJsZV9mbGFncyB8PSBB Q1BJX0JVSUxEX1NTRFRfUzM7CisgICAgaWYgKCAhc3RybmNtcCh4ZW5zdG9yZV9yZWFkKCJwbGF0 Zm9ybS9hY3BpX3M0IiwgIjEiKSwgIjEiLCAxKSAgKQorICAgICAgICBjb25maWctPnRhYmxlX2Zs YWdzIHw9IEFDUElfQlVJTERfU1NEVF9TNDsKKwogICAgIGFjcGlfYnVpbGRfdGFibGVzKGNvbmZp ZywgcGh5c2ljYWwpOwogCiAgICAgaHZtX3BhcmFtX3NldChIVk1fUEFSQU1fVk1fR0VORVJBVElP Tl9JRF9BRERSLCBjb25maWctPmFjcGlfaW5mby52bV9naWRfYWRkcik7Ci0tIAoyLjQuMwoKCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBt YWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbi5vcmcKaHR0cDovL2xpc3RzLnhlbi5vcmcv eGVuLWRldmVsCg==