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 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 9E682C54E60 for ; Fri, 15 Mar 2024 00:46:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Date:Cc:To:From:Subject:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=E1cDrQX7NS9Y2qFMYCIf1JC6Tyae2Z+Qjcb113zsjGc=; b=I7DSb9coHsYm9s 4HxtRYU32SIh5vEnJqNjr1oPJ+QfBDI8Ek08zJHB6y1XQ/6Zsj5F26pHVk2txjnipYF8thRVb5xVx +3qsQEh64xEKxIjuBKVh9pj7mtUbQ9vvHgXu+9akvMpMSj+6E2nT5xP2SMRKiE80roS8urCDw0A3P nvkZN/8WQ5kH2Sj2YPE78k+kHxiskidYC3UOFh6CVM3BhV1wFRY1o9uc146TocAXudXagawgVzrHz BFjTI5WtwnTy6+FjgN7ZLxeR12uSIGuXWI2ixdh16TL9oKKwX51adU3SxJZxDZyLSnMfWr4k/lqEy uzoddsB4wIp9rqoaqqXA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1rkviJ-0000000GD04-2EV3; Fri, 15 Mar 2024 00:46:23 +0000 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1rkviE-0000000GCyW-39m1; Fri, 15 Mar 2024 00:46:21 +0000 Received: from pps.filterd (m0360072.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 42EKboGX005258; Fri, 15 Mar 2024 00:45:53 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=message-id : subject : from : to : cc : date : in-reply-to : references : content-type : content-transfer-encoding : mime-version; s=pp1; bh=92UtFAcY0GTWHCTH+ctu4ttUTr3isdg6lfehUiExBWo=; b=OFzXoeuXXZca/NvVO7M2FSr3lnR3SjWlccG/a920MfreROrvtoqFi5EYQ0rkIuQGD0HP YPwfTpP6qhtczslZKJ1f42VkFgUqpdVsGExE9ds4QXsXZ2mYfWzgJHhYusR0SROd1OV5 gI09MzZi/vX8hAr3zRC8AZ39xkNbemZG9chkGYGCxz507SP0ogShlfoKeKpflUUCDYRS xq5Sv6mTCJ0wU96GiQolYgI4IQMhB5qfln8Nb2bkPwpwlf2c9gT6iEONXPV93RwLZ9EL 9RLbe870/YDzszyT4Is8PxaRthbtJsalj+kVO/dWjMfqQk54HeiHIHHZv98DHWnZ+//f DA== Received: from ppma11.dal12v.mail.ibm.com (db.9e.1632.ip4.static.sl-reverse.com [50.22.158.219]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 3wv8ekjn7a-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 15 Mar 2024 00:45:52 +0000 Received: from pps.filterd (ppma11.dal12v.mail.ibm.com [127.0.0.1]) by ppma11.dal12v.mail.ibm.com (8.17.1.19/8.17.1.19) with ESMTP id 42ENaevG018557; Fri, 15 Mar 2024 00:45:52 GMT Received: from smtprelay05.fra02v.mail.ibm.com ([9.218.2.225]) by ppma11.dal12v.mail.ibm.com (PPS) with ESMTPS id 3ws4t2g5vg-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 15 Mar 2024 00:45:52 +0000 Received: from smtpav04.fra02v.mail.ibm.com (smtpav04.fra02v.mail.ibm.com [10.20.54.103]) by smtprelay05.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 42F0jmFt44957964 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 15 Mar 2024 00:45:50 GMT Received: from smtpav04.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 4F3B72004B; Fri, 15 Mar 2024 00:45:48 +0000 (GMT) Received: from smtpav04.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 7162A20040; Fri, 15 Mar 2024 00:45:47 +0000 (GMT) Received: from ozlabs.au.ibm.com (unknown [9.192.253.14]) by smtpav04.fra02v.mail.ibm.com (Postfix) with ESMTP; Fri, 15 Mar 2024 00:45:47 +0000 (GMT) Received: from [10.61.2.138] (haven.au.ibm.com [9.192.254.114]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.au.ibm.com (Postfix) with ESMTPSA id EFEBD600F0; Fri, 15 Mar 2024 11:45:43 +1100 (AEDT) Message-ID: <56dc0520a97178f3136d8cd94d858fafe6da2119.camel@linux.ibm.com> Subject: Re: [PATCH v10 11/12] powerpc: mm: Use set_pte_at_unchecked() for early-boot / internal usages From: LTC IMAP To: Christophe Leroy , "linuxppc-dev@lists.ozlabs.org" Cc: "mpe@ellerman.id.au" , "linux-mm@kvack.org" , "linux-riscv@lists.infradead.org" , "linux-arm-kernel@lists.infradead.org" , "x86@kernel.org" Date: Fri, 15 Mar 2024 11:45:43 +1100 In-Reply-To: <42bf1fb2-8a8e-4ded-97a6-da2617e89f5b@csgroup.eu> References: <20240313042118.230397-1-rmclure@linux.ibm.com> <20240313042118.230397-12-rmclure@linux.ibm.com> <42bf1fb2-8a8e-4ded-97a6-da2617e89f5b@csgroup.eu> User-Agent: Evolution 3.50.4 (3.50.4-1.fc39) MIME-Version: 1.0 X-TM-AS-GCONF: 00 X-Proofpoint-GUID: YcZ4D1kQD3FDaLNp8bu1vpRS98zL7eit X-Proofpoint-ORIG-GUID: YcZ4D1kQD3FDaLNp8bu1vpRS98zL7eit X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.1011,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2024-03-14_13,2024-03-13_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 spamscore=0 adultscore=0 clxscore=1015 mlxlogscore=999 mlxscore=0 suspectscore=0 phishscore=0 malwarescore=0 priorityscore=1501 lowpriorityscore=0 impostorscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2403150000 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240314_174618_982318_26F7B939 X-CRM114-Status: GOOD ( 38.16 ) X-BeenThere: linux-riscv@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-riscv" Errors-To: linux-riscv-bounces+linux-riscv=archiver.kernel.org@lists.infradead.org T24gV2VkLCAyMDI0LTAzLTEzIGF0IDExOjMwICswMDAwLCBDaHJpc3RvcGhlIExlcm95IHdyb3Rl Ogo+IAo+IAo+IExlIDEzLzAzLzIwMjQgw6AgMDU6MjEsIFJvaGFuIE1jTHVyZSBhIMOpY3JpdMKg Ogo+ID4gSW4gdGhlIG5ldyBzZXRfcHRlcygpIEFQSSwgc2V0X3B0ZV9hdCgpIChhIHNwZWNpYWwg Y2FzZSBvZgo+ID4gc2V0X3B0ZXMoKSkKPiA+IGlzIGludGVuZGVkIHRvIGJlIGluc3RydW1lbnRl ZCBieSB0aGUgcGFnZSB0YWJsZSBjaGVjayBmYWNpbGl0eS4KPiA+IFRoZXJlCj4gPiBhcmUgaG93 ZXZlciBzZXZlcmFsIG90aGVyIHJvdXRpbmVzIHRoYXQgY29uc3RpdHV0ZSB0aGUgQVBJIGZvcgo+ ID4gc2V0dGluZwo+ID4gcGFnZSB0YWJsZSBlbnRyaWVzLCBpbmNsdWRpbmcgc2V0X3BtZF9hdCgp IGFtb25nIG90aGVycy4gU3VjaAo+ID4gcm91dGluZXMKPiA+IGFyZSB0aGVtc2VsdmVzIGltcGxl bWVudGVkIGluIHRlcm1zIG9mIHNldF9wdGVzX2F0KCkuCj4gPiAKPiA+IEEgZnV0dXJlIHBhdGNo IHByb3ZpZGluZyBzdXBwb3J0IGZvciBwYWdlIHRhYmxlIGNoZWNraW5nIG9uIHBvd2VycGMKPiA+ IG11c3QgdGFrZSBjYXJlIHRvIGF2b2lkIGR1cGxpY2F0ZSBjYWxscyB0bwo+ID4gcGFnZV90YWJs ZV9jaGVja19we3RlLG1kLHVkfV9zZXQoKS4gQWxsb3cgZm9yIGFzc2lnbm1lbnQgb2YgcHRlCj4g PiBlbnRyaWVzCj4gPiB3aXRob3V0IGluc3RydW1lbnRhdGlvbiB0aHJvdWdoIHRoZSBzZXRfcHRl X2F0X3VuY2hlY2tlZCgpIHJvdXRpbmUKPiA+IGludHJvZHVjZWQgaW4gdGhpcyBwYXRjaC4KPiA+ IAo+ID4gQ2F1c2UgQVBJLWZhY2luZyByb3V0aW5lcyB0aGF0IGNhbGwgc2V0X3B0ZV9hdCgpIHRv IGluc3RlYWQgY2FsbAo+ID4gc2V0X3B0ZV9hdF91bmNoZWNrZWQoKSwgd2hpY2ggd2lsbCByZW1h aW4gdW5pbnN0cnVtZW50ZWQgYnkgcGFnZQo+ID4gdGFibGUgY2hlY2suIHNldF9wdGVzKCkgaXMg aXRzZWxmIGltcGxlbWVudGVkIGJ5IGNhbGxzIHRvCj4gPiBfX3NldF9wdGVfYXQoKSwgc28gdGhp cyBlbGltaW5hdGVzIHJlZHVuZGFudCBjb2RlLgo+ID4gCj4gPiBBbHNvIHByZWZlciBzZXRfcHRl X2F0X3VuY2hlY2tlZCgpIGluIGVhcmx5LWJvb3QgdXNhZ2VzIHdoaWNoCj4gPiBzaG91bGQgbm90 IGJlCj4gPiBpbnN0cnVtZW50ZWQuCj4gPiAKPiA+IFNpZ25lZC1vZmYtYnk6IFJvaGFuIE1jTHVy ZSA8cm1jbHVyZUBsaW51eC5pYm0uY29tPgo+ID4gLS0tCj4gPiB2OTogTmV3IHBhdGNoCj4gPiB2 MTA6IGRvbid0IHJldXNlIF9fc2V0X3B0ZV9hdCgpLCBhcyB0aGF0IHdpbGwgbm90IGFwcGx5IGZp bHRlcnMuCj4gPiBJbnN0ZWFkCj4gPiB1c2UgbmV3IHNldF9wdGVfYXRfdW5jaGVja2VkKCkuCj4g Cj4gQXJlIGZpbHRlcnMgbmVlZGVkIGF0IGFsbCBpbiB0aG9zZSB1c2VjYXNlcyA/CgpJJ20ganVz dCByZXRhaW5pbmcgdGhlIG9yaWdpbmFsIHNlbWFudGljcyBvZiB0aGVzZSBjYWxscy4gSSB0aGlu awphbm90aGVyIHBhdGNoIGNhbiByZXBsYWNlIHRoaXMgY2FsbCB3aXRoIF9fc2V0X3B0ZV9hdCgp IGlmIGZpbHRlcnMgYXJlCmRlZW1lZCB1bm5lY2Vzc2FyeS4KCj4gCj4gPiAtLS0KPiA+IMKgIGFy Y2gvcG93ZXJwYy9pbmNsdWRlL2FzbS9wZ3RhYmxlLmjCoMKgwqDCoMKgwqAgfCAyICsrCj4gPiDC oCBhcmNoL3Bvd2VycGMvbW0vYm9vazNzNjQvaGFzaF9wZ3RhYmxlLmPCoCB8IDIgKy0KPiA+IMKg IGFyY2gvcG93ZXJwYy9tbS9ib29rM3M2NC9wZ3RhYmxlLmPCoMKgwqDCoMKgwqAgfCA2ICsrKy0t LQo+ID4gwqAgYXJjaC9wb3dlcnBjL21tL2Jvb2szczY0L3JhZGl4X3BndGFibGUuYyB8IDggKysr Ky0tLS0KPiA+IMKgIGFyY2gvcG93ZXJwYy9tbS9ub2hhc2gvYm9vazNlX3BndGFibGUuY8KgIHwg MiArLQo+ID4gwqAgYXJjaC9wb3dlcnBjL21tL3BndGFibGUuY8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCB8IDcgKysrKysrKwo+ID4gwqAgYXJjaC9wb3dlcnBjL21tL3BndGFibGVfMzIu Y8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB8IDIgKy0KPiA+IMKgIDcgZmlsZXMgY2hhbmdlZCwg MTkgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCj4gPiAKPiA+IGRpZmYgLS1naXQgYS9h cmNoL3Bvd2VycGMvaW5jbHVkZS9hc20vcGd0YWJsZS5oCj4gPiBiL2FyY2gvcG93ZXJwYy9pbmNs dWRlL2FzbS9wZ3RhYmxlLmgKPiA+IGluZGV4IDM3NDFhNjNmYjgyZS4uNmZmMWQ4Y2ZhMjE2IDEw MDY0NAo+ID4gLS0tIGEvYXJjaC9wb3dlcnBjL2luY2x1ZGUvYXNtL3BndGFibGUuaAo+ID4gKysr IGIvYXJjaC9wb3dlcnBjL2luY2x1ZGUvYXNtL3BndGFibGUuaAo+ID4gQEAgLTQ0LDYgKzQ0LDgg QEAgc3RydWN0IG1tX3N0cnVjdDsKPiA+IMKgIHZvaWQgc2V0X3B0ZXMoc3RydWN0IG1tX3N0cnVj dCAqbW0sIHVuc2lnbmVkIGxvbmcgYWRkciwgcHRlX3QKPiA+ICpwdGVwLAo+ID4gwqDCoAkJcHRl X3QgcHRlLCB1bnNpZ25lZCBpbnQgbnIpOwo+ID4gwqAgI2RlZmluZSBzZXRfcHRlcyBzZXRfcHRl cwo+ID4gK3ZvaWQgc2V0X3B0ZV9hdF91bmNoZWNrZWQoc3RydWN0IG1tX3N0cnVjdCAqbW0sIHVu c2lnbmVkIGxvbmcKPiA+IGFkZHIsCj4gPiArCQkJwqAgcHRlX3QgKnB0ZXAsIHB0ZV90IHB0ZSk7 Cj4gPiDCoCAjZGVmaW5lIHVwZGF0ZV9tbXVfY2FjaGUodm1hLCBhZGRyLCBwdGVwKSBcCj4gPiDC oMKgCXVwZGF0ZV9tbXVfY2FjaGVfcmFuZ2UoTlVMTCwgdm1hLCBhZGRyLCBwdGVwLCAxKQo+ID4g wqAgCj4gPiBkaWZmIC0tZ2l0IGEvYXJjaC9wb3dlcnBjL21tL2Jvb2szczY0L2hhc2hfcGd0YWJs ZS5jCj4gPiBiL2FyY2gvcG93ZXJwYy9tbS9ib29rM3M2NC9oYXNoX3BndGFibGUuYwo+ID4gaW5k ZXggOTg4OTQ4ZDY5YmMxLi44NzE0NzJmOTlhMDEgMTAwNjQ0Cj4gPiAtLS0gYS9hcmNoL3Bvd2Vy cGMvbW0vYm9vazNzNjQvaGFzaF9wZ3RhYmxlLmMKPiA+ICsrKyBiL2FyY2gvcG93ZXJwYy9tbS9i b29rM3M2NC9oYXNoX3BndGFibGUuYwo+ID4gQEAgLTE2NSw3ICsxNjUsNyBAQCBpbnQgaGFzaF9f bWFwX2tlcm5lbF9wYWdlKHVuc2lnbmVkIGxvbmcgZWEsCj4gPiB1bnNpZ25lZCBsb25nIHBhLCBw Z3Byb3RfdCBwcm90KQo+ID4gwqDCoAkJcHRlcCA9IHB0ZV9hbGxvY19rZXJuZWwocG1kcCwgZWEp Owo+ID4gwqDCoAkJaWYgKCFwdGVwKQo+ID4gwqDCoAkJCXJldHVybiAtRU5PTUVNOwo+ID4gLQkJ c2V0X3B0ZV9hdCgmaW5pdF9tbSwgZWEsIHB0ZXAsIHBmbl9wdGUocGEgPj4KPiA+IFBBR0VfU0hJ RlQsIHByb3QpKTsKPiA+ICsJCXNldF9wdGVfYXRfdW5jaGVja2VkKCZpbml0X21tLCBlYSwgcHRl cCwKPiA+IHBmbl9wdGUocGEgPj4gUEFHRV9TSElGVCwgcHJvdCkpOwo+ID4gwqDCoAl9IGVsc2Ug ewo+ID4gwqDCoAkJLyoKPiA+IMKgwqAJCSAqIElmIHRoZSBtbSBzdWJzeXN0ZW0gaXMgbm90IGZ1 bGx5IHVwLCB3ZSBjYW5ub3QKPiA+IGNyZWF0ZSBhCj4gPiBkaWZmIC0tZ2l0IGEvYXJjaC9wb3dl cnBjL21tL2Jvb2szczY0L3BndGFibGUuYwo+ID4gYi9hcmNoL3Bvd2VycGMvbW0vYm9vazNzNjQv cGd0YWJsZS5jCj4gPiBpbmRleCAzNDM4YWI3MmMzNDYuLjI1MDgyYWI2MDE4YiAxMDA2NDQKPiA+ IC0tLSBhL2FyY2gvcG93ZXJwYy9tbS9ib29rM3M2NC9wZ3RhYmxlLmMKPiA+ICsrKyBiL2FyY2gv cG93ZXJwYy9tbS9ib29rM3M2NC9wZ3RhYmxlLmMKPiA+IEBAIC0xMTYsNyArMTE2LDcgQEAgdm9p ZCBzZXRfcG1kX2F0KHN0cnVjdCBtbV9zdHJ1Y3QgKm1tLCB1bnNpZ25lZAo+ID4gbG9uZyBhZGRy LAo+ID4gwqDCoAlXQVJOX09OKCEocG1kX2xhcmdlKHBtZCkpKTsKPiA+IMKgICNlbmRpZgo+ID4g wqDCoAl0cmFjZV9odWdlcGFnZV9zZXRfcG1kKGFkZHIsIHBtZF92YWwocG1kKSk7Cj4gPiAtCXJl dHVybiBzZXRfcHRlX2F0KG1tLCBhZGRyLCBwbWRwX3B0ZXAocG1kcCksCj4gPiBwbWRfcHRlKHBt ZCkpOwo+ID4gKwlyZXR1cm4gc2V0X3B0ZV9hdF91bmNoZWNrZWQobW0sIGFkZHIsIHBtZHBfcHRl cChwbWRwKSwKPiA+IHBtZF9wdGUocG1kKSk7Cj4gPiDCoCB9Cj4gPiDCoCAKPiA+IMKgIHZvaWQg c2V0X3B1ZF9hdChzdHJ1Y3QgbW1fc3RydWN0ICptbSwgdW5zaWduZWQgbG9uZyBhZGRyLAo+ID4g QEAgLTEzMyw3ICsxMzMsNyBAQCB2b2lkIHNldF9wdWRfYXQoc3RydWN0IG1tX3N0cnVjdCAqbW0s IHVuc2lnbmVkCj4gPiBsb25nIGFkZHIsCj4gPiDCoMKgCVdBUk5fT04oIShwdWRfbGFyZ2UocHVk KSkpOwo+ID4gwqAgI2VuZGlmCj4gPiDCoMKgCXRyYWNlX2h1Z2VwYWdlX3NldF9wdWQoYWRkciwg cHVkX3ZhbChwdWQpKTsKPiA+IC0JcmV0dXJuIHNldF9wdGVfYXQobW0sIGFkZHIsIHB1ZHBfcHRl cChwdWRwKSwKPiA+IHB1ZF9wdGUocHVkKSk7Cj4gPiArCXJldHVybiBzZXRfcHRlX2F0X3VuY2hl Y2tlZChtbSwgYWRkciwgcHVkcF9wdGVwKHB1ZHApLAo+ID4gcHVkX3B0ZShwdWQpKTsKPiA+IMKg IH0KPiA+IMKgIAo+ID4gwqAgc3RhdGljIHZvaWQgZG9fc2VyaWFsaXplKHZvaWQgKmFyZykKPiA+ IEBAIC01MzksNyArNTM5LDcgQEAgdm9pZCBwdGVwX21vZGlmeV9wcm90X2NvbW1pdChzdHJ1Y3QK PiA+IHZtX2FyZWFfc3RydWN0ICp2bWEsIHVuc2lnbmVkIGxvbmcgYWRkciwKPiA+IMKgwqAJaWYg KHJhZGl4X2VuYWJsZWQoKSkKPiA+IMKgwqAJCXJldHVybiByYWRpeF9fcHRlcF9tb2RpZnlfcHJv dF9jb21taXQodm1hLCBhZGRyLAo+ID4gwqDCoAkJCQkJCcKgwqDCoMKgwqAgcHRlcCwKPiA+IG9s ZF9wdGUsIHB0ZSk7Cj4gPiAtCXNldF9wdGVfYXQodm1hLT52bV9tbSwgYWRkciwgcHRlcCwgcHRl KTsKPiA+ICsJc2V0X3B0ZV9hdF91bmNoZWNrZWQodm1hLT52bV9tbSwgYWRkciwgcHRlcCwgcHRl KTsKPiA+IMKgIH0KPiA+IMKgIAo+ID4gwqAgI2lmZGVmIENPTkZJR19UUkFOU1BBUkVOVF9IVUdF UEFHRQo+ID4gZGlmZiAtLWdpdCBhL2FyY2gvcG93ZXJwYy9tbS9ib29rM3M2NC9yYWRpeF9wZ3Rh YmxlLmMKPiA+IGIvYXJjaC9wb3dlcnBjL21tL2Jvb2szczY0L3JhZGl4X3BndGFibGUuYwo+ID4g aW5kZXggNDZmYTQ2Y2U2NTI2Li5jNjYxZTQyYmIyZjEgMTAwNjQ0Cj4gPiAtLS0gYS9hcmNoL3Bv d2VycGMvbW0vYm9vazNzNjQvcmFkaXhfcGd0YWJsZS5jCj4gPiArKysgYi9hcmNoL3Bvd2VycGMv bW0vYm9vazNzNjQvcmFkaXhfcGd0YWJsZS5jCj4gPiBAQCAtMTA5LDcgKzEwOSw3IEBAIHN0YXRp YyBpbnQgZWFybHlfbWFwX2tlcm5lbF9wYWdlKHVuc2lnbmVkIGxvbmcKPiA+IGVhLCB1bnNpZ25l ZCBsb25nIHBhLAo+ID4gwqDCoAlwdGVwID0gcHRlX29mZnNldF9rZXJuZWwocG1kcCwgZWEpOwo+ ID4gwqAgCj4gPiDCoCBzZXRfdGhlX3B0ZToKPiA+IC0Jc2V0X3B0ZV9hdCgmaW5pdF9tbSwgZWEs IHB0ZXAsIHBmbl9wdGUocGZuLCBmbGFncykpOwo+ID4gKwlzZXRfcHRlX2F0X3VuY2hlY2tlZCgm aW5pdF9tbSwgZWEsIHB0ZXAsIHBmbl9wdGUocGZuLAo+ID4gZmxhZ3MpKTsKPiA+IMKgwqAJYXNt IHZvbGF0aWxlKCJwdGVzeW5jIjogOiA6Im1lbW9yeSIpOwo+ID4gwqDCoAlyZXR1cm4gMDsKPiA+ IMKgIH0KPiA+IEBAIC0xNTIyLDcgKzE1MjIsNyBAQCB2b2lkIHJhZGl4X19wdGVwX21vZGlmeV9w cm90X2NvbW1pdChzdHJ1Y3QKPiA+IHZtX2FyZWFfc3RydWN0ICp2bWEsCj4gPiDCoMKgCcKgwqDC oCAoYXRvbWljX3JlYWQoJm1tLT5jb250ZXh0LmNvcHJvcykgPiAwKSkKPiA+IMKgwqAJCXJhZGl4 X19mbHVzaF90bGJfcGFnZSh2bWEsIGFkZHIpOwo+ID4gwqAgCj4gPiAtCXNldF9wdGVfYXQobW0s IGFkZHIsIHB0ZXAsIHB0ZSk7Cj4gPiArCXNldF9wdGVfYXRfdW5jaGVja2VkKG1tLCBhZGRyLCBw dGVwLCBwdGUpOwo+ID4gwqAgfQo+ID4gwqAgCj4gPiDCoCBpbnQgcHVkX3NldF9odWdlKHB1ZF90 ICpwdWQsIHBoeXNfYWRkcl90IGFkZHIsIHBncHJvdF90IHByb3QpCj4gPiBAQCAtMTUzMyw3ICsx NTMzLDcgQEAgaW50IHB1ZF9zZXRfaHVnZShwdWRfdCAqcHVkLCBwaHlzX2FkZHJfdAo+ID4gYWRk ciwgcGdwcm90X3QgcHJvdCkKPiA+IMKgwqAJaWYgKCFyYWRpeF9lbmFibGVkKCkpCj4gPiDCoMKg CQlyZXR1cm4gMDsKPiA+IMKgIAo+ID4gLQlzZXRfcHRlX2F0KCZpbml0X21tLCAwIC8qIHJhZGl4 IHVudXNlZCAqLywgcHRlcCwgbmV3X3B1ZCk7Cj4gPiArCXNldF9wdGVfYXRfdW5jaGVja2VkKCZp bml0X21tLCAwIC8qIHJhZGl4IHVudXNlZCAqLywgcHRlcCwKPiA+IG5ld19wdWQpOwo+ID4gwqAg Cj4gPiDCoMKgCXJldHVybiAxOwo+ID4gwqAgfQo+ID4gQEAgLTE1ODAsNyArMTU4MCw3IEBAIGlu dCBwbWRfc2V0X2h1Z2UocG1kX3QgKnBtZCwgcGh5c19hZGRyX3QKPiA+IGFkZHIsIHBncHJvdF90 IHByb3QpCj4gPiDCoMKgCWlmICghcmFkaXhfZW5hYmxlZCgpKQo+ID4gwqDCoAkJcmV0dXJuIDA7 Cj4gPiDCoCAKPiA+IC0Jc2V0X3B0ZV9hdCgmaW5pdF9tbSwgMCAvKiByYWRpeCB1bnVzZWQgKi8s IHB0ZXAsIG5ld19wbWQpOwo+ID4gKwlzZXRfcHRlX2F0X3VuY2hlY2tlZCgmaW5pdF9tbSwgMCAv KiByYWRpeCB1bnVzZWQgKi8sIHB0ZXAsCj4gPiBuZXdfcG1kKTsKPiA+IMKgIAo+ID4gwqDCoAly ZXR1cm4gMTsKPiA+IMKgIH0KPiA+IGRpZmYgLS1naXQgYS9hcmNoL3Bvd2VycGMvbW0vbm9oYXNo L2Jvb2szZV9wZ3RhYmxlLmMKPiA+IGIvYXJjaC9wb3dlcnBjL21tL25vaGFzaC9ib29rM2VfcGd0 YWJsZS5jCj4gPiBpbmRleCAxYzVlNGVjYmViZWIuLjEwZDQ4N2IyYjk5MSAxMDA2NDQKPiA+IC0t LSBhL2FyY2gvcG93ZXJwYy9tbS9ub2hhc2gvYm9vazNlX3BndGFibGUuYwo+ID4gKysrIGIvYXJj aC9wb3dlcnBjL21tL25vaGFzaC9ib29rM2VfcGd0YWJsZS5jCj4gPiBAQCAtMTExLDcgKzExMSw3 IEBAIGludCBfX3JlZiBtYXBfa2VybmVsX3BhZ2UodW5zaWduZWQgbG9uZyBlYSwKPiA+IHBoeXNf YWRkcl90IHBhLCBwZ3Byb3RfdCBwcm90KQo+ID4gwqDCoAkJfQo+ID4gwqDCoAkJcHRlcCA9IHB0 ZV9vZmZzZXRfa2VybmVsKHBtZHAsIGVhKTsKPiA+IMKgwqAJfQo+ID4gLQlzZXRfcHRlX2F0KCZp bml0X21tLCBlYSwgcHRlcCwgcGZuX3B0ZShwYSA+PiBQQUdFX1NISUZULAo+ID4gcHJvdCkpOwo+ ID4gKwlzZXRfcHRlX2F0X3VuY2hlY2tlZCgmaW5pdF9tbSwgZWEsIHB0ZXAsIHBmbl9wdGUocGEg Pj4KPiA+IFBBR0VfU0hJRlQsIHByb3QpKTsKPiA+IMKgIAo+ID4gwqDCoAlzbXBfd21iKCk7Cj4g PiDCoMKgCXJldHVybiAwOwo+ID4gZGlmZiAtLWdpdCBhL2FyY2gvcG93ZXJwYy9tbS9wZ3RhYmxl LmMgYi9hcmNoL3Bvd2VycGMvbW0vcGd0YWJsZS5jCj4gPiBpbmRleCBlOGUwMjg5ZDdhYjAuLjM1 MjY3OWNmMjY4NCAxMDA2NDQKPiA+IC0tLSBhL2FyY2gvcG93ZXJwYy9tbS9wZ3RhYmxlLmMKPiA+ ICsrKyBiL2FyY2gvcG93ZXJwYy9tbS9wZ3RhYmxlLmMKPiA+IEBAIC0yMjcsNiArMjI3LDEzIEBA IHZvaWQgc2V0X3B0ZXMoc3RydWN0IG1tX3N0cnVjdCAqbW0sIHVuc2lnbmVkCj4gPiBsb25nIGFk ZHIsIHB0ZV90ICpwdGVwLAo+ID4gwqDCoAl9Cj4gPiDCoCB9Cj4gPiDCoCAKPiA+ICt2b2lkIHNl dF9wdGVfYXRfdW5jaGVja2VkKHN0cnVjdCBtbV9zdHJ1Y3QgKm1tLCB1bnNpZ25lZCBsb25nCj4g PiBhZGRyLAo+ID4gKwkJCcKgIHB0ZV90ICpwdGVwLCBwdGVfdCBwdGUpCj4gPiArewo+IAo+IE5v IG5lZWQgb2YgdGhlCj4gCj4gVk1fV0FSTl9PTihwdGVfaHdfdmFsaWQoKnB0ZXApICYmICFwdGVf cHJvdG5vbmUoKnB0ZXApKTsKPiAKPiB3aGljaCBpcyBpbiBzZXRfcHRlcygpID8KCkdvb2Qgc3Bv dCwgSSdsbCBpbmNsdWRlIHRoYXQgY2hlY2sgaW4gdGhpcyByb3V0aW5lLgoKPiAKPiA+ICsJcHRl ID0gc2V0X3B0ZV9maWx0ZXIocHRlLCBhZGRyKTsKPiA+ICsJX19zZXRfcHRlX2F0KG1tLCBhZGRy LCBwdGVwLCBwdGUsIDApOwo+ID4gK30KPiA+ICsKPiA+IMKgIHZvaWQgdW5tYXBfa2VybmVsX3Bh Z2UodW5zaWduZWQgbG9uZyB2YSkKPiA+IMKgIHsKPiA+IMKgwqAJcG1kX3QgKnBtZHAgPSBwbWRf b2ZmX2sodmEpOwo+ID4gZGlmZiAtLWdpdCBhL2FyY2gvcG93ZXJwYy9tbS9wZ3RhYmxlXzMyLmMK PiA+IGIvYXJjaC9wb3dlcnBjL21tL3BndGFibGVfMzIuYwo+ID4gaW5kZXggNGJlOTdiNGE0NGY5 Li5hNWEyNmZhZjkxZWMgMTAwNjQ0Cj4gPiAtLS0gYS9hcmNoL3Bvd2VycGMvbW0vcGd0YWJsZV8z Mi5jCj4gPiArKysgYi9hcmNoL3Bvd2VycGMvbW0vcGd0YWJsZV8zMi5jCj4gPiBAQCAtODksNyAr ODksNyBAQCBpbnQgX19yZWYgbWFwX2tlcm5lbF9wYWdlKHVuc2lnbmVkIGxvbmcgdmEsCj4gPiBw aHlzX2FkZHJfdCBwYSwgcGdwcm90X3QgcHJvdCkKPiA+IMKgwqAJCSAqIGhhc2ggdGFibGUKPiA+ IMKgwqAJCSAqLwo+ID4gwqDCoAkJQlVHX09OKChwdGVfcHJlc2VudCgqcGcpIHwgcHRlX2hhc2hw dGUoKnBnKSkgJiYKPiA+IHBncHJvdF92YWwocHJvdCkpOwo+ID4gLQkJc2V0X3B0ZV9hdCgmaW5p dF9tbSwgdmEsIHBnLCBwZm5fcHRlKHBhID4+Cj4gPiBQQUdFX1NISUZULCBwcm90KSk7Cj4gPiAr CQlzZXRfcHRlX2F0X3VuY2hlY2tlZCgmaW5pdF9tbSwgdmEsIHBnLCBwZm5fcHRlKHBhCj4gPiA+ PiBQQUdFX1NISUZULCBwcm90KSk7Cj4gPiDCoMKgCX0KPiA+IMKgwqAJc21wX3dtYigpOwo+ID4g wqDCoAlyZXR1cm4gZXJyOwoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fCmxpbnV4LXJpc2N2IG1haWxpbmcgbGlzdApsaW51eC1yaXNjdkBsaXN0cy5pbmZy YWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGlu dXgtcmlzY3YK