From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-3.7 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id F1A35C31E45 for ; Thu, 13 Jun 2019 13:23:27 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id C64F72147A for ; Thu, 13 Jun 2019 13:23:27 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org C64F72147A Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=suse.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hbPhE-0001En-0C; Thu, 13 Jun 2019 13:23:16 +0000 Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hbPhC-0001ET-JA for xen-devel@lists.xenproject.org; Thu, 13 Jun 2019 13:23:14 +0000 X-Inumbo-ID: 64f6f809-8dde-11e9-8980-bc764e045a96 Received: from prv1-mh.provo.novell.com (unknown [137.65.248.33]) by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS id 64f6f809-8dde-11e9-8980-bc764e045a96; Thu, 13 Jun 2019 13:23:13 +0000 (UTC) Received: from INET-PRV1-MTA by prv1-mh.provo.novell.com with Novell_GroupWise; Thu, 13 Jun 2019 07:23:12 -0600 Message-Id: <5D024E3E0200007800237E03@prv1-mh.provo.novell.com> X-Mailer: Novell GroupWise Internet Agent 18.1.1 Date: Thu, 13 Jun 2019 07:23:10 -0600 From: "Jan Beulich" To: "xen-devel" References: <5D024C500200007800237DD8@prv1-mh.provo.novell.com> In-Reply-To: <5D024C500200007800237DD8@prv1-mh.provo.novell.com> Mime-Version: 1.0 Content-Disposition: inline Subject: [Xen-devel] [PATCH 3/9] AMD/IOMMU: use bit field for IRTE X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Andrew Cooper , Brian Woods , Suravee Suthikulpanit Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" QXQgdGhlIHNhbWUgdGltZSByZXN0cmljdCBpdHMgc2NvcGUgdG8ganVzdCB0aGUgc2luZ2xlIHNv dXJjZSBmaWxlCmFjdHVhbGx5IHVzaW5nIGl0LCBhbmQgYWJzdHJhY3QgYWNjZXNzZXMgYnkgaW50 cm9kdWNpbmcgYSB1bmlvbiBvZgpwb2ludGVycy4gKEEgdW5pb24gb2YgdGhlIGFjdHVhbCB0YWJs ZSBlbnRyaWVzIGlzIG5vdCB1c2VkIHRvIG1ha2UgaXQKaW1wb3NzaWJsZSB0byBbd3JvbmdseSwg b25jZSB0aGUgMTI4LWJpdCBmb3JtIGdldHMgYWRkZWRdIHBlcmZvcm0KcG9pbnRlciBhcml0aG1l dGljIC8gYXJyYXkgYWNjZXNzZXMgb24gZGVyaXZlZCB0eXBlcy4pCgpBbHNvIG1vdmUgYXdheSBm cm9tIHVwZGF0aW5nIHRoZSBlbnRyaWVzIHBpZWNlbWVhbDogQ29uc3RydWN0IGEgZnVsbCBuZXcK ZW50cnksIGFuZCB3cml0ZSBpdCBvdXQuCgpTaWduZWQtb2ZmLWJ5OiBKYW4gQmV1bGljaCA8amJl dWxpY2hAc3VzZS5jb20+Ci0tLQpJdCB3b3VsZCBoYXZlIGJlZW4gbmljZSB0byB1c2Ugd3JpdGVf YXRvbWljKCkgb3IgQUNDRVNTX09OQ0UoKSBmb3IgdGhlCmFjdHVhbCB3cml0ZXMsIGJ1dCBib3Ro IGNhc3QgdGhlIHZhbHVlIHRvIGEgc2NhbGFyIG9uZSwgd2hpY2ggZG9lc24ndApzdWl0IHVzIGhl cmUgKGFuZCBJIGFsc28gZGlkbid0IHdhbnQgdG8gbWFrZSB0aGUgY29tcG91bmQgdHlwZSBhIHVu aW9uCndpdGggYSByYXcgbWVtYmVyIGp1c3QgZm9yIHRoaXMpLgoKLS0tIGEveGVuL2RyaXZlcnMv cGFzc3Rocm91Z2gvYW1kL2lvbW11X2ludHIuYworKysgYi94ZW4vZHJpdmVycy9wYXNzdGhyb3Vn aC9hbWQvaW9tbXVfaW50ci5jCkBAIC0yMyw2ICsyMywyMyBAQAogI2luY2x1ZGUgPGFzbS9pb19h cGljLmg+CiAjaW5jbHVkZSA8eGVuL2tleWhhbmRsZXIuaD4KIAorc3RydWN0IGlydGVfYmFzaWMg eworICAgIHVuc2lnbmVkIGludCByZW1hcF9lbjoxOworICAgIHVuc2lnbmVkIGludCBzdXBfaW9f cGY6MTsKKyAgICB1bnNpZ25lZCBpbnQgaW50X3R5cGU6MzsKKyAgICB1bnNpZ25lZCBpbnQgcnFf ZW9pOjE7CisgICAgdW5zaWduZWQgaW50IGRtOjE7CisgICAgdW5zaWduZWQgaW50IGd1ZXN0X21v ZGU6MTsgLyogTUJaICovCisgICAgdW5zaWduZWQgaW50IGRlc3Q6ODsKKyAgICB1bnNpZ25lZCBp bnQgdmVjdG9yOjg7CisgICAgdW5zaWduZWQgaW50IDo4OworfTsKKwordW5pb24gaXJ0ZV9wdHIg eworICAgIHZvaWQgKnJhdzsKKyAgICBzdHJ1Y3QgaXJ0ZV9iYXNpYyAqYmFzaWM7Cit9OworCiAj ZGVmaW5lIElOVFJFTUFQX1RBQkxFX09SREVSICAgIDEKICNkZWZpbmUgSU5UUkVNQVBfTEVOR1RI IDB4QgogI2RlZmluZSBJTlRSRU1BUF9FTlRSSUVTICgxIDw8IElOVFJFTUFQX0xFTkdUSCkKQEAg LTEwMSw0NyArMTE4LDQ0IEBAIHN0YXRpYyB1bnNpZ25lZCBpbnQgYWxsb2NfaW50cmVtYXBfZW50 cnkKICAgICByZXR1cm4gc2xvdDsKIH0KIAotc3RhdGljIHUzMiAqZ2V0X2ludHJlbWFwX2VudHJ5 KGludCBzZWcsIGludCBiZGYsIGludCBvZmZzZXQpCitzdGF0aWMgdW5pb24gaXJ0ZV9wdHIgZ2V0 X2ludHJlbWFwX2VudHJ5KHVuc2lnbmVkIGludCBzZWcsIHVuc2lnbmVkIGludCBiZGYsCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBvZmZzZXQp CiB7Ci0gICAgdTMyICp0YWJsZSA9IGdldF9pdnJzX21hcHBpbmdzKHNlZylbYmRmXS5pbnRyZW1h cF90YWJsZTsKKyAgICB1bmlvbiBpcnRlX3B0ciB0YWJsZSA9IHsKKyAgICAgICAgLnJhdyA9IGdl dF9pdnJzX21hcHBpbmdzKHNlZylbYmRmXS5pbnRyZW1hcF90YWJsZQorICAgIH07CisKKyAgICBB U1NFUlQodGFibGUucmF3ICYmIChvZmZzZXQgPCBJTlRSRU1BUF9FTlRSSUVTKSk7CiAKLSAgICBB U1NFUlQoICh0YWJsZSAhPSBOVUxMKSAmJiAob2Zmc2V0IDwgSU5UUkVNQVBfRU5UUklFUykgKTsK KyAgICB0YWJsZS5iYXNpYyArPSBvZmZzZXQ7CiAKLSAgICByZXR1cm4gdGFibGUgKyBvZmZzZXQ7 CisgICAgcmV0dXJuIHRhYmxlOwogfQogCi1zdGF0aWMgdm9pZCBmcmVlX2ludHJlbWFwX2VudHJ5 KGludCBzZWcsIGludCBiZGYsIGludCBvZmZzZXQpCitzdGF0aWMgdm9pZCBmcmVlX2ludHJlbWFw X2VudHJ5KHVuc2lnbmVkIGludCBzZWcsIHVuc2lnbmVkIGludCBiZGYsIHVuc2lnbmVkIGludCBv ZmZzZXQpCiB7Ci0gICAgdTMyICplbnRyeSA9IGdldF9pbnRyZW1hcF9lbnRyeShzZWcsIGJkZiwg b2Zmc2V0KTsKKyAgICB1bmlvbiBpcnRlX3B0ciBlbnRyeSA9IGdldF9pbnRyZW1hcF9lbnRyeShz ZWcsIGJkZiwgb2Zmc2V0KTsKKworICAgICplbnRyeS5iYXNpYyA9IChzdHJ1Y3QgaXJ0ZV9iYXNp Yyl7fTsKIAotICAgIG1lbXNldChlbnRyeSwgMCwgc2l6ZW9mKHUzMikpOwogICAgIF9fY2xlYXJf Yml0KG9mZnNldCwgZ2V0X2l2cnNfbWFwcGluZ3Moc2VnKVtiZGZdLmludHJlbWFwX2ludXNlKTsK IH0KIAotc3RhdGljIHZvaWQgdXBkYXRlX2ludHJlbWFwX2VudHJ5KHUzMiogZW50cnksIHU4IHZl Y3RvciwgdTggaW50X3R5cGUsCi0gICAgdTggZGVzdF9tb2RlLCB1OCBkZXN0KQotewotICAgIHNl dF9maWVsZF9pbl9yZWdfdTMyKElPTU1VX0NPTlRST0xfRU5BQkxFRCwgMCwKLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICBJTlRfUkVNQVBfRU5UUllfUkVNQVBFTl9NQVNLLAotICAgICAgICAg ICAgICAgICAgICAgICAgICAgIElOVF9SRU1BUF9FTlRSWV9SRU1BUEVOX1NISUZULCBlbnRyeSk7 Ci0gICAgc2V0X2ZpZWxkX2luX3JlZ191MzIoSU9NTVVfQ09OVFJPTF9ESVNBQkxFRCwgKmVudHJ5 LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIElOVF9SRU1BUF9FTlRSWV9TVVBJT1BGX01B U0ssCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgSU5UX1JFTUFQX0VOVFJZX1NVUElPUEZf U0hJRlQsIGVudHJ5KTsKLSAgICBzZXRfZmllbGRfaW5fcmVnX3UzMihpbnRfdHlwZSwgKmVudHJ5 LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIElOVF9SRU1BUF9FTlRSWV9JTlRUWVBFX01B U0ssCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgSU5UX1JFTUFQX0VOVFJZX0lOVFRZUEVf U0hJRlQsIGVudHJ5KTsKLSAgICBzZXRfZmllbGRfaW5fcmVnX3UzMihJT01NVV9DT05UUk9MX0RJ U0FCTEVELCAqZW50cnksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgSU5UX1JFTUFQX0VO VFJZX1JFUUVPSV9NQVNLLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIElOVF9SRU1BUF9F TlRSWV9SRVFFT0lfU0hJRlQsIGVudHJ5KTsKLSAgICBzZXRfZmllbGRfaW5fcmVnX3UzMigodTMy KWRlc3RfbW9kZSwgKmVudHJ5LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIElOVF9SRU1B UF9FTlRSWV9ETV9NQVNLLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIElOVF9SRU1BUF9F TlRSWV9ETV9TSElGVCwgZW50cnkpOwotICAgIHNldF9maWVsZF9pbl9yZWdfdTMyKCh1MzIpZGVz dCwgKmVudHJ5LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIElOVF9SRU1BUF9FTlRSWV9E RVNUX01BU1QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgSU5UX1JFTUFQX0VOVFJZX0RF U1RfU0hJRlQsIGVudHJ5KTsKLSAgICBzZXRfZmllbGRfaW5fcmVnX3UzMigodTMyKXZlY3Rvciwg KmVudHJ5LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIElOVF9SRU1BUF9FTlRSWV9WRUNU T1JfTUFTSywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTlRfUkVNQVBfRU5UUllfVkVD VE9SX1NISUZULCBlbnRyeSk7CitzdGF0aWMgdm9pZCB1cGRhdGVfaW50cmVtYXBfZW50cnkodW5p b24gaXJ0ZV9wdHIgZW50cnksIHVuc2lnbmVkIGludCB2ZWN0b3IsCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGludF90eXBlLAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHVuc2lnbmVkIGludCBkZXN0X21vZGUsIHVuc2lnbmVkIGludCBk ZXN0KQoreworICAgIHN0cnVjdCBpcnRlX2Jhc2ljIGJhc2ljID0geworICAgICAgICAucmVtYXBf ZW4gPSAxLAorICAgICAgICAuc3VwX2lvX3BmID0gMCwKKyAgICAgICAgLmludF90eXBlID0gaW50 X3R5cGUsCisgICAgICAgIC5ycV9lb2kgPSAwLAorICAgICAgICAuZG0gPSBkZXN0X21vZGUsCisg ICAgICAgIC5kZXN0ID0gZGVzdCwKKyAgICAgICAgLnZlY3RvciA9IHZlY3RvciwKKyAgICB9Owor CisgICAgKmVudHJ5LmJhc2ljID0gYmFzaWM7CiB9CiAKIHN0YXRpYyBpbmxpbmUgaW50IGdldF9y dGVfaW5kZXgoY29uc3Qgc3RydWN0IElPX0FQSUNfcm91dGVfZW50cnkgKnJ0ZSkKQEAgLTE2Myw3 ICsxNzcsNyBAQCBzdGF0aWMgaW50IHVwZGF0ZV9pbnRyZW1hcF9lbnRyeV9mcm9tX2lvCiAgICAg dTE2ICppbmRleCkKIHsKICAgICB1bnNpZ25lZCBsb25nIGZsYWdzOwotICAgIHUzMiogZW50cnk7 CisgICAgdW5pb24gaXJ0ZV9wdHIgZW50cnk7CiAgICAgdTggZGVsaXZlcnlfbW9kZSwgZGVzdCwg dmVjdG9yLCBkZXN0X21vZGU7CiAgICAgaW50IHJlcV9pZDsKICAgICBzcGlubG9ja190ICpsb2Nr OwpAQCAtMjAxLDEyICsyMTUsOCBAQCBzdGF0aWMgaW50IHVwZGF0ZV9pbnRyZW1hcF9lbnRyeV9m cm9tX2lvCiAgICAgICAgICAqIHNvIG5lZWQgdG8gcmVjb3ZlciB2ZWN0b3IgYW5kIGRlbGl2ZXJ5 IG1vZGUgZnJvbSBJUlRFLgogICAgICAgICAgKi8KICAgICAgICAgQVNTRVJUKGdldF9ydGVfaW5k ZXgocnRlKSA9PSBvZmZzZXQpOwotICAgICAgICB2ZWN0b3IgPSBnZXRfZmllbGRfZnJvbV9yZWdf dTMyKCplbnRyeSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTlRf UkVNQVBfRU5UUllfVkVDVE9SX01BU0ssCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgSU5UX1JFTUFQX0VOVFJZX1ZFQ1RPUl9TSElGVCk7Ci0gICAgICAgIGRlbGl2ZXJ5 X21vZGUgPSBnZXRfZmllbGRfZnJvbV9yZWdfdTMyKCplbnRyeSwKLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSU5UX1JFTUFQX0VOVFJZX0lOVFRZUEVfTUFT SywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSU5UX1JF TUFQX0VOVFJZX0lOVFRZUEVfU0hJRlQpOworICAgICAgICB2ZWN0b3IgPSBlbnRyeS5iYXNpYy0+ dmVjdG9yOworICAgICAgICBkZWxpdmVyeV9tb2RlID0gZW50cnkuYmFzaWMtPmludF90eXBlOwog ICAgIH0KICAgICB1cGRhdGVfaW50cmVtYXBfZW50cnkoZW50cnksIHZlY3RvciwgZGVsaXZlcnlf bW9kZSwgZGVzdF9tb2RlLCBkZXN0KTsKIApAQCAtMjI4LDcgKzIzOCw3IEBAIGludCBfX2luaXQg YW1kX2lvbW11X3NldHVwX2lvYXBpY19yZW1hcHAKIHsKICAgICBzdHJ1Y3QgSU9fQVBJQ19yb3V0 ZV9lbnRyeSBydGU7CiAgICAgdW5zaWduZWQgbG9uZyBmbGFnczsKLSAgICB1MzIqIGVudHJ5Owor ICAgIHVuaW9uIGlydGVfcHRyIGVudHJ5OwogICAgIGludCBhcGljLCBwaW47CiAgICAgdTggZGVs aXZlcnlfbW9kZSwgZGVzdCwgdmVjdG9yLCBkZXN0X21vZGU7CiAgICAgdTE2IHNlZywgYmRmLCBy ZXFfaWQ7CkBAIC00MDcsMTYgKzQxNywxMiBAQCB1bnNpZ25lZCBpbnQgYW1kX2lvbW11X3JlYWRf aW9hcGljX2Zyb21fCiAgICAgICAgIHUxNiBiZGYgPSBpb2FwaWNfc2JkZltpZHhdLmJkZjsKICAg ICAgICAgdTE2IHNlZyA9IGlvYXBpY19zYmRmW2lkeF0uc2VnOwogICAgICAgICB1MTYgcmVxX2lk ID0gZ2V0X2ludHJlbWFwX3JlcXVlc3Rvcl9pZChzZWcsIGJkZik7Ci0gICAgICAgIGNvbnN0IHUz MiAqZW50cnkgPSBnZXRfaW50cmVtYXBfZW50cnkoc2VnLCByZXFfaWQsIG9mZnNldCk7CisgICAg ICAgIHVuaW9uIGlydGVfcHRyIGVudHJ5ID0gZ2V0X2ludHJlbWFwX2VudHJ5KHNlZywgcmVxX2lk LCBvZmZzZXQpOwogCiAgICAgICAgIEFTU0VSVChvZmZzZXQgPT0gKHZhbCAmIChJTlRSRU1BUF9F TlRSSUVTIC0gMSkpKTsKICAgICAgICAgdmFsICY9IH4oSU5UUkVNQVBfRU5UUklFUyAtIDEpOwot ICAgICAgICB2YWwgfD0gZ2V0X2ZpZWxkX2Zyb21fcmVnX3UzMigqZW50cnksCi0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIElOVF9SRU1BUF9FTlRSWV9JTlRUWVBFX01BU0ss Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElOVF9SRU1BUF9FTlRSWV9J TlRUWVBFX1NISUZUKSA8PCA4OwotICAgICAgICB2YWwgfD0gZ2V0X2ZpZWxkX2Zyb21fcmVnX3Uz MigqZW50cnksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElOVF9SRU1B UF9FTlRSWV9WRUNUT1JfTUFTSywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgSU5UX1JFTUFQX0VOVFJZX1ZFQ1RPUl9TSElGVCk7CisgICAgICAgIHZhbCB8PSBNQVNLX0lO U1IoZW50cnkuYmFzaWMtPmludF90eXBlLCBJT19BUElDX1JFRElSX0RFTElWX01PREVfTUFTSyk7 CisgICAgICAgIHZhbCB8PSBNQVNLX0lOU1IoZW50cnkuYmFzaWMtPnZlY3RvciwgSU9fQVBJQ19S RURJUl9WRUNUT1JfTUFTSyk7CiAgICAgfQogCiAgICAgcmV0dXJuIHZhbDsKQEAgLTQyNyw3ICs0 MzMsNyBAQCBzdGF0aWMgaW50IHVwZGF0ZV9pbnRyZW1hcF9lbnRyeV9mcm9tX21zCiAgICAgaW50 ICpyZW1hcF9pbmRleCwgY29uc3Qgc3RydWN0IG1zaV9tc2cgKm1zZywgdTMyICpkYXRhKQogewog ICAgIHVuc2lnbmVkIGxvbmcgZmxhZ3M7Ci0gICAgdTMyKiBlbnRyeTsKKyAgICB1bmlvbiBpcnRl X3B0ciBlbnRyeTsKICAgICB1MTYgcmVxX2lkLCBhbGlhc19pZDsKICAgICB1OCBkZWxpdmVyeV9t b2RlLCBkZXN0LCB2ZWN0b3IsIGRlc3RfbW9kZTsKICAgICBzcGlubG9ja190ICpsb2NrOwpAQCAt NTgxLDcgKzU4Nyw3IEBAIHZvaWQgYW1kX2lvbW11X3JlYWRfbXNpX2Zyb21faXJlKAogICAgIGNv bnN0IHN0cnVjdCBwY2lfZGV2ICpwZGV2ID0gbXNpX2Rlc2MtPmRldjsKICAgICB1MTYgYmRmID0g cGRldiA/IFBDSV9CREYyKHBkZXYtPmJ1cywgcGRldi0+ZGV2Zm4pIDogaHBldF9zYmRmLmJkZjsK ICAgICB1MTYgc2VnID0gcGRldiA/IHBkZXYtPnNlZyA6IGhwZXRfc2JkZi5zZWc7Ci0gICAgY29u c3QgdTMyICplbnRyeTsKKyAgICB1bmlvbiBpcnRlX3B0ciBlbnRyeTsKIAogICAgIGlmICggSVNf RVJSX09SX05VTEwoX2ZpbmRfaW9tbXVfZm9yX2RldmljZShzZWcsIGJkZikpICkKICAgICAgICAg cmV0dXJuOwpAQCAtNTk3LDEyICs2MDMsOCBAQCB2b2lkIGFtZF9pb21tdV9yZWFkX21zaV9mcm9t X2lyZSgKICAgICB9CiAKICAgICBtc2ctPmRhdGEgJj0gfihJTlRSRU1BUF9FTlRSSUVTIC0gMSk7 Ci0gICAgbXNnLT5kYXRhIHw9IGdldF9maWVsZF9mcm9tX3JlZ191MzIoKmVudHJ5LAotICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElOVF9SRU1BUF9FTlRSWV9JTlRUWVBF X01BU0ssCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSU5UX1JFTUFQ X0VOVFJZX0lOVFRZUEVfU0hJRlQpIDw8IDg7Ci0gICAgbXNnLT5kYXRhIHw9IGdldF9maWVsZF9m cm9tX3JlZ191MzIoKmVudHJ5LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIElOVF9SRU1BUF9FTlRSWV9WRUNUT1JfTUFTSywKLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBJTlRfUkVNQVBfRU5UUllfVkVDVE9SX1NISUZUKTsKKyAgICBtc2ct PmRhdGEgfD0gTUFTS19JTlNSKGVudHJ5LmJhc2ljLT5pbnRfdHlwZSwgTVNJX0RBVEFfREVMSVZF UllfTU9ERV9NQVNLKTsKKyAgICBtc2ctPmRhdGEgfD0gTUFTS19JTlNSKGVudHJ5LmJhc2ljLT52 ZWN0b3IsIE1TSV9EQVRBX1ZFQ1RPUl9NQVNLKTsKIH0KIAogaW50IF9faW5pdCBhbWRfaW9tbXVf ZnJlZV9pbnRyZW1hcF90YWJsZSgKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9odm0vc3ZtL2Ft ZC1pb21tdS1kZWZzLmgKKysrIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9odm0vc3ZtL2FtZC1pb21t dS1kZWZzLmgKQEAgLTQ2OCwyMiArNDY4LDYgQEAgc3RydWN0IGFtZF9pb21tdV9wdGUgewogI2Rl ZmluZSBJT01NVV9DT05UUk9MX0RJU0FCTEVECTAKICNkZWZpbmUgSU9NTVVfQ09OVFJPTF9FTkFC TEVECTEKIAotLyogaW50ZXJydXB0IHJlbWFwcGluZyB0YWJsZSAqLwotI2RlZmluZSBJTlRfUkVN QVBfRU5UUllfUkVNQVBFTl9NQVNLICAgIDB4MDAwMDAwMDEKLSNkZWZpbmUgSU5UX1JFTUFQX0VO VFJZX1JFTUFQRU5fU0hJRlQgICAwCi0jZGVmaW5lIElOVF9SRU1BUF9FTlRSWV9TVVBJT1BGX01B U0sgICAgMHgwMDAwMDAwMgotI2RlZmluZSBJTlRfUkVNQVBfRU5UUllfU1VQSU9QRl9TSElGVCAg IDEKLSNkZWZpbmUgSU5UX1JFTUFQX0VOVFJZX0lOVFRZUEVfTUFTSyAgICAweDAwMDAwMDFDCi0j ZGVmaW5lIElOVF9SRU1BUF9FTlRSWV9JTlRUWVBFX1NISUZUICAgMgotI2RlZmluZSBJTlRfUkVN QVBfRU5UUllfUkVRRU9JX01BU0sgICAgIDB4MDAwMDAwMjAKLSNkZWZpbmUgSU5UX1JFTUFQX0VO VFJZX1JFUUVPSV9TSElGVCAgICA1Ci0jZGVmaW5lIElOVF9SRU1BUF9FTlRSWV9ETV9NQVNLICAg ICAgICAgMHgwMDAwMDA0MAotI2RlZmluZSBJTlRfUkVNQVBfRU5UUllfRE1fU0hJRlQgICAgICAg IDYKLSNkZWZpbmUgSU5UX1JFTUFQX0VOVFJZX0RFU1RfTUFTVCAgICAgICAweDAwMDBGRjAwCi0j ZGVmaW5lIElOVF9SRU1BUF9FTlRSWV9ERVNUX1NISUZUICAgICAgOAotI2RlZmluZSBJTlRfUkVN QVBfRU5UUllfVkVDVE9SX01BU0sgICAgIDB4MDBGRjAwMDAKLSNkZWZpbmUgSU5UX1JFTUFQX0VO VFJZX1ZFQ1RPUl9TSElGVCAgICAxNgotCiAjZGVmaW5lIElOVl9JT01NVV9BTExfUEFHRVNfQURE UkVTUyAgICAgICgoMVVMTCA8PCA2MykgLSAxKQogCiAjZGVmaW5lIElPTU1VX1JJTkdfQlVGRkVS X1BUUl9NQVNLICAgICAgICAgICAgICAgICAgMHgwMDA3RkZGMAoKCgoKX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApY ZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9y Zy9tYWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA==