From mboxrd@z Thu Jan 1 00:00:00 1970 From: Haozhong Zhang Subject: [RFC XEN PATCH v4 32/41] tools/libacpi: build a DM ACPI signature blacklist Date: Thu, 7 Dec 2017 18:10:21 +0800 Message-ID: <20171207101030.22364-33-haozhong.zhang@intel.com> References: <20171207101030.22364-1-haozhong.zhang@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20171207101030.22364-1-haozhong.zhang@intel.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: xen-devel@lists.xen.org Cc: Haozhong Zhang , Wei Liu , Ian Jackson , Jan Beulich , Chao Peng , Dan Williams List-Id: xen-devel@lists.xenproject.org U29tZSBndWVzdCBBQ1BJIHRhYmxlcyBhcmUgYnVpbHQgYnkgWGVuIGFuZCBzaG91bGQgbm90IGJl IGxvYWRlZCBmcm9tCmRldmljZSBtb2RlbCAoRE0pLiBXZSBhZGQgc2lnbmF0dXJlcyBvZiBYZW4t YnVpbHQgQUNQSSB0YWJsZXMgZXhjZXB0ClNTRFQgaW4gYSBibGFja2xpc3QsIHNvIHRoYXQgd2Ug Y2FuIGNoZWNrIERNLWJ1aWx0IEFDUEkgdGFibGVzIGFnYWluc3QKaXQgbGF0ZXIuCgpTaWduZWQt b2ZmLWJ5OiBIYW96aG9uZyBaaGFuZyA8aGFvemhvbmcuemhhbmdAaW50ZWwuY29tPgotLS0KQ2M6 IEphbiBCZXVsaWNoIDxqYmV1bGljaEBzdXNlLmNvbT4KQ2M6IElhbiBKYWNrc29uIDxpYW4uamFj a3NvbkBldS5jaXRyaXguY29tPgpDYzogV2VpIExpdSA8d2VpLmxpdTJAY2l0cml4LmNvbT4KLS0t CiB0b29scy9saWJhY3BpL2J1aWxkLmMgICB8IDY3ICsrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysKIHRvb2xzL2xpYmFjcGkvbGliYWNwaS5oIHwgIDMgKysr CiAyIGZpbGVzIGNoYW5nZWQsIDcwIGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS90b29scy9s aWJhY3BpL2J1aWxkLmMgYi90b29scy9saWJhY3BpL2J1aWxkLmMKaW5kZXggZjk4ODFjOTYwNC4u ZjIxODU1ODlmOCAxMDA2NDQKLS0tIGEvdG9vbHMvbGliYWNwaS9idWlsZC5jCisrKyBiL3Rvb2xz L2xpYmFjcGkvYnVpbGQuYwpAQCAtNTYsNiArNTYsNTUgQEAgc3RydWN0IGFjcGlfaW5mbyB7CiAg ICAgdWludDY0X3QgcGNpX2hpX21pbiwgcGNpX2hpX2xlbjsgLyogMjQsIDMyIC0gUENJIEkvTyBo b2xlIGJvdW5kYXJpZXMgKi8KIH07CiAKKy8qCisgKiBETSBBQ1BJIHRhYmxlIHNpZ25hdHVyZSBi bGFja2xpc3Q6CisgKgorICogU2lnbmF0dXJlcyBvZiBBQ1BJIHRhYmxlcywgd2hpY2ggYXJlIGJ1 aWx0IGJ5IFhlbiBhbmQgY2FuIGhhdmUKKyAqIG9ubHkgb25lIGluc3RhbmNlLCBhcmUgYWRkZWQg dG8gdGhpcyBibGFja2xpc3QuIFhlbiBwcmV2ZW50cyB0bworICogbG9hZCBBQ1BJIHRhYmxlcyBm cm9tIHRoZSBkZXZpY2UgbW9kZWwsIHdoaWNoIGhhdmUgc2lnbmF0dXJlcyBpbgorICogdGhlIGJs YWNrbGlzdC4KKyAqCisgKiBCZWNhdXNlIHRoZSBtYXggbnVtYmVyIG9mIEFDUEkgdGFibGVzIGFs bG93ZWQgYnkgbGliYWNwaSBpcyBzbWFsbCwKKyAqIHdlIHN0YXRpY2FsbHkgYWxsb2NhdGUgdGhl IHNwYWNlIGZvciB0aGUgYmxhY2tsaXN0LiBXZSByZXNlcnZlIGEKKyAqIGxpdHRsZSBsYXJnZXIg c3BhY2UgZm9yIG5vbi1zZWNvbmRhcnkgdGFibGVzIChpbmNsdWRpbmcgUlNEUCwgUlNEVCwKKyAq IFhTRFQsIERTRFQsIEZBRFQgdjEuMCBhbmQgRkFEVCBzbyBmYXIpLgorICovCisKKyNkZWZpbmUg TlJfU0lHTkFUVVJFX0JMQUNLTElTVF9FTlRTICg4ICsgQUNQSV9NQVhfU0VDT05EQVJZX1RBQkxF UykKK3N0YXRpYyB1aW50NjRfdCBkbV9hY3BpX3NpZ25hdHVyZV9ibGFja2xpc3RbTlJfU0lHTkFU VVJFX0JMQUNLTElTVF9FTlRTXTsKKworc3RhdGljIGludCBkbV9hY3BpX2JsYWNrbGlzdF9zaWdu YXR1cmUoc3RydWN0IGFjcGlfY29uZmlnICpjb25maWcsIHVpbnQ2NF90IHNpZykKK3sKKyAgICB1 bnNpZ25lZCBpbnQgaTsKKworICAgIGlmICggIShjb25maWctPnRhYmxlX2ZsYWdzICYgQUNQSV9I QVNfRE0pICkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBmb3IgKCBpID0gMDsgaSA8IE5SX1NJ R05BVFVSRV9CTEFDS0xJU1RfRU5UUzsgaSsrICkKKyAgICB7CisgICAgICAgIHVpbnQ2NF90IGVu dHJ5ID0gZG1fYWNwaV9zaWduYXR1cmVfYmxhY2tsaXN0W2ldOworCisgICAgICAgIGlmICggZW50 cnkgPT0gc2lnICkKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICBlbHNlIGlmICggZW50 cnkgPT0gMCApCisgICAgICAgICAgICBicmVhazsKKyAgICB9CisKKyAgICBpZiAoIGkgPj0gTlJf U0lHTkFUVVJFX0JMQUNLTElTVF9FTlRTICkKKyAgICB7CisgICAgICAgIGNvbmZpZy0+dGFibGVf ZmxhZ3MgJj0gfkFDUElfSEFTX0RNOworCisgICAgICAgIHByaW50ZigiRVJST1I6IERNIEFDUEkg c2lnbmF0dXJlIGJsYWNrbGlzdCBpcyBmdWxsIChzaXplICV1KSwgIgorICAgICAgICAgICAgICAg ImRpc2FibGUgRE0gQUNQSVxuIiwgTlJfU0lHTkFUVVJFX0JMQUNLTElTVF9FTlRTKTsKKworICAg ICAgICByZXR1cm4gLUVOT1NQQzsKKyAgICB9CisKKyAgICBkbV9hY3BpX3NpZ25hdHVyZV9ibGFj a2xpc3RbaV0gPSBzaWc7CisKKyAgICByZXR1cm4gMDsKK30KKwogc3RhdGljIHZvaWQgc2V0X2No ZWNrc3VtKAogICAgIHZvaWQgKnRhYmxlLCB1aW50MzJfdCBjaGVja3N1bV9vZmZzZXQsIHVpbnQz Ml90IGxlbmd0aCkKIHsKQEAgLTM2MCw2ICs0MDksNyBAQCBzdGF0aWMgaW50IGNvbnN0cnVjdF9z ZWNvbmRhcnlfdGFibGVzKHN0cnVjdCBhY3BpX2N0eHQgKmN0eHQsCiAgICAgICAgIG1hZHQgPSBj b25zdHJ1Y3RfbWFkdChjdHh0LCBjb25maWcsIGluZm8pOwogICAgICAgICBpZiAoIW1hZHQpIHJl dHVybiAtMTsKICAgICAgICAgdGFibGVfcHRyc1tucl90YWJsZXMrK10gPSBjdHh0LT5tZW1fb3Bz LnYycChjdHh0LCBtYWR0KTsKKyAgICAgICAgZG1fYWNwaV9ibGFja2xpc3Rfc2lnbmF0dXJlKGNv bmZpZywgbWFkdC0+aGVhZGVyLnNpZ25hdHVyZSk7CiAgICAgfQogCiAgICAgLyogSFBFVC4gKi8K QEAgLTM2OCw2ICs0MTgsNyBAQCBzdGF0aWMgaW50IGNvbnN0cnVjdF9zZWNvbmRhcnlfdGFibGVz KHN0cnVjdCBhY3BpX2N0eHQgKmN0eHQsCiAgICAgICAgIGhwZXQgPSBjb25zdHJ1Y3RfaHBldChj dHh0LCBjb25maWcpOwogICAgICAgICBpZiAoIWhwZXQpIHJldHVybiAtMTsKICAgICAgICAgdGFi bGVfcHRyc1tucl90YWJsZXMrK10gPSBjdHh0LT5tZW1fb3BzLnYycChjdHh0LCBocGV0KTsKKyAg ICAgICAgZG1fYWNwaV9ibGFja2xpc3Rfc2lnbmF0dXJlKGNvbmZpZywgaHBldC0+aGVhZGVyLnNp Z25hdHVyZSk7CiAgICAgfQogCiAgICAgLyogV0FFVC4gKi8KQEAgLTM3Nyw2ICs0MjgsNyBAQCBz dGF0aWMgaW50IGNvbnN0cnVjdF9zZWNvbmRhcnlfdGFibGVzKHN0cnVjdCBhY3BpX2N0eHQgKmN0 eHQsCiAgICAgICAgIGlmICggIXdhZXQgKQogICAgICAgICAgICAgcmV0dXJuIC0xOwogICAgICAg ICB0YWJsZV9wdHJzW25yX3RhYmxlcysrXSA9IGN0eHQtPm1lbV9vcHMudjJwKGN0eHQsIHdhZXQp OworICAgICAgICBkbV9hY3BpX2JsYWNrbGlzdF9zaWduYXR1cmUoY29uZmlnLCB3YWV0LT5oZWFk ZXIuc2lnbmF0dXJlKTsKICAgICB9CiAKICAgICBpZiAoIGNvbmZpZy0+dGFibGVfZmxhZ3MgJiBB Q1BJX0hBU19TU0RUX1BNICkKQEAgLTQ1MCw2ICs1MDIsNyBAQCBzdGF0aWMgaW50IGNvbnN0cnVj dF9zZWNvbmRhcnlfdGFibGVzKHN0cnVjdCBhY3BpX2N0eHQgKmN0eHQsCiAgICAgICAgICAgICAg ICAgICAgICAgICAgb2Zmc2V0b2Yoc3RydWN0IGFjcGlfaGVhZGVyLCBjaGVja3N1bSksCiAgICAg ICAgICAgICAgICAgICAgICAgICAgdGNwYS0+aGVhZGVyLmxlbmd0aCk7CiAgICAgICAgIH0KKyAg ICAgICAgZG1fYWNwaV9ibGFja2xpc3Rfc2lnbmF0dXJlKGNvbmZpZywgdGNwYS0+aGVhZGVyLnNp Z25hdHVyZSk7CiAgICAgfQogCiAgICAgLyogU1JBVCBhbmQgU0xJVCAqLwpAQCAtNDU5LDExICs1 MTIsMTcgQEAgc3RhdGljIGludCBjb25zdHJ1Y3Rfc2Vjb25kYXJ5X3RhYmxlcyhzdHJ1Y3QgYWNw aV9jdHh0ICpjdHh0LAogICAgICAgICBzdHJ1Y3QgYWNwaV8yMF9zbGl0ICpzbGl0ID0gY29uc3Ry dWN0X3NsaXQoY3R4dCwgY29uZmlnKTsKIAogICAgICAgICBpZiAoIHNyYXQgKQorICAgICAgICB7 CiAgICAgICAgICAgICB0YWJsZV9wdHJzW25yX3RhYmxlcysrXSA9IGN0eHQtPm1lbV9vcHMudjJw KGN0eHQsIHNyYXQpOworICAgICAgICAgICAgZG1fYWNwaV9ibGFja2xpc3Rfc2lnbmF0dXJlKGNv bmZpZywgc3JhdC0+aGVhZGVyLnNpZ25hdHVyZSk7CisgICAgICAgIH0KICAgICAgICAgZWxzZQog ICAgICAgICAgICAgcHJpbnRmKCJGYWlsZWQgdG8gYnVpbGQgU1JBVCwgc2tpcHBpbmcuLi5cbiIp OwogICAgICAgICBpZiAoIHNsaXQgKQorICAgICAgICB7CiAgICAgICAgICAgICB0YWJsZV9wdHJz W25yX3RhYmxlcysrXSA9IGN0eHQtPm1lbV9vcHMudjJwKGN0eHQsIHNsaXQpOworICAgICAgICAg ICAgZG1fYWNwaV9ibGFja2xpc3Rfc2lnbmF0dXJlKGNvbmZpZywgc2xpdC0+aGVhZGVyLnNpZ25h dHVyZSk7CisgICAgICAgIH0KICAgICAgICAgZWxzZQogICAgICAgICAgICAgcHJpbnRmKCJGYWls ZWQgdG8gYnVpbGQgU0xJVCwgc2tpcHBpbmcuLi5cbiIpOwogICAgIH0KQEAgLTU0Myw2ICs2MDIs NyBAQCBpbnQgYWNwaV9idWlsZF90YWJsZXMoc3RydWN0IGFjcGlfY3R4dCAqY3R4dCwgc3RydWN0 IGFjcGlfY29uZmlnICpjb25maWcpCiAgICAgZmFjcyA9IGN0eHQtPm1lbV9vcHMuYWxsb2MoY3R4 dCwgc2l6ZW9mKHN0cnVjdCBhY3BpXzIwX2ZhY3MpLCAxNik7CiAgICAgaWYgKCFmYWNzKSBnb3Rv IG9vbTsKICAgICBtZW1jcHkoZmFjcywgJkZhY3MsIHNpemVvZihzdHJ1Y3QgYWNwaV8yMF9mYWNz KSk7CisgICAgZG1fYWNwaV9ibGFja2xpc3Rfc2lnbmF0dXJlKGNvbmZpZywgZmFjcy0+c2lnbmF0 dXJlKTsKIAogICAgIC8qCiAgICAgICogQWx0ZXJuYXRpdmUgRFNEVHMgd2UgZ2V0IGxpbmtlZCBh Z2FpbnN0LiBBIGNvdmVyLWFsbCBEU0RUIGZvciB1cCB0byB0aGUKQEAgLTU2NCw2ICs2MjQsOCBA QCBpbnQgYWNwaV9idWlsZF90YWJsZXMoc3RydWN0IGFjcGlfY3R4dCAqY3R4dCwgc3RydWN0IGFj cGlfY29uZmlnICpjb25maWcpCiAgICAgICAgIGlmICghZHNkdCkgZ290byBvb207CiAgICAgICAg IG1lbWNweShkc2R0LCBjb25maWctPmRzZHRfYW55Y3B1LCBjb25maWctPmRzZHRfYW55Y3B1X2xl bik7CiAgICAgfQorICAgIGRtX2FjcGlfYmxhY2tsaXN0X3NpZ25hdHVyZShjb25maWcsCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoc3RydWN0IGFjcGlfaGVhZGVyICopZHNkdCkt PnNpZ25hdHVyZSk7CiAKICAgICAvKgogICAgICAqIE4uQi4gQUNQSSAxLjAgb3BlcmF0aW5nIHN5 c3RlbXMgbWF5IG5vdCBoYW5kbGUgRkFEVCB3aXRoIHJldmlzaW9uIDIKQEAgLTU4Myw2ICs2NDUs NyBAQCBpbnQgYWNwaV9idWlsZF90YWJsZXMoc3RydWN0IGFjcGlfY3R4dCAqY3R4dCwgc3RydWN0 IGFjcGlfY29uZmlnICpjb25maWcpCiAgICAgc2V0X2NoZWNrc3VtKGZhZHRfMTAsCiAgICAgICAg ICAgICAgICAgIG9mZnNldG9mKHN0cnVjdCBhY3BpX2hlYWRlciwgY2hlY2tzdW0pLAogICAgICAg ICAgICAgICAgICBzaXplb2Yoc3RydWN0IGFjcGlfMTBfZmFkdCkpOworICAgIGRtX2FjcGlfYmxh Y2tsaXN0X3NpZ25hdHVyZShjb25maWcsIGZhZHRfMTAtPmhlYWRlci5zaWduYXR1cmUpOwogCiAg ICAgc3dpdGNoICggY29uZmlnLT5hY3BpX3JldmlzaW9uICkKICAgICB7CkBAIC02MzQsNiArNjk3 LDcgQEAgaW50IGFjcGlfYnVpbGRfdGFibGVzKHN0cnVjdCBhY3BpX2N0eHQgKmN0eHQsIHN0cnVj dCBhY3BpX2NvbmZpZyAqY29uZmlnKQogICAgICAgICBmYWR0LT5pYXBjX2Jvb3RfYXJjaCB8PSBB Q1BJX0ZBRFRfTk9fQ01PU19SVEM7CiAgICAgfQogICAgIHNldF9jaGVja3N1bShmYWR0LCBvZmZz ZXRvZihzdHJ1Y3QgYWNwaV9oZWFkZXIsIGNoZWNrc3VtKSwgZmFkdF9zaXplKTsKKyAgICBkbV9h Y3BpX2JsYWNrbGlzdF9zaWduYXR1cmUoY29uZmlnLCBmYWR0LT5oZWFkZXIuc2lnbmF0dXJlKTsK IAogICAgIG5yX3NlY29uZGFyaWVzID0gY29uc3RydWN0X3NlY29uZGFyeV90YWJsZXMoY3R4dCwg c2Vjb25kYXJ5X3RhYmxlcywKICAgICAgICAgICAgICAgICAgY29uZmlnLCBhY3BpX2luZm8pOwpA QCAtNjUyLDYgKzcxNiw3IEBAIGludCBhY3BpX2J1aWxkX3RhYmxlcyhzdHJ1Y3QgYWNwaV9jdHh0 ICpjdHh0LCBzdHJ1Y3QgYWNwaV9jb25maWcgKmNvbmZpZykKICAgICBzZXRfY2hlY2tzdW0oeHNk dCwKICAgICAgICAgICAgICAgICAgb2Zmc2V0b2Yoc3RydWN0IGFjcGlfaGVhZGVyLCBjaGVja3N1 bSksCiAgICAgICAgICAgICAgICAgIHhzZHQtPmhlYWRlci5sZW5ndGgpOworICAgIGRtX2FjcGlf YmxhY2tsaXN0X3NpZ25hdHVyZShjb25maWcsIHhzZHQtPmhlYWRlci5zaWduYXR1cmUpOwogCiAg ICAgcnNkdCA9IGN0eHQtPm1lbV9vcHMuYWxsb2MoY3R4dCwgc2l6ZW9mKHN0cnVjdCBhY3BpXzIw X3JzZHQpICsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplb2YodWludDMyX3Qp ICogbnJfc2Vjb25kYXJpZXMsCkBAIC02NjUsNiArNzMwLDcgQEAgaW50IGFjcGlfYnVpbGRfdGFi bGVzKHN0cnVjdCBhY3BpX2N0eHQgKmN0eHQsIHN0cnVjdCBhY3BpX2NvbmZpZyAqY29uZmlnKQog ICAgIHNldF9jaGVja3N1bShyc2R0LAogICAgICAgICAgICAgICAgICBvZmZzZXRvZihzdHJ1Y3Qg YWNwaV9oZWFkZXIsIGNoZWNrc3VtKSwKICAgICAgICAgICAgICAgICAgcnNkdC0+aGVhZGVyLmxl bmd0aCk7CisgICAgZG1fYWNwaV9ibGFja2xpc3Rfc2lnbmF0dXJlKGNvbmZpZywgcnNkdC0+aGVh ZGVyLnNpZ25hdHVyZSk7CiAKICAgICAvKgogICAgICAqIEZpbGwgaW4gbG93LW1lbW9yeSBkYXRh IHN0cnVjdHVyZXM6IGFjcGlfaW5mbyBhbmQgUlNEUC4KQEAgLTY4MCw2ICs3NDYsNyBAQCBpbnQg YWNwaV9idWlsZF90YWJsZXMoc3RydWN0IGFjcGlfY3R4dCAqY3R4dCwgc3RydWN0IGFjcGlfY29u ZmlnICpjb25maWcpCiAgICAgc2V0X2NoZWNrc3VtKHJzZHAsCiAgICAgICAgICAgICAgICAgIG9m ZnNldG9mKHN0cnVjdCBhY3BpXzIwX3JzZHAsIGV4dGVuZGVkX2NoZWNrc3VtKSwKICAgICAgICAg ICAgICAgICAgc2l6ZW9mKHN0cnVjdCBhY3BpXzIwX3JzZHApKTsKKyAgICBkbV9hY3BpX2JsYWNr bGlzdF9zaWduYXR1cmUoY29uZmlnLCByc2RwLT5zaWduYXR1cmUpOwogCiAgICAgaWYgKCAhbmV3 X3ZtX2dpZChjdHh0LCBjb25maWcsIGFjcGlfaW5mbykgKQogICAgICAgICBnb3RvIG9vbTsKZGlm ZiAtLWdpdCBhL3Rvb2xzL2xpYmFjcGkvbGliYWNwaS5oIGIvdG9vbHMvbGliYWNwaS9saWJhY3Bp LmgKaW5kZXggNTk1M2M3ODg3Yy4uNzQ4YTdlNGE3MyAxMDA2NDQKLS0tIGEvdG9vbHMvbGliYWNw aS9saWJhY3BpLmgKKysrIGIvdG9vbHMvbGliYWNwaS9saWJhY3BpLmgKQEAgLTM2LDYgKzM2LDkg QEAKICNkZWZpbmUgQUNQSV9IQVNfODA0MiAgICAgICAgICAgICAgKDE8PDEzKQogI2RlZmluZSBB Q1BJX0hBU19DTU9TX1JUQyAgICAgICAgICAoMTw8MTQpCiAjZGVmaW5lIEFDUElfSEFTX1NTRFRf TEFQVE9QX1NMQVRFICgxPDwxNSkKKyNkZWZpbmUgQUNQSV9IQVNfUUVNVV9YRU4gICAgICAgICAg KDE8PDE2KQorCisjZGVmaW5lIEFDUElfSEFTX0RNICAgICAgICAgICAgICAgIEFDUElfSEFTX1FF TVVfWEVOCiAKIHN0cnVjdCB4ZW5fdm1lbXJhbmdlOwogc3RydWN0IGFjcGlfbnVtYSB7Ci0tIAoy LjE1LjEKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpY ZW4tZGV2ZWwgbWFpbGluZyBsaXN0Clhlbi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRw czovL2xpc3RzLnhlbnByb2plY3Qub3JnL21haWxtYW4vbGlzdGluZm8veGVuLWRldmVs