From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [IPv6:2a01:7e0:0:424::9]) by lore.proxmox.com (Postfix) with ESMTPS id 3E8891FF191 for ; Tue, 21 Oct 2025 13:24:50 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id D75FD1C100; Tue, 21 Oct 2025 13:25:12 +0200 (CEST) From: Fiona Ebner To: pve-devel@lists.proxmox.com Date: Tue, 21 Oct 2025 13:23:34 +0200 Message-ID: <20251021112432.126221-4-f.ebner@proxmox.com> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20251021112432.126221-1-f.ebner@proxmox.com> References: <20251021112432.126221-1-f.ebner@proxmox.com> MIME-Version: 1.0 X-Bm-Milter-Handled: 55990f41-d878-4baa-be0a-ee34c49e34d2 X-Bm-Transport-Timestamp: 1761045870594 X-SPAM-LEVEL: Spam detection results: 0 AWL -0.020 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Subject: [pve-devel] [PATCH qemu 3/3] cherry pick fix for VFIO regression affecting v10.1 X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Proxmox VE development discussion Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: pve-devel-bounces@lists.proxmox.com Sender: "pve-devel" Rm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSB0aGUgY29tbWl0IG1lc3NhZ2VzIG9mIHRoZSBhZGRl ZCBwYXRjaGVzIGFuZDoKaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvcWVtdS1kZXZlbC82NTE5YzVi MC00NmQyLTQwOTctYmIzNy03YTc4ZjkwODdmNjhAcmVkaGF0LmNvbS8KClNpZ25lZC1vZmYtYnk6 IEZpb25hIEVibmVyIDxmLmVibmVyQHByb3htb3guY29tPgotLS0KIC4uLi1yZW5hbWUtZmllbGQt dG8tbnVtX2luaXRpYWxfcmVnaW9ucy5wYXRjaCB8IDI0NSArKysrKysrKysrKysrKysrKysKIC4u LnJlZ2lvbi1pbmZvLWNhY2hlLWZvci1pbml0aWFsLXJlZ2lvbi5wYXRjaCB8ICA3NSArKysrKysK IGRlYmlhbi9wYXRjaGVzL3NlcmllcyAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMiArCiAz IGZpbGVzIGNoYW5nZWQsIDMyMiBpbnNlcnRpb25zKCspCiBjcmVhdGUgbW9kZSAxMDA2NDQgZGVi aWFuL3BhdGNoZXMvZXh0cmEvMDAwNi12ZmlvLXJlbmFtZS1maWVsZC10by1udW1faW5pdGlhbF9y ZWdpb25zLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgZGViaWFuL3BhdGNoZXMvZXh0cmEvMDAw Ny12ZmlvLW9ubHktY2hlY2stcmVnaW9uLWluZm8tY2FjaGUtZm9yLWluaXRpYWwtcmVnaW9uLnBh dGNoCgpkaWZmIC0tZ2l0IGEvZGViaWFuL3BhdGNoZXMvZXh0cmEvMDAwNi12ZmlvLXJlbmFtZS1m aWVsZC10by1udW1faW5pdGlhbF9yZWdpb25zLnBhdGNoIGIvZGViaWFuL3BhdGNoZXMvZXh0cmEv MDAwNi12ZmlvLXJlbmFtZS1maWVsZC10by1udW1faW5pdGlhbF9yZWdpb25zLnBhdGNoCm5ldyBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjM2NjJmMWQKLS0tIC9kZXYvbnVsbAorKysg Yi9kZWJpYW4vcGF0Y2hlcy9leHRyYS8wMDA2LXZmaW8tcmVuYW1lLWZpZWxkLXRvLW51bV9pbml0 aWFsX3JlZ2lvbnMucGF0Y2gKQEAgLTAsMCArMSwyNDUgQEAKK0Zyb20gMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206 IEpvaG4gTGV2b24gPGpvaG4ubGV2b25AbnV0YW5peC5jb20+CitEYXRlOiBUdWUsIDE0IE9jdCAy MDI1IDE3OjEyOjI2ICswMjAwCitTdWJqZWN0OiBbUEFUQ0hdIHZmaW86IHJlbmFtZSBmaWVsZCB0 byAibnVtX2luaXRpYWxfcmVnaW9ucyIKK01JTUUtVmVyc2lvbjogMS4wCitDb250ZW50LVR5cGU6 IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLTgKK0NvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhi aXQKKworV2Ugc2V0IFZGSU9EZXZpY2U6Om51bV9yZWdpb25zIGF0IGluaXRpYWxpemF0aW9uIHRp bWUsIGFuZCBkbyBub3QKK290aGVyd2lzZSByZWZyZXNoIGl0LiBBcyBpdCBpcyB2YWxpZCBpbiB0 aGVvcnkgZm9yIGEgVkZJTyBkZXZpY2UgdG8KK2xhdGVyIGluY3JlYXNlIHRoZSBudW1iZXIgb2Yg c3VwcG9ydGVkIHJlZ2lvbnMsIHJlbmFtZSB0aGUgZmllbGQgdG8KKyJudW1faW5pdGlhbF9yZWdp b25zIiB0byBiZXR0ZXIgcmVmbGVjdCBpdHMgc2VtYW50aWNzLgorCitTaWduZWQtb2ZmLWJ5OiBK b2huIExldm9uIDxqb2huLmxldm9uQG51dGFuaXguY29tPgorUmV2aWV3ZWQtYnk6IEPDqWRyaWMg TGUgR29hdGVyIDxjbGdAcmVkaGF0LmNvbT4KK1Jldmlld2VkLWJ5OiBBbGV4IFdpbGxpYW1zb24g PGFsZXhAc2hhemJvdC5vcmc+CitMaW5rOiBodHRwczovL2xvcmUua2VybmVsLm9yZy9xZW11LWRl dmVsLzIwMjUxMDE0MTUxMjI3LjIyOTg4OTItMi1qb2huLmxldm9uQG51dGFuaXguY29tCitTaWdu ZWQtb2ZmLWJ5OiBDw6lkcmljIExlIEdvYXRlciA8Y2xnQHJlZGhhdC5jb20+CisoY2hlcnJ5IHBp Y2tlZCBmcm9tIGNvbW1pdCBkNTE3NmEzOTQwNWYwZTBkMjBkZmYxNzNlNTgyNTVhN2Q1MDk5NDEx CisgZnJvbSBodHRwczovL2dpdGxhYi5jb20vbGVnb2F0ZXIvcWVtdS8tL3RyZWUvdmZpby1uZXh0 KQorW0ZFOiBhbHNvIHJlbmFtZSBpbiBody92ZmlvL3BsYXRmb3JtLmMgYW5kIGh3L2NvcmUvc3lz YnVzLWZkdC5jCisgd2hlcmUgYWZmZWN0ZWQgY29kZSBnb3QgZHJvcHBlZCBpbiBtYXN0ZXIsIGJ1 dCBpcyBzdGlsbCBpbiB2MTAuMV0KK1NpZ25lZC1vZmYtYnk6IEZpb25hIEVibmVyIDxmLmVibmVy QHByb3htb3guY29tPgorLS0tCisgaHcvY29yZS9zeXNidXMtZmR0LmMgICAgICAgICAgfCAxNCAr KysrKysrLS0tLS0tLQorIGh3L3ZmaW8tdXNlci9kZXZpY2UuYyAgICAgICAgIHwgIDIgKy0KKyBo dy92ZmlvL2Njdy5jICAgICAgICAgICAgICAgICB8ICA0ICsrLS0KKyBody92ZmlvL2RldmljZS5j ICAgICAgICAgICAgICB8IDEyICsrKysrKy0tLS0tLQorIGh3L3ZmaW8vaW9tbXVmZC5jICAgICAg ICAgICAgIHwgIDMgKystCisgaHcvdmZpby9wY2kuYyAgICAgICAgICAgICAgICAgfCAgNCArKy0t CisgaHcvdmZpby9wbGF0Zm9ybS5jICAgICAgICAgICAgfCAxMCArKysrKy0tLS0tCisgaW5jbHVk ZS9ody92ZmlvL3ZmaW8tZGV2aWNlLmggfCAgMiArLQorIDggZmlsZXMgY2hhbmdlZCwgMjYgaW5z ZXJ0aW9ucygrKSwgMjUgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS9ody9jb3JlL3N5c2J1 cy1mZHQuYyBiL2h3L2NvcmUvc3lzYnVzLWZkdC5jCitpbmRleCBjMzM5YTI3ODc1Li4xZTE5NjY4 MTNmIDEwMDY0NAorLS0tIGEvaHcvY29yZS9zeXNidXMtZmR0LmMKKysrKyBiL2h3L2NvcmUvc3lz YnVzLWZkdC5jCitAQCAtMjM2LDE1ICsyMzYsMTUgQEAgc3RhdGljIGludCBhZGRfY2FseGVkYV9t aWR3YXlfeGdtYWNfZmR0X25vZGUoU3lzQnVzRGV2aWNlICpzYmRldiwgdm9pZCAqb3BhcXVlKQor IAorICAgICBxZW11X2ZkdF9zZXRwcm9wKGZkdCwgbm9kZW5hbWUsICJkbWEtY29oZXJlbnQiLCAi IiwgMCk7CisgCistICAgIHJlZ19hdHRyID0gZ19uZXcodWludDMyX3QsIHZiYXNlZGV2LT5udW1f cmVnaW9ucyAqIDIpOworLSAgICBmb3IgKGkgPSAwOyBpIDwgdmJhc2VkZXYtPm51bV9yZWdpb25z OyBpKyspIHsKKysgICAgcmVnX2F0dHIgPSBnX25ldyh1aW50MzJfdCwgdmJhc2VkZXYtPm51bV9p bml0aWFsX3JlZ2lvbnMgKiAyKTsKKysgICAgZm9yIChpID0gMDsgaSA8IHZiYXNlZGV2LT5udW1f aW5pdGlhbF9yZWdpb25zOyBpKyspIHsKKyAgICAgICAgIG1taW9fYmFzZSA9IHBsYXRmb3JtX2J1 c19nZXRfbW1pb19hZGRyKHBidXMsIHNiZGV2LCBpKTsKKyAgICAgICAgIHJlZ19hdHRyWzIgKiBp XSA9IGNwdV90b19iZTMyKG1taW9fYmFzZSk7CisgICAgICAgICByZWdfYXR0clsyICogaSArIDFd ID0gY3B1X3RvX2JlMzIoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZW1vcnlf cmVnaW9uX3NpemUodmRldi0+cmVnaW9uc1tpXS0+bWVtKSk7CisgICAgIH0KKyAgICAgcWVtdV9m ZHRfc2V0cHJvcChmZHQsIG5vZGVuYW1lLCAicmVnIiwgcmVnX2F0dHIsCistICAgICAgICAgICAg ICAgICAgICAgdmJhc2VkZXYtPm51bV9yZWdpb25zICogMiAqIHNpemVvZih1aW50MzJfdCkpOwor KyAgICAgICAgICAgICAgICAgICAgIHZiYXNlZGV2LT5udW1faW5pdGlhbF9yZWdpb25zICogMiAq IHNpemVvZih1aW50MzJfdCkpOworIAorICAgICBpcnFfYXR0ciA9IGdfbmV3KHVpbnQzMl90LCB2 YmFzZWRldi0+bnVtX2lycXMgKiAzKTsKKyAgICAgZm9yIChpID0gMDsgaSA8IHZiYXNlZGV2LT5u dW1faXJxczsgaSsrKSB7CitAQCAtMzMwLDcgKzMzMCw3IEBAIHN0YXRpYyBpbnQgYWRkX2FtZF94 Z2JlX2ZkdF9ub2RlKFN5c0J1c0RldmljZSAqc2JkZXYsIHZvaWQgKm9wYXF1ZSkKKyAKKyAgICAg Z19mcmVlKGR0X25hbWUpOworIAorLSAgICBpZiAodmJhc2VkZXYtPm51bV9yZWdpb25zICE9IDUp IHsKKysgICAgaWYgKHZiYXNlZGV2LT5udW1faW5pdGlhbF9yZWdpb25zICE9IDUpIHsKKyAgICAg ICAgIGVycm9yX3JlcG9ydCgiJXMgRG9lcyB0aGUgaG9zdCBkdCBub2RlIGNvbWJpbmUgWEdCRS9Q SFk/IiwgX19mdW5jX18pOworICAgICAgICAgZXhpdCgxKTsKKyAgICAgfQorQEAgLTM3NCwxNSAr Mzc0LDE1IEBAIHN0YXRpYyBpbnQgYWRkX2FtZF94Z2JlX2ZkdF9ub2RlKFN5c0J1c0RldmljZSAq c2JkZXYsIHZvaWQgKm9wYXF1ZSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBndWVzdF9j bG9ja19waGFuZGxlc1swXSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBndWVzdF9jbG9j a19waGFuZGxlc1sxXSk7CisgCistICAgIHJlZ19hdHRyID0gZ19uZXcodWludDMyX3QsIHZiYXNl ZGV2LT5udW1fcmVnaW9ucyAqIDIpOworLSAgICBmb3IgKGkgPSAwOyBpIDwgdmJhc2VkZXYtPm51 bV9yZWdpb25zOyBpKyspIHsKKysgICAgcmVnX2F0dHIgPSBnX25ldyh1aW50MzJfdCwgdmJhc2Vk ZXYtPm51bV9pbml0aWFsX3JlZ2lvbnMgKiAyKTsKKysgICAgZm9yIChpID0gMDsgaSA8IHZiYXNl ZGV2LT5udW1faW5pdGlhbF9yZWdpb25zOyBpKyspIHsKKyAgICAgICAgIG1taW9fYmFzZSA9IHBs YXRmb3JtX2J1c19nZXRfbW1pb19hZGRyKHBidXMsIHNiZGV2LCBpKTsKKyAgICAgICAgIHJlZ19h dHRyWzIgKiBpXSA9IGNwdV90b19iZTMyKG1taW9fYmFzZSk7CisgICAgICAgICByZWdfYXR0clsy ICogaSArIDFdID0gY3B1X3RvX2JlMzIoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBtZW1vcnlfcmVnaW9uX3NpemUodmRldi0+cmVnaW9uc1tpXS0+bWVtKSk7CisgICAgIH0KKyAg ICAgcWVtdV9mZHRfc2V0cHJvcChndWVzdF9mZHQsIG5vZGVuYW1lLCAicmVnIiwgcmVnX2F0dHIs CistICAgICAgICAgICAgICAgICAgICAgdmJhc2VkZXYtPm51bV9yZWdpb25zICogMiAqIHNpemVv Zih1aW50MzJfdCkpOworKyAgICAgICAgICAgICAgICAgICAgIHZiYXNlZGV2LT5udW1faW5pdGlh bF9yZWdpb25zICogMiAqIHNpemVvZih1aW50MzJfdCkpOworIAorICAgICBpcnFfYXR0ciA9IGdf bmV3KHVpbnQzMl90LCB2YmFzZWRldi0+bnVtX2lycXMgKiAzKTsKKyAgICAgZm9yIChpID0gMDsg aSA8IHZiYXNlZGV2LT5udW1faXJxczsgaSsrKSB7CitkaWZmIC0tZ2l0IGEvaHcvdmZpby11c2Vy L2RldmljZS5jIGIvaHcvdmZpby11c2VyL2RldmljZS5jCitpbmRleCAwNjA5YTdkYzI1Li42NGVm MzViMzIwIDEwMDY0NAorLS0tIGEvaHcvdmZpby11c2VyL2RldmljZS5jCisrKysgYi9ody92Zmlv LXVzZXIvZGV2aWNlLmMKK0BAIC0xMzQsNyArMTM0LDcgQEAgc3RhdGljIGludCB2ZmlvX3VzZXJf ZGV2aWNlX2lvX2dldF9yZWdpb25faW5mbyhWRklPRGV2aWNlICp2YmFzZWRldiwKKyAgICAgVkZJ T1VzZXJGRHMgZmRzID0geyAwLCAxLCBmZH07CisgICAgIGludCByZXQ7CisgCistICAgIGlmIChp bmZvLT5pbmRleCA+IHZiYXNlZGV2LT5udW1fcmVnaW9ucykgeworKyAgICBpZiAoaW5mby0+aW5k ZXggPiB2YmFzZWRldi0+bnVtX2luaXRpYWxfcmVnaW9ucykgeworICAgICAgICAgcmV0dXJuIC1F SU5WQUw7CisgICAgIH0KKyAKK2RpZmYgLS1naXQgYS9ody92ZmlvL2Njdy5jIGIvaHcvdmZpby9j Y3cuYworaW5kZXggOTU2MGI4ZDg1MS4uNGQ5NTg4ZTdhYSAxMDA2NDQKKy0tLSBhL2h3L3ZmaW8v Y2N3LmMKKysrKyBiL2h3L3ZmaW8vY2N3LmMKK0BAIC00ODQsOSArNDg0LDkgQEAgc3RhdGljIGJv b2wgdmZpb19jY3dfZ2V0X3JlZ2lvbihWRklPQ0NXRGV2aWNlICp2Y2RldiwgRXJyb3IgKiplcnJw KQorICAgICAgKiBXZSBhbHdheXMgZXhwZWN0IGF0IGxlYXN0IHRoZSBJL08gcmVnaW9uIHRvIGJl IHByZXNlbnQuIFdlIGFsc28KKyAgICAgICogbWF5IGhhdmUgYSB2YXJpYWJsZSBudW1iZXIgb2Yg cmVnaW9ucyBnb3Zlcm5lZCBieSBjYXBhYmlsaXRpZXMuCisgICAgICAqLworLSAgICBpZiAodmRl di0+bnVtX3JlZ2lvbnMgPCBWRklPX0NDV19DT05GSUdfUkVHSU9OX0lOREVYICsgMSkgeworKyAg ICBpZiAodmRldi0+bnVtX2luaXRpYWxfcmVnaW9ucyA8IFZGSU9fQ0NXX0NPTkZJR19SRUdJT05f SU5ERVggKyAxKSB7CisgICAgICAgICBlcnJvcl9zZXRnKGVycnAsICJ2ZmlvOiB0b28gZmV3IHJl Z2lvbnMgKCV1KSwgZXhwZWN0ZWQgYXQgbGVhc3QgJXUiLAorLSAgICAgICAgICAgICAgICAgICB2 ZGV2LT5udW1fcmVnaW9ucywgVkZJT19DQ1dfQ09ORklHX1JFR0lPTl9JTkRFWCArIDEpOworKyAg ICAgICAgICAgICAgICAgICB2ZGV2LT5udW1faW5pdGlhbF9yZWdpb25zLCBWRklPX0NDV19DT05G SUdfUkVHSU9OX0lOREVYICsgMSk7CisgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgIH0KKyAK K2RpZmYgLS1naXQgYS9ody92ZmlvL2RldmljZS5jIGIvaHcvdmZpby9kZXZpY2UuYworaW5kZXgg NTJhMTk5NmRjNC4uMGI0NTljMGY3YyAxMDA2NDQKKy0tLSBhL2h3L3ZmaW8vZGV2aWNlLmMKKysr KyBiL2h3L3ZmaW8vZGV2aWNlLmMKK0BAIC0yNTcsNyArMjU3LDcgQEAgaW50IHZmaW9fZGV2aWNl X2dldF9yZWdpb25faW5mb190eXBlKFZGSU9EZXZpY2UgKnZiYXNlZGV2LCB1aW50MzJfdCB0eXBl LAorIHsKKyAgICAgaW50IGk7CisgCistICAgIGZvciAoaSA9IDA7IGkgPCB2YmFzZWRldi0+bnVt X3JlZ2lvbnM7IGkrKykgeworKyAgICBmb3IgKGkgPSAwOyBpIDwgdmJhc2VkZXYtPm51bV9pbml0 aWFsX3JlZ2lvbnM7IGkrKykgeworICAgICAgICAgc3RydWN0IHZmaW9faW5mb19jYXBfaGVhZGVy ICpoZHI7CisgICAgICAgICBzdHJ1Y3QgdmZpb19yZWdpb25faW5mb19jYXBfdHlwZSAqY2FwX3R5 cGU7CisgCitAQCAtNDY2LDcgKzQ2Niw3IEBAIHZvaWQgdmZpb19kZXZpY2VfcHJlcGFyZShWRklP RGV2aWNlICp2YmFzZWRldiwgVkZJT0NvbnRhaW5lckJhc2UgKmJjb250YWluZXIsCisgICAgIGlu dCBpOworIAorICAgICB2YmFzZWRldi0+bnVtX2lycXMgPSBpbmZvLT5udW1faXJxczsKKy0gICAg dmJhc2VkZXYtPm51bV9yZWdpb25zID0gaW5mby0+bnVtX3JlZ2lvbnM7CisrICAgIHZiYXNlZGV2 LT5udW1faW5pdGlhbF9yZWdpb25zID0gaW5mby0+bnVtX3JlZ2lvbnM7CisgICAgIHZiYXNlZGV2 LT5mbGFncyA9IGluZm8tPmZsYWdzOworICAgICB2YmFzZWRldi0+cmVzZXRfd29ya3MgPSAhIShp bmZvLT5mbGFncyAmIFZGSU9fREVWSUNFX0ZMQUdTX1JFU0VUKTsKKyAKK0BAIC00NzYsMTAgKzQ3 NiwxMCBAQCB2b2lkIHZmaW9fZGV2aWNlX3ByZXBhcmUoVkZJT0RldmljZSAqdmJhc2VkZXYsIFZG SU9Db250YWluZXJCYXNlICpiY29udGFpbmVyLAorICAgICBRTElTVF9JTlNFUlRfSEVBRCgmdmZp b19kZXZpY2VfbGlzdCwgdmJhc2VkZXYsIGdsb2JhbF9uZXh0KTsKKyAKKyAgICAgdmJhc2VkZXYt PnJlZ2luZm8gPSBnX25ldzAoc3RydWN0IHZmaW9fcmVnaW9uX2luZm8gKiwKKy0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgdmJhc2VkZXYtPm51bV9yZWdpb25zKTsKKysgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgdmJhc2VkZXYtPm51bV9pbml0aWFsX3JlZ2lvbnMpOworICAg ICBpZiAodmJhc2VkZXYtPnVzZV9yZWdpb25fZmRzKSB7CistICAgICAgICB2YmFzZWRldi0+cmVn aW9uX2ZkcyA9IGdfbmV3MChpbnQsIHZiYXNlZGV2LT5udW1fcmVnaW9ucyk7CistICAgICAgICBm b3IgKGkgPSAwOyBpIDwgdmJhc2VkZXYtPm51bV9yZWdpb25zOyBpKyspIHsKKysgICAgICAgIHZi YXNlZGV2LT5yZWdpb25fZmRzID0gZ19uZXcwKGludCwgdmJhc2VkZXYtPm51bV9pbml0aWFsX3Jl Z2lvbnMpOworKyAgICAgICAgZm9yIChpID0gMDsgaSA8IHZiYXNlZGV2LT5udW1faW5pdGlhbF9y ZWdpb25zOyBpKyspIHsKKyAgICAgICAgICAgICB2YmFzZWRldi0+cmVnaW9uX2Zkc1tpXSA9IC0x OworICAgICAgICAgfQorICAgICB9CitAQCAtNDg5LDcgKzQ4OSw3IEBAIHZvaWQgdmZpb19kZXZp Y2VfdW5wcmVwYXJlKFZGSU9EZXZpY2UgKnZiYXNlZGV2KQorIHsKKyAgICAgaW50IGk7CisgCist ICAgIGZvciAoaSA9IDA7IGkgPCB2YmFzZWRldi0+bnVtX3JlZ2lvbnM7IGkrKykgeworKyAgICBm b3IgKGkgPSAwOyBpIDwgdmJhc2VkZXYtPm51bV9pbml0aWFsX3JlZ2lvbnM7IGkrKykgeworICAg ICAgICAgZ19mcmVlKHZiYXNlZGV2LT5yZWdpbmZvW2ldKTsKKyAgICAgICAgIGlmICh2YmFzZWRl di0+cmVnaW9uX2ZkcyAhPSBOVUxMICYmIHZiYXNlZGV2LT5yZWdpb25fZmRzW2ldICE9IC0xKSB7 CisgICAgICAgICAgICAgY2xvc2UodmJhc2VkZXYtPnJlZ2lvbl9mZHNbaV0pOworZGlmZiAtLWdp dCBhL2h3L3ZmaW8vaW9tbXVmZC5jIGIvaHcvdmZpby9pb21tdWZkLmMKK2luZGV4IDQ4YzU5MGI2 YTkuLmRiY2Q4NjFiMjcgMTAwNjQ0CistLS0gYS9ody92ZmlvL2lvbW11ZmQuYworKysrIGIvaHcv dmZpby9pb21tdWZkLmMKK0BAIC02NjgsNyArNjY4LDggQEAgZm91bmRfY29udGFpbmVyOgorICAg ICB2ZmlvX2lvbW11ZmRfY3ByX3JlZ2lzdGVyX2RldmljZSh2YmFzZWRldik7CisgCisgICAgIHRy YWNlX2lvbW11ZmRfY2Rldl9kZXZpY2VfaW5mbyh2YmFzZWRldi0+bmFtZSwgZGV2ZmQsIHZiYXNl ZGV2LT5udW1faXJxcywKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZiYXNl ZGV2LT5udW1fcmVnaW9ucywgdmJhc2VkZXYtPmZsYWdzKTsKKysgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHZiYXNlZGV2LT5udW1faW5pdGlhbF9yZWdpb25zLAorKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgdmJhc2VkZXYtPmZsYWdzKTsKKyAgICAgcmV0dXJu IHRydWU7CisgCisgZXJyX2xpc3RlbmVyX3JlZ2lzdGVyOgorZGlmZiAtLWdpdCBhL2h3L3ZmaW8v cGNpLmMgYi9ody92ZmlvL3BjaS5jCitpbmRleCAwNzI1N2QwZmEwLi4xZTY5MDU1YzdjIDEwMDY0 NAorLS0tIGEvaHcvdmZpby9wY2kuYworKysrIGIvaHcvdmZpby9wY2kuYworQEAgLTI5MzAsOSAr MjkzMCw5IEBAIGJvb2wgdmZpb19wY2lfcG9wdWxhdGVfZGV2aWNlKFZGSU9QQ0lEZXZpY2UgKnZk ZXYsIEVycm9yICoqZXJycCkKKyAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgfQorIAorLSAg ICBpZiAodmJhc2VkZXYtPm51bV9yZWdpb25zIDwgVkZJT19QQ0lfQ09ORklHX1JFR0lPTl9JTkRF WCArIDEpIHsKKysgICAgaWYgKHZiYXNlZGV2LT5udW1faW5pdGlhbF9yZWdpb25zIDwgVkZJT19Q Q0lfQ09ORklHX1JFR0lPTl9JTkRFWCArIDEpIHsKKyAgICAgICAgIGVycm9yX3NldGcoZXJycCwg InVuZXhwZWN0ZWQgbnVtYmVyIG9mIGlvIHJlZ2lvbnMgJXUiLAorLSAgICAgICAgICAgICAgICAg ICB2YmFzZWRldi0+bnVtX3JlZ2lvbnMpOworKyAgICAgICAgICAgICAgICAgICB2YmFzZWRldi0+ bnVtX2luaXRpYWxfcmVnaW9ucyk7CisgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgIH0KKyAK K2RpZmYgLS1naXQgYS9ody92ZmlvL3BsYXRmb3JtLmMgYi9ody92ZmlvL3BsYXRmb3JtLmMKK2lu ZGV4IDVjMTc5NWEyNmYuLmM5MzQ5YmE3YjcgMTAwNjQ0CistLS0gYS9ody92ZmlvL3BsYXRmb3Jt LmMKKysrKyBiL2h3L3ZmaW8vcGxhdGZvcm0uYworQEAgLTE0OCw3ICsxNDgsNyBAQCBzdGF0aWMg dm9pZCB2ZmlvX21tYXBfc2V0X2VuYWJsZWQoVkZJT1BsYXRmb3JtRGV2aWNlICp2ZGV2LCBib29s IGVuYWJsZWQpCisgeworICAgICBpbnQgaTsKKyAKKy0gICAgZm9yIChpID0gMDsgaSA8IHZkZXYt PnZiYXNlZGV2Lm51bV9yZWdpb25zOyBpKyspIHsKKysgICAgZm9yIChpID0gMDsgaSA8IHZkZXYt PnZiYXNlZGV2Lm51bV9pbml0aWFsX3JlZ2lvbnM7IGkrKykgeworICAgICAgICAgdmZpb19yZWdp b25fbW1hcHNfc2V0X2VuYWJsZWQodmRldi0+cmVnaW9uc1tpXSwgZW5hYmxlZCk7CisgICAgIH0K KyB9CitAQCAtNDUzLDkgKzQ1Myw5IEBAIHN0YXRpYyBib29sIHZmaW9fcG9wdWxhdGVfZGV2aWNl KFZGSU9EZXZpY2UgKnZiYXNlZGV2LCBFcnJvciAqKmVycnApCisgICAgICAgICByZXR1cm4gZmFs c2U7CisgICAgIH0KKyAKKy0gICAgdmRldi0+cmVnaW9ucyA9IGdfbmV3MChWRklPUmVnaW9uICos IHZiYXNlZGV2LT5udW1fcmVnaW9ucyk7CisrICAgIHZkZXYtPnJlZ2lvbnMgPSBnX25ldzAoVkZJ T1JlZ2lvbiAqLCB2YmFzZWRldi0+bnVtX2luaXRpYWxfcmVnaW9ucyk7CisgCistICAgIGZvciAo aSA9IDA7IGkgPCB2YmFzZWRldi0+bnVtX3JlZ2lvbnM7IGkrKykgeworKyAgICBmb3IgKGkgPSAw OyBpIDwgdmJhc2VkZXYtPm51bV9pbml0aWFsX3JlZ2lvbnM7IGkrKykgeworICAgICAgICAgY2hh ciAqbmFtZSA9IGdfc3RyZHVwX3ByaW50ZigiVkZJTyAlcyByZWdpb24gJWRcbiIsIHZiYXNlZGV2 LT5uYW1lLCBpKTsKKyAKKyAgICAgICAgIHZkZXYtPnJlZ2lvbnNbaV0gPSBnX25ldzAoVkZJT1Jl Z2lvbiwgMSk7CitAQCAtNDk5LDcgKzQ5OSw3IEBAIGlycV9lcnI6CisgICAgICAgICBnX2ZyZWUo aW50cCk7CisgICAgIH0KKyByZWdfZXJyb3I6CistICAgIGZvciAoaSA9IDA7IGkgPCB2YmFzZWRl di0+bnVtX3JlZ2lvbnM7IGkrKykgeworKyAgICBmb3IgKGkgPSAwOyBpIDwgdmJhc2VkZXYtPm51 bV9pbml0aWFsX3JlZ2lvbnM7IGkrKykgeworICAgICAgICAgaWYgKHZkZXYtPnJlZ2lvbnNbaV0p IHsKKyAgICAgICAgICAgICB2ZmlvX3JlZ2lvbl9maW5hbGl6ZSh2ZGV2LT5yZWdpb25zW2ldKTsK KyAgICAgICAgIH0KK0BAIC02MDgsNyArNjA4LDcgQEAgc3RhdGljIHZvaWQgdmZpb19wbGF0Zm9y bV9yZWFsaXplKERldmljZVN0YXRlICpkZXYsIEVycm9yICoqZXJycCkKKyAgICAgICAgIH0KKyAg ICAgfQorIAorLSAgICBmb3IgKGkgPSAwOyBpIDwgdmJhc2VkZXYtPm51bV9yZWdpb25zOyBpKysp IHsKKysgICAgZm9yIChpID0gMDsgaSA8IHZiYXNlZGV2LT5udW1faW5pdGlhbF9yZWdpb25zOyBp KyspIHsKKyAgICAgICAgIGlmICh2ZmlvX3JlZ2lvbl9tbWFwKHZkZXYtPnJlZ2lvbnNbaV0pKSB7 CisgICAgICAgICAgICAgd2Fybl9yZXBvcnQoIiVzIG1tYXAgdW5zdXBwb3J0ZWQsIHBlcmZvcm1h bmNlIG1heSBiZSBzbG93IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICBtZW1vcnlfcmVnaW9u X25hbWUodmRldi0+cmVnaW9uc1tpXS0+bWVtKSk7CitkaWZmIC0tZ2l0IGEvaW5jbHVkZS9ody92 ZmlvL3ZmaW8tZGV2aWNlLmggYi9pbmNsdWRlL2h3L3ZmaW8vdmZpby1kZXZpY2UuaAoraW5kZXgg NmU0ZDVjY2RhYy4uMTAwMjQ3MzBhMSAxMDA2NDQKKy0tLSBhL2luY2x1ZGUvaHcvdmZpby92Zmlv LWRldmljZS5oCisrKysgYi9pbmNsdWRlL2h3L3ZmaW8vdmZpby1kZXZpY2UuaAorQEAgLTc0LDcg Kzc0LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgVkZJT0RldmljZSB7CisgICAgIFZGSU9EZXZpY2VPcHMg Km9wczsKKyAgICAgVkZJT0RldmljZUlPT3BzICppb19vcHM7CisgICAgIHVuc2lnbmVkIGludCBu dW1faXJxczsKKy0gICAgdW5zaWduZWQgaW50IG51bV9yZWdpb25zOworKyAgICB1bnNpZ25lZCBp bnQgbnVtX2luaXRpYWxfcmVnaW9uczsKKyAgICAgdW5zaWduZWQgaW50IGZsYWdzOworICAgICBW RklPTWlncmF0aW9uICptaWdyYXRpb247CisgICAgIEVycm9yICptaWdyYXRpb25fYmxvY2tlcjsK ZGlmZiAtLWdpdCBhL2RlYmlhbi9wYXRjaGVzL2V4dHJhLzAwMDctdmZpby1vbmx5LWNoZWNrLXJl Z2lvbi1pbmZvLWNhY2hlLWZvci1pbml0aWFsLXJlZ2lvbi5wYXRjaCBiL2RlYmlhbi9wYXRjaGVz L2V4dHJhLzAwMDctdmZpby1vbmx5LWNoZWNrLXJlZ2lvbi1pbmZvLWNhY2hlLWZvci1pbml0aWFs LXJlZ2lvbi5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iMjM5Y2I0 Ci0tLSAvZGV2L251bGwKKysrIGIvZGViaWFuL3BhdGNoZXMvZXh0cmEvMDAwNy12ZmlvLW9ubHkt Y2hlY2stcmVnaW9uLWluZm8tY2FjaGUtZm9yLWluaXRpYWwtcmVnaW9uLnBhdGNoCkBAIC0wLDAg KzEsNzUgQEAKK0Zyb20gMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMCBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IEpvaG4gTGV2b24gPGpvaG4ubGV2b25AbnV0 YW5peC5jb20+CitEYXRlOiBUdWUsIDE0IE9jdCAyMDI1IDE3OjEyOjI3ICswMjAwCitTdWJqZWN0 OiBbUEFUQ0hdIHZmaW86IG9ubHkgY2hlY2sgcmVnaW9uIGluZm8gY2FjaGUgZm9yIGluaXRpYWwg cmVnaW9ucworTUlNRS1WZXJzaW9uOiAxLjAKK0NvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hh cnNldD1VVEYtOAorQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdAorCitJdCBpcyBzZW1h bnRpY2FsbHkgdmFsaWQgZm9yIGEgVkZJTyBkZXZpY2UgdG8gaW5jcmVhc2UgdGhlIG51bWJlciBv ZgorcmVnaW9ucyBhZnRlciBpbml0aWFsaXphdGlvbi4gSW4gdGhpcyBjYXNlLCB3ZSdkIGF0dGVt cHQgdG8gY2hlY2sgZm9yCitjYWNoZWQgcmVnaW9uIGluZm8gcGFzdCB0aGUgc2l6ZSBvZiB0aGUg LT5yZWdpbmZvIGFycmF5LiBDaGVjayBmb3IgdGhlCityZWdpb24gaW5kZXggYW5kIHNraXAgdGhl IGNhY2hlIGluIHRoZXNlIGNhc2VzLgorCitUaGlzIGFsc28gd29ya3MgYXJvdW5kIHNvbWUgVkdQ VSB1c2UgY2FzZXMgd2hpY2ggYXBwZWFyIHRvIGJlIGEgYnVnLAord2hlcmUgVkZJT19ERVZJQ0Vf UVVFUllfR0ZYX1BMQU5FIHJldHVybnMgYSByZWdpb24gaW5kZXggYmV5b25kIHRoZQorcmVwb3J0 ZWQgLT5udW1fcmVnaW9ucy4KKworRml4ZXM6IDk1Y2RiMDI0ICgidmZpbzogYWRkIHJlZ2lvbiBp bmZvIGNhY2hlIikKK1NpZ25lZC1vZmYtYnk6IEpvaG4gTGV2b24gPGpvaG4ubGV2b25AbnV0YW5p eC5jb20+CitSZXZpZXdlZC1ieTogQ8OpZHJpYyBMZSBHb2F0ZXIgPGNsZ0ByZWRoYXQuY29tPgor UmV2aWV3ZWQtYnk6IEFsZXggV2lsbGlhbXNvbiA8YWxleEBzaGF6Ym90Lm9yZz4KK0xpbms6IGh0 dHBzOi8vbG9yZS5rZXJuZWwub3JnL3FlbXUtZGV2ZWwvMjAyNTEwMTQxNTEyMjcuMjI5ODg5Mi0z LWpvaG4ubGV2b25AbnV0YW5peC5jb20KK1NpZ25lZC1vZmYtYnk6IEPDqWRyaWMgTGUgR29hdGVy IDxjbGdAcmVkaGF0LmNvbT4KKyhjaGVycnkgcGlja2VkIGZyb20gY29tbWl0IDViZGNmMmRmNjRi ZjdlNGJlNTg1MjRlZjE0NDI4MzZiNmQ0MTI4MmUKKyBmcm9tIGh0dHBzOi8vZ2l0bGFiLmNvbS9s ZWdvYXRlci9xZW11Ly0vdHJlZS92ZmlvLW5leHQpCitTaWduZWQtb2ZmLWJ5OiBGaW9uYSBFYm5l ciA8Zi5lYm5lckBwcm94bW94LmNvbT4KKy0tLQorIGh3L3ZmaW8vZGV2aWNlLmMgfCAyNyArKysr KysrKysrKysrKysrKysrLS0tLS0tLS0KKyAxIGZpbGUgY2hhbmdlZCwgMTkgaW5zZXJ0aW9ucygr KSwgOCBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL2h3L3ZmaW8vZGV2aWNlLmMgYi9ody92 ZmlvL2RldmljZS5jCitpbmRleCAwYjQ1OWMwZjdjLi43ZWJmNDFjOTVlIDEwMDY0NAorLS0tIGEv aHcvdmZpby9kZXZpY2UuYworKysrIGIvaHcvdmZpby9kZXZpY2UuYworQEAgLTIwNSwxMCArMjA1 LDE5IEBAIGludCB2ZmlvX2RldmljZV9nZXRfcmVnaW9uX2luZm8oVkZJT0RldmljZSAqdmJhc2Vk ZXYsIGludCBpbmRleCwKKyAgICAgaW50IGZkID0gLTE7CisgICAgIGludCByZXQ7CisgCistICAg IC8qIGNoZWNrIGNhY2hlICovCistICAgIGlmICh2YmFzZWRldi0+cmVnaW5mb1tpbmRleF0gIT0g TlVMTCkgeworLSAgICAgICAgKmluZm8gPSB2YmFzZWRldi0+cmVnaW5mb1tpbmRleF07CistICAg ICAgICByZXR1cm4gMDsKKysgICAgLyoKKysgICAgICogV2Ugb25seSBzZXQgdXAgdGhlIHJlZ2lv biBpbmZvIGNhY2hlIGZvciB0aGUgaW5pdGlhbCBudW1iZXIgb2YgcmVnaW9ucy4KKysgICAgICoK KysgICAgICogU2luY2UgYSBWRklPIGRldmljZSBtYXkgbGF0ZXIgaW5jcmVhc2UgdGhlIG51bWJl ciBvZiByZWdpb25zIHRoZW4gdXNlCisrICAgICAqIHN1Y2ggcmVnaW9ucyB3aXRoIGFuIGluZGV4 IHBhc3QgLT5udW1faW5pdGlhbF9yZWdpb25zLCBkb24ndCBhdHRlbXB0IHRvCisrICAgICAqIHVz ZSB0aGUgaW5mbyBjYWNoZSBpbiB0aG9zZSBjYXNlcy4KKysgICAgICovCisrICAgIGlmIChpbmRl eCA8IHZiYXNlZGV2LT5udW1faW5pdGlhbF9yZWdpb25zKSB7CisrICAgICAgICAvKiBjaGVjayBj YWNoZSAqLworKyAgICAgICAgaWYgKHZiYXNlZGV2LT5yZWdpbmZvW2luZGV4XSAhPSBOVUxMKSB7 CisrICAgICAgICAgICAgKmluZm8gPSB2YmFzZWRldi0+cmVnaW5mb1tpbmRleF07CisrICAgICAg ICAgICAgcmV0dXJuIDA7CisrICAgICAgICB9CisgICAgIH0KKyAKKyAgICAgKmluZm8gPSBnX21h bGxvYzAoYXJnc3opOworQEAgLTIzNiwxMCArMjQ1LDEyIEBAIHJldHJ5OgorICAgICAgICAgZ290 byByZXRyeTsKKyAgICAgfQorIAorLSAgICAvKiBmaWxsIGNhY2hlICovCistICAgIHZiYXNlZGV2 LT5yZWdpbmZvW2luZGV4XSA9ICppbmZvOworLSAgICBpZiAodmJhc2VkZXYtPnJlZ2lvbl9mZHMg IT0gTlVMTCkgeworLSAgICAgICAgdmJhc2VkZXYtPnJlZ2lvbl9mZHNbaW5kZXhdID0gZmQ7Cisr ICAgIGlmIChpbmRleCA8IHZiYXNlZGV2LT5udW1faW5pdGlhbF9yZWdpb25zKSB7CisrICAgICAg ICAvKiBmaWxsIGNhY2hlICovCisrICAgICAgICB2YmFzZWRldi0+cmVnaW5mb1tpbmRleF0gPSAq aW5mbzsKKysgICAgICAgIGlmICh2YmFzZWRldi0+cmVnaW9uX2ZkcyAhPSBOVUxMKSB7CisrICAg ICAgICAgICAgdmJhc2VkZXYtPnJlZ2lvbl9mZHNbaW5kZXhdID0gZmQ7CisrICAgICAgICB9Cisg ICAgIH0KKyAKKyAgICAgcmV0dXJuIDA7CmRpZmYgLS1naXQgYS9kZWJpYW4vcGF0Y2hlcy9zZXJp ZXMgYi9kZWJpYW4vcGF0Y2hlcy9zZXJpZXMKaW5kZXggMjljMThlYy4uOTAwMzEwYSAxMDA2NDQK LS0tIGEvZGViaWFuL3BhdGNoZXMvc2VyaWVzCisrKyBiL2RlYmlhbi9wYXRjaGVzL3NlcmllcwpA QCAtMyw2ICszLDggQEAgZXh0cmEvMDAwMi1pZGUtYXZvaWQtcG90ZW50aWFsLWRlYWRsb2NrLXdo ZW4tZHJhaW5pbmctZHVyaW5nLXRyLnBhdGNoCiBleHRyYS8wMDAzLXRjZy1hcm0tRml4LXRnZW5f ZGVwb3NpdC5wYXRjaAogZXh0cmEvMDAwNC12ZmlvLWlnZC1FbmFibGUtcXVpcmtzLXdoZW4tSUdE LWlzLW5vdC10aGUtcHJpbWFyeS1kLnBhdGNoCiBleHRyYS8wMDA1LWh3LXNjc2ktYXZvaWQtZGVh ZGxvY2stdXBvbi1UTUYtcmVxdWVzdC1jYW5jZWxsaW5nLXcucGF0Y2gKK2V4dHJhLzAwMDYtdmZp by1yZW5hbWUtZmllbGQtdG8tbnVtX2luaXRpYWxfcmVnaW9ucy5wYXRjaAorZXh0cmEvMDAwNy12 ZmlvLW9ubHktY2hlY2stcmVnaW9uLWluZm8tY2FjaGUtZm9yLWluaXRpYWwtcmVnaW9uLnBhdGNo CiBiaXRtYXAtbWlycm9yLzAwMDEtZHJpdmUtbWlycm9yLWFkZC1zdXBwb3J0LWZvci1zeW5jLWJp dG1hcC1tb2RlLW5ldmVyLnBhdGNoCiBiaXRtYXAtbWlycm9yLzAwMDItZHJpdmUtbWlycm9yLWFk ZC1zdXBwb3J0LWZvci1jb25kaXRpb25hbC1hbmQtYWx3YXlzLS5wYXRjaAogYml0bWFwLW1pcnJv ci8wMDAzLW1pcnJvci1hZGQtY2hlY2stZm9yLWJpdG1hcC1tb2RlLXdpdGhvdXQtYml0bWFwLnBh dGNoCi0tIAoyLjQ3LjMKCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KcHZlLWRldmVsIG1haWxpbmcgbGlzdApwdmUtZGV2ZWxAbGlzdHMucHJveG1veC5j b20KaHR0cHM6Ly9saXN0cy5wcm94bW94LmNvbS9jZ2ktYmluL21haWxtYW4vbGlzdGluZm8vcHZl LWRldmVsCg==