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 E9F13ECAAD3 for ; Fri, 9 Sep 2022 10:36:03 +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:In-Reply-To:From:References:Cc:To: Subject:MIME-Version:Date:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=6nUonLU1a434cxDJcWdoWOZ/Z90ptRvjTam9UD8lKF4=; b=vVkNipk/X8WPUX jApas9fa7TjbU2NuyR7Jzkao/PAxfh5tcFw/PI/uMx+f8BIw4epEUwXez//U+BklcUQAuHCYuCKFV kRW96yGw1JsAlDZRCdzSNXc4BfFFU38ig3ce2vx1qryaK/xpOxVklI1ZiGFsOGcDWPtjV6v0vmJWz 4HKwdb5eA6j4KeesFmxcUInoybtKydmPcqhaBturRcp4wg23RTsWIIDXr1Y+J353vDsXsHMDxYgBo rk8j/PkgGgp+K8tU5lYXcn/9rbIVv3zWONdA6niGjrjey6uonCpSNSaB9vofjwnXaPB0HhdvwVxp+ Bhxq3i8bnJZNovcltN/Q==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1oWbLX-00FOhL-0g; Fri, 09 Sep 2022 10:34:51 +0000 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5] helo=mx0a-001b2d01.pphosted.com) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1oWbLP-00FOee-Vl for linux-arm-kernel@lists.infradead.org; Fri, 09 Sep 2022 10:34:48 +0000 Received: from pps.filterd (m0098420.ppops.net [127.0.0.1]) by mx0b-001b2d01.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 2898bqmN026353; Fri, 9 Sep 2022 10:33:51 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=message-id : date : mime-version : subject : to : cc : references : from : in-reply-to : content-type : content-transfer-encoding; s=pp1; bh=77u8zhGSKn9z2dZ2Z5tgJalUw9FbQziYzMAthS7y9To=; b=jvQr2bg1VeYB9pIqaVzoA0VrLiu+BUzflzT1bzQdfpudFu1qulBb5601RnQn62eccGUI AucZxlam3MySOMg4O+TPr7vpZ/u262fvhGo8XON22Rbz9kGoAHiMM2e8ufafrcpW4CY7 iR7iPOsUDvacvQ1JHkaocW32jzh/aO75lK98C8NX3y0ePc3P3p7iHYGG6MmWXARDluuj WYdOGS5cVNEl4PivQN5WmDfQ65dRgX9SQc25bAZYDjI5xTZ9MF5l70+5szKbxyok2Byk t0GcyWQhhmNJn2inK8znsObIdU3fwL4mr9XtNB7vdYeIXeBPRWKHq13U1qRkhdIvc7WB +Q== Received: from pps.reinject (localhost [127.0.0.1]) by mx0b-001b2d01.pphosted.com (PPS) with ESMTPS id 3jg1ss3u4h-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 09 Sep 2022 10:33:51 +0000 Received: from m0098420.ppops.net (m0098420.ppops.net [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 2898mRBx008692; Fri, 9 Sep 2022 10:33:50 GMT Received: from ppma04fra.de.ibm.com (6a.4a.5195.ip4.static.sl-reverse.com [149.81.74.106]) by mx0b-001b2d01.pphosted.com (PPS) with ESMTPS id 3jg1ss3u3t-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 09 Sep 2022 10:33:50 +0000 Received: from pps.filterd (ppma04fra.de.ibm.com [127.0.0.1]) by ppma04fra.de.ibm.com (8.16.1.2/8.16.1.2) with SMTP id 289AL6vR016923; Fri, 9 Sep 2022 10:33:48 GMT Received: from b06cxnps3074.portsmouth.uk.ibm.com (d06relay09.portsmouth.uk.ibm.com [9.149.109.194]) by ppma04fra.de.ibm.com with ESMTP id 3jbxj8nt0w-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Fri, 09 Sep 2022 10:33:48 +0000 Received: from d06av24.portsmouth.uk.ibm.com (mk.ibm.com [9.149.105.60]) by b06cxnps3074.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 289AXjNx40042918 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Fri, 9 Sep 2022 10:33:45 GMT Received: from d06av24.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id BDD9A4203F; Fri, 9 Sep 2022 10:33:45 +0000 (GMT) Received: from d06av24.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id A51FA42042; Fri, 9 Sep 2022 10:33:44 +0000 (GMT) Received: from [9.145.83.17] (unknown [9.145.83.17]) by d06av24.portsmouth.uk.ibm.com (Postfix) with ESMTP; Fri, 9 Sep 2022 10:33:44 +0000 (GMT) Message-ID: <667ad41f-21af-ccc8-be7b-7e6c49930195@linux.ibm.com> Date: Fri, 9 Sep 2022 12:33:44 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.2.1 Subject: Re: [RFC PATCH RESEND 13/28] mm: conditionally mark VMA as locked in free_pgtables and unmap_page_range Content-Language: fr To: Suren Baghdasaryan , akpm@linux-foundation.org Cc: michel@lespinasse.org, jglisse@google.com, mhocko@suse.com, vbabka@suse.cz, hannes@cmpxchg.org, mgorman@suse.de, dave@stgolabs.net, willy@infradead.org, liam.howlett@oracle.com, peterz@infradead.org, laurent.dufour@fr.ibm.com, paulmck@kernel.org, luto@kernel.org, songliubraving@fb.com, peterx@redhat.com, david@redhat.com, dhowells@redhat.com, hughd@google.com, bigeasy@linutronix.de, kent.overstreet@linux.dev, rientjes@google.com, axelrasmussen@google.com, joelaf@google.com, minchan@google.com, kernel-team@android.com, linux-mm@kvack.org, linux-arm-kernel@lists.infradead.org, linuxppc-dev@lists.ozlabs.org, x86@kernel.org, linux-kernel@vger.kernel.org References: <20220901173516.702122-1-surenb@google.com> <20220901173516.702122-14-surenb@google.com> From: Laurent Dufour In-Reply-To: <20220901173516.702122-14-surenb@google.com> X-TM-AS-GCONF: 00 X-Proofpoint-ORIG-GUID: a0_D0Ua9_0dSm3dji7cOMpXd3OWqA5o4 X-Proofpoint-GUID: ukvTETKNM_PQpDOSGZRiCe9WfRJSdK3m X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.895,Hydra:6.0.528,FMLib:17.11.122.1 definitions=2022-09-09_05,2022-09-09_01,2022-06-22_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 lowpriorityscore=0 malwarescore=0 bulkscore=0 spamscore=0 priorityscore=1501 phishscore=0 clxscore=1015 mlxlogscore=999 impostorscore=0 mlxscore=0 adultscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2207270000 definitions=main-2209090035 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220909_033444_175064_3D081BCF X-CRM114-Status: GOOD ( 37.30 ) X-BeenThere: linux-arm-kernel@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-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org TGUgMDEvMDkvMjAyMiDDoCAxOTozNSwgU3VyZW4gQmFnaGRhc2FyeWFuIGEgw6ljcml0wqA6Cj4g ZnJlZV9wZ3RhYmxlcyBhbmQgdW5tYXBfcGFnZV9yYW5nZSBmdW5jdGlvbnMgY2FuIGJlIGNhbGxl ZCB3aXRoIG1tYXBfbG9jawo+IGhlbGQgZm9yIHdyaXRlIChlLmcuIGluIG1tYXBfcmVnaW9uKSwg aGVsZCBmb3IgcmVhZCAoZS5nIGluCj4gbWFkdmlzZV9wYWdlb3V0KSBvciBub3QgaGVsZCBhdCBh bGwgKGUuZyBpbiBtYWR2aXNlX3JlbW92ZSBtaWdodAo+IGRyb3AgbW1hcF9sb2NrIGJlZm9yZSBj YWxsaW5nIHZmc19mYWxsb2NhdGUsIHdoaWNoIGVuZHMgdXAgY2FsbGluZwo+IHVubWFwX3BhZ2Vf cmFuZ2UpLgo+IFByb3ZpZGUgZnJlZV9wZ3RhYmxlcyBhbmQgdW5tYXBfcGFnZV9yYW5nZSB3aXRo IGFkZGl0aW9uYWwgYXJndW1lbnQKPiBpbmRpY2F0aW5nIHdoZXRoZXIgdG8gbWFyayB0aGUgVk1B IGFzIGxvY2tlZCBvciBub3QgYmFzZWQgb24gdGhlIHVzYWdlLgo+IFRoZSBwYXJhbWV0ZXIgaXMg c2V0IGJhc2VkIG9uIHdoZXRoZXIgbW1hcF9sb2NrIGlzIGhlbGQgaW4gd3JpdGUgbW9kZQo+IGR1 cmluZyB0aGUgY2FsbC4gVGhpcyBlbnN1cmVzIG5vIGNoYW5nZSBpbiBiZWhhdmlvciBiZXR3ZWVu IG1tYXBfbG9jawo+IGFuZCBwZXItdm1hIGxvY2tzLgo+IAo+IFNpZ25lZC1vZmYtYnk6IFN1cmVu IEJhZ2hkYXNhcnlhbiA8c3VyZW5iQGdvb2dsZS5jb20+Cj4gLS0tCj4gIGluY2x1ZGUvbGludXgv bW0uaCB8ICAyICstCj4gIG1tL2ludGVybmFsLmggICAgICB8ICA0ICsrLS0KPiAgbW0vbWVtb3J5 LmMgICAgICAgIHwgMzIgKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0KPiAgbW0vbW1h cC5jICAgICAgICAgIHwgMTcgKysrKysrKysrLS0tLS0tLS0KPiAgbW0vb29tX2tpbGwuYyAgICAg IHwgIDMgKystCj4gIDUgZmlsZXMgY2hhbmdlZCwgMzUgaW5zZXJ0aW9ucygrKSwgMjMgZGVsZXRp b25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgvbW0uaCBiL2luY2x1ZGUvbGlu dXgvbW0uaAo+IGluZGV4IDQ3NmJmOTM2YzVmMC4uZGM3MmJlOTIzZTViIDEwMDY0NAo+IC0tLSBh L2luY2x1ZGUvbGludXgvbW0uaAo+ICsrKyBiL2luY2x1ZGUvbGludXgvbW0uaAo+IEBAIC0xODc0 LDcgKzE4NzQsNyBAQCB2b2lkIHphcF92bWFfcHRlcyhzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZt YSwgdW5zaWduZWQgbG9uZyBhZGRyZXNzLAo+ICB2b2lkIHphcF9wYWdlX3JhbmdlKHN0cnVjdCB2 bV9hcmVhX3N0cnVjdCAqdm1hLCB1bnNpZ25lZCBsb25nIGFkZHJlc3MsCj4gIAkJICAgIHVuc2ln bmVkIGxvbmcgc2l6ZSk7Cj4gIHZvaWQgdW5tYXBfdm1hcyhzdHJ1Y3QgbW11X2dhdGhlciAqdGxi LCBzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnN0YXJ0X3ZtYSwKPiAtCQl1bnNpZ25lZCBsb25nIHN0 YXJ0LCB1bnNpZ25lZCBsb25nIGVuZCk7Cj4gKwkJdW5zaWduZWQgbG9uZyBzdGFydCwgdW5zaWdu ZWQgbG9uZyBlbmQsIGJvb2wgbG9ja192bWEpOwo+ICAKPiAgc3RydWN0IG1tdV9ub3RpZmllcl9y YW5nZTsKPiAgCj4gZGlmZiAtLWdpdCBhL21tL2ludGVybmFsLmggYi9tbS9pbnRlcm5hbC5oCj4g aW5kZXggNzg1NDA5ODA1ZWQ3Li5lNmMwZjk5OWUwY2IgMTAwNjQ0Cj4gLS0tIGEvbW0vaW50ZXJu YWwuaAo+ICsrKyBiL21tL2ludGVybmFsLmgKPiBAQCAtODUsMTQgKzg1LDE0IEBAIGJvb2wgX19m b2xpb19lbmRfd3JpdGViYWNrKHN0cnVjdCBmb2xpbyAqZm9saW8pOwo+ICB2b2lkIGRlYWN0aXZh dGVfZmlsZV9mb2xpbyhzdHJ1Y3QgZm9saW8gKmZvbGlvKTsKPiAgCj4gIHZvaWQgZnJlZV9wZ3Rh YmxlcyhzdHJ1Y3QgbW11X2dhdGhlciAqdGxiLCBzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnN0YXJ0 X3ZtYSwKPiAtCQl1bnNpZ25lZCBsb25nIGZsb29yLCB1bnNpZ25lZCBsb25nIGNlaWxpbmcpOwo+ ICsJCXVuc2lnbmVkIGxvbmcgZmxvb3IsIHVuc2lnbmVkIGxvbmcgY2VpbGluZywgYm9vbCBsb2Nr X3ZtYSk7Cj4gIHZvaWQgcG1kX2luc3RhbGwoc3RydWN0IG1tX3N0cnVjdCAqbW0sIHBtZF90ICpw bWQsIHBndGFibGVfdCAqcHRlKTsKPiAgCj4gIHN0cnVjdCB6YXBfZGV0YWlsczsKPiAgdm9pZCB1 bm1hcF9wYWdlX3JhbmdlKHN0cnVjdCBtbXVfZ2F0aGVyICp0bGIsCj4gIAkJCSAgICAgc3RydWN0 IHZtX2FyZWFfc3RydWN0ICp2bWEsCj4gIAkJCSAgICAgdW5zaWduZWQgbG9uZyBhZGRyLCB1bnNp Z25lZCBsb25nIGVuZCwKPiAtCQkJICAgICBzdHJ1Y3QgemFwX2RldGFpbHMgKmRldGFpbHMpOwo+ ICsJCQkgICAgIHN0cnVjdCB6YXBfZGV0YWlscyAqZGV0YWlscywgYm9vbCBsb2NrX3ZtYSk7Cj4g IAo+ICB2b2lkIHBhZ2VfY2FjaGVfcmFfb3JkZXIoc3RydWN0IHJlYWRhaGVhZF9jb250cm9sICos IHN0cnVjdCBmaWxlX3JhX3N0YXRlICosCj4gIAkJdW5zaWduZWQgaW50IG9yZGVyKTsKPiBkaWZm IC0tZ2l0IGEvbW0vbWVtb3J5LmMgYi9tbS9tZW1vcnkuYwo+IGluZGV4IDRiYTczZjVhYThiYi4u OWFjOTk0NGU4YzYyIDEwMDY0NAo+IC0tLSBhL21tL21lbW9yeS5jCj4gKysrIGIvbW0vbWVtb3J5 LmMKPiBAQCAtNDAzLDcgKzQwMyw3IEBAIHZvaWQgZnJlZV9wZ2RfcmFuZ2Uoc3RydWN0IG1tdV9n YXRoZXIgKnRsYiwKPiAgfQo+ICAKPiAgdm9pZCBmcmVlX3BndGFibGVzKHN0cnVjdCBtbXVfZ2F0 aGVyICp0bGIsIHN0cnVjdCB2bV9hcmVhX3N0cnVjdCAqdm1hLAo+IC0JCXVuc2lnbmVkIGxvbmcg Zmxvb3IsIHVuc2lnbmVkIGxvbmcgY2VpbGluZykKPiArCQl1bnNpZ25lZCBsb25nIGZsb29yLCB1 bnNpZ25lZCBsb25nIGNlaWxpbmcsIGJvb2wgbG9ja192bWEpCj4gIHsKPiAgCXdoaWxlICh2bWEp IHsKPiAgCQlzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKm5leHQgPSB2bWEtPnZtX25leHQ7Cj4gQEAg LTQxMyw2ICs0MTMsOCBAQCB2b2lkIGZyZWVfcGd0YWJsZXMoc3RydWN0IG1tdV9nYXRoZXIgKnRs Yiwgc3RydWN0IHZtX2FyZWFfc3RydWN0ICp2bWEsCj4gIAkJICogSGlkZSB2bWEgZnJvbSBybWFw IGFuZCB0cnVuY2F0ZV9wYWdlY2FjaGUgYmVmb3JlIGZyZWVpbmcKPiAgCQkgKiBwZ3RhYmxlcwo+ ICAJCSAqLwo+ICsJCWlmIChsb2NrX3ZtYSkKPiArCQkJdm1hX21hcmtfbG9ja2VkKHZtYSk7Cj4g IAkJdW5saW5rX2Fub25fdm1hcyh2bWEpOwo+ICAJCXVubGlua19maWxlX3ZtYSh2bWEpOwo+ICAK PiBAQCAtNDI3LDYgKzQyOSw4IEBAIHZvaWQgZnJlZV9wZ3RhYmxlcyhzdHJ1Y3QgbW11X2dhdGhl ciAqdGxiLCBzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZtYSwKPiAgCQkJICAgICAgICYmICFpc192 bV9odWdldGxiX3BhZ2UobmV4dCkpIHsKPiAgCQkJCXZtYSA9IG5leHQ7Cj4gIAkJCQluZXh0ID0g dm1hLT52bV9uZXh0Owo+ICsJCQkJaWYgKGxvY2tfdm1hKQo+ICsJCQkJCXZtYV9tYXJrX2xvY2tl ZCh2bWEpOwo+ICAJCQkJdW5saW5rX2Fub25fdm1hcyh2bWEpOwo+ICAJCQkJdW5saW5rX2ZpbGVf dm1hKHZtYSk7Cj4gIAkJCX0KPiBAQCAtMTYzMSwxMiArMTYzNSwxNiBAQCBzdGF0aWMgaW5saW5l IHVuc2lnbmVkIGxvbmcgemFwX3A0ZF9yYW5nZShzdHJ1Y3QgbW11X2dhdGhlciAqdGxiLAo+ICB2 b2lkIHVubWFwX3BhZ2VfcmFuZ2Uoc3RydWN0IG1tdV9nYXRoZXIgKnRsYiwKPiAgCQkJICAgICBz dHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZtYSwKPiAgCQkJICAgICB1bnNpZ25lZCBsb25nIGFkZHIs IHVuc2lnbmVkIGxvbmcgZW5kLAo+IC0JCQkgICAgIHN0cnVjdCB6YXBfZGV0YWlscyAqZGV0YWls cykKPiArCQkJICAgICBzdHJ1Y3QgemFwX2RldGFpbHMgKmRldGFpbHMsCj4gKwkJCSAgICAgYm9v bCBsb2NrX3ZtYSkKPiAgewo+ICAJcGdkX3QgKnBnZDsKPiAgCXVuc2lnbmVkIGxvbmcgbmV4dDsK PiAgCj4gIAlCVUdfT04oYWRkciA+PSBlbmQpOwo+ICsJaWYgKGxvY2tfdm1hKQo+ICsJCXZtYV9t YXJrX2xvY2tlZCh2bWEpOwoKSSdtIHdvbmRlcmluZyBpZiB0aGF0IGlzIHJlYWxseSBuZWVkZWQg aGVyZS4KVGhlIGZvbGxvd2luZyBwcm9jZXNzaW5nIGlzIG9ubHkgZGVhbGluZyB3aXRoIHRoZSBw YWdlIHRhYmxlIGVudHJpZXMuClRvZGF5LCBpZiB0aGF0IGNvdWxkIGJlIGNhbGxlZCB3aXRob3V0 IGhvbGRpbmcgdGhlIG1tYXBfbG9jaywgdGhhdCBzaG91bGQKYmUgc2FmZSB0byBub3QgbWFyayB0 aGUgVk1BIGxvY2tlZCAoaW5kZWVkIHRoZSBWTUEgaXRzZWxmIGlzIG5vdCBpbXBhY3RlZCkuCgpU aHVzIHVubWFwX3NpbmdsZV92bWEoKSBiZWxvdyBubyBuZWVkIHRvIGJlIHRvdWNoZWQsIGFuZCBp dHMgY2FsbGVycy4KCkluIHRoZSBjYXNlIGEgbG9ja2luZyBpcyByZXF1aXJlZCwgSSB0aGluayB0 aGVyZSBpcyBhIHJlYWwgcG90ZW50aWFsIGlzc3VlCmluIHRoZSBjdXJyZW50IGtlcm5lbC4KCj4g Kwo+ICAJdGxiX3N0YXJ0X3ZtYSh0bGIsIHZtYSk7Cj4gIAlwZ2QgPSBwZ2Rfb2Zmc2V0KHZtYS0+ dm1fbW0sIGFkZHIpOwo+ICAJZG8gewo+IEBAIC0xNjUyLDcgKzE2NjAsNyBAQCB2b2lkIHVubWFw X3BhZ2VfcmFuZ2Uoc3RydWN0IG1tdV9nYXRoZXIgKnRsYiwKPiAgc3RhdGljIHZvaWQgdW5tYXBf c2luZ2xlX3ZtYShzdHJ1Y3QgbW11X2dhdGhlciAqdGxiLAo+ICAJCXN0cnVjdCB2bV9hcmVhX3N0 cnVjdCAqdm1hLCB1bnNpZ25lZCBsb25nIHN0YXJ0X2FkZHIsCj4gIAkJdW5zaWduZWQgbG9uZyBl bmRfYWRkciwKPiAtCQlzdHJ1Y3QgemFwX2RldGFpbHMgKmRldGFpbHMpCj4gKwkJc3RydWN0IHph cF9kZXRhaWxzICpkZXRhaWxzLCBib29sIGxvY2tfdm1hKQo+ICB7Cj4gIAl1bnNpZ25lZCBsb25n IHN0YXJ0ID0gbWF4KHZtYS0+dm1fc3RhcnQsIHN0YXJ0X2FkZHIpOwo+ICAJdW5zaWduZWQgbG9u ZyBlbmQ7Cj4gQEAgLTE2OTEsNyArMTY5OSw3IEBAIHN0YXRpYyB2b2lkIHVubWFwX3NpbmdsZV92 bWEoc3RydWN0IG1tdV9nYXRoZXIgKnRsYiwKPiAgCQkJCWlfbW1hcF91bmxvY2tfd3JpdGUodm1h LT52bV9maWxlLT5mX21hcHBpbmcpOwo+ICAJCQl9Cj4gIAkJfSBlbHNlCj4gLQkJCXVubWFwX3Bh Z2VfcmFuZ2UodGxiLCB2bWEsIHN0YXJ0LCBlbmQsIGRldGFpbHMpOwo+ICsJCQl1bm1hcF9wYWdl X3JhbmdlKHRsYiwgdm1hLCBzdGFydCwgZW5kLCBkZXRhaWxzLCBsb2NrX3ZtYSk7Cj4gIAl9Cj4g IH0KPiAgCj4gQEAgLTE3MTUsNyArMTcyMyw3IEBAIHN0YXRpYyB2b2lkIHVubWFwX3NpbmdsZV92 bWEoc3RydWN0IG1tdV9nYXRoZXIgKnRsYiwKPiAgICovCj4gIHZvaWQgdW5tYXBfdm1hcyhzdHJ1 Y3QgbW11X2dhdGhlciAqdGxiLAo+ICAJCXN0cnVjdCB2bV9hcmVhX3N0cnVjdCAqdm1hLCB1bnNp Z25lZCBsb25nIHN0YXJ0X2FkZHIsCj4gLQkJdW5zaWduZWQgbG9uZyBlbmRfYWRkcikKPiArCQl1 bnNpZ25lZCBsb25nIGVuZF9hZGRyLCBib29sIGxvY2tfdm1hKQo+ICB7Cj4gIAlzdHJ1Y3QgbW11 X25vdGlmaWVyX3JhbmdlIHJhbmdlOwo+ICAJc3RydWN0IHphcF9kZXRhaWxzIGRldGFpbHMgPSB7 Cj4gQEAgLTE3MjgsNyArMTczNiw4IEBAIHZvaWQgdW5tYXBfdm1hcyhzdHJ1Y3QgbW11X2dhdGhl ciAqdGxiLAo+ICAJCQkJc3RhcnRfYWRkciwgZW5kX2FkZHIpOwo+ICAJbW11X25vdGlmaWVyX2lu dmFsaWRhdGVfcmFuZ2Vfc3RhcnQoJnJhbmdlKTsKPiAgCWZvciAoIDsgdm1hICYmIHZtYS0+dm1f c3RhcnQgPCBlbmRfYWRkcjsgdm1hID0gdm1hLT52bV9uZXh0KQo+IC0JCXVubWFwX3NpbmdsZV92 bWEodGxiLCB2bWEsIHN0YXJ0X2FkZHIsIGVuZF9hZGRyLCAmZGV0YWlscyk7Cj4gKwkJdW5tYXBf c2luZ2xlX3ZtYSh0bGIsIHZtYSwgc3RhcnRfYWRkciwgZW5kX2FkZHIsICZkZXRhaWxzLAo+ICsJ CQkJIGxvY2tfdm1hKTsKPiAgCW1tdV9ub3RpZmllcl9pbnZhbGlkYXRlX3JhbmdlX2VuZCgmcmFu Z2UpOwo+ICB9Cj4gIAo+IEBAIC0xNzUzLDcgKzE3NjIsNyBAQCB2b2lkIHphcF9wYWdlX3Jhbmdl KHN0cnVjdCB2bV9hcmVhX3N0cnVjdCAqdm1hLCB1bnNpZ25lZCBsb25nIHN0YXJ0LAo+ICAJdXBk YXRlX2hpd2F0ZXJfcnNzKHZtYS0+dm1fbW0pOwo+ICAJbW11X25vdGlmaWVyX2ludmFsaWRhdGVf cmFuZ2Vfc3RhcnQoJnJhbmdlKTsKPiAgCWZvciAoIDsgdm1hICYmIHZtYS0+dm1fc3RhcnQgPCBy YW5nZS5lbmQ7IHZtYSA9IHZtYS0+dm1fbmV4dCkKPiAtCQl1bm1hcF9zaW5nbGVfdm1hKCZ0bGIs IHZtYSwgc3RhcnQsIHJhbmdlLmVuZCwgTlVMTCk7Cj4gKwkJdW5tYXBfc2luZ2xlX3ZtYSgmdGxi LCB2bWEsIHN0YXJ0LCByYW5nZS5lbmQsIE5VTEwsIGZhbHNlKTsKPiAgCW1tdV9ub3RpZmllcl9p bnZhbGlkYXRlX3JhbmdlX2VuZCgmcmFuZ2UpOwo+ICAJdGxiX2ZpbmlzaF9tbXUoJnRsYik7Cj4g IH0KPiBAQCAtMTc2OCw3ICsxNzc3LDcgQEAgdm9pZCB6YXBfcGFnZV9yYW5nZShzdHJ1Y3Qgdm1f YXJlYV9zdHJ1Y3QgKnZtYSwgdW5zaWduZWQgbG9uZyBzdGFydCwKPiAgICogVGhlIHJhbmdlIG11 c3QgZml0IGludG8gb25lIFZNQS4KPiAgICovCj4gIHN0YXRpYyB2b2lkIHphcF9wYWdlX3Jhbmdl X3NpbmdsZShzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZtYSwgdW5zaWduZWQgbG9uZyBhZGRyZXNz LAo+IC0JCXVuc2lnbmVkIGxvbmcgc2l6ZSwgc3RydWN0IHphcF9kZXRhaWxzICpkZXRhaWxzKQo+ ICsJCXVuc2lnbmVkIGxvbmcgc2l6ZSwgc3RydWN0IHphcF9kZXRhaWxzICpkZXRhaWxzLCBib29s IGxvY2tfdm1hKQo+ICB7Cj4gIAlzdHJ1Y3QgbW11X25vdGlmaWVyX3JhbmdlIHJhbmdlOwo+ICAJ c3RydWN0IG1tdV9nYXRoZXIgdGxiOwo+IEBAIC0xNzc5LDcgKzE3ODgsNyBAQCBzdGF0aWMgdm9p ZCB6YXBfcGFnZV9yYW5nZV9zaW5nbGUoc3RydWN0IHZtX2FyZWFfc3RydWN0ICp2bWEsIHVuc2ln bmVkIGxvbmcgYWRkcgo+ICAJdGxiX2dhdGhlcl9tbXUoJnRsYiwgdm1hLT52bV9tbSk7Cj4gIAl1 cGRhdGVfaGl3YXRlcl9yc3Modm1hLT52bV9tbSk7Cj4gIAltbXVfbm90aWZpZXJfaW52YWxpZGF0 ZV9yYW5nZV9zdGFydCgmcmFuZ2UpOwo+IC0JdW5tYXBfc2luZ2xlX3ZtYSgmdGxiLCB2bWEsIGFk ZHJlc3MsIHJhbmdlLmVuZCwgZGV0YWlscyk7Cj4gKwl1bm1hcF9zaW5nbGVfdm1hKCZ0bGIsIHZt YSwgYWRkcmVzcywgcmFuZ2UuZW5kLCBkZXRhaWxzLCBsb2NrX3ZtYSk7Cj4gIAltbXVfbm90aWZp ZXJfaW52YWxpZGF0ZV9yYW5nZV9lbmQoJnJhbmdlKTsKPiAgCXRsYl9maW5pc2hfbW11KCZ0bGIp Owo+ICB9Cj4gQEAgLTE4MDIsNyArMTgxMSw3IEBAIHZvaWQgemFwX3ZtYV9wdGVzKHN0cnVjdCB2 bV9hcmVhX3N0cnVjdCAqdm1hLCB1bnNpZ25lZCBsb25nIGFkZHJlc3MsCj4gIAkgICAgCQkhKHZt YS0+dm1fZmxhZ3MgJiBWTV9QRk5NQVApKQo+ICAJCXJldHVybjsKPiAgCj4gLQl6YXBfcGFnZV9y YW5nZV9zaW5nbGUodm1hLCBhZGRyZXNzLCBzaXplLCBOVUxMKTsKPiArCXphcF9wYWdlX3Jhbmdl X3NpbmdsZSh2bWEsIGFkZHJlc3MsIHNpemUsIE5VTEwsIHRydWUpOwo+ICB9Cj4gIEVYUE9SVF9T WU1CT0xfR1BMKHphcF92bWFfcHRlcyk7Cj4gIAo+IEBAIC0zNDgzLDcgKzM0OTIsOCBAQCBzdGF0 aWMgdm9pZCB1bm1hcF9tYXBwaW5nX3JhbmdlX3ZtYShzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZt YSwKPiAgCQl1bnNpZ25lZCBsb25nIHN0YXJ0X2FkZHIsIHVuc2lnbmVkIGxvbmcgZW5kX2FkZHIs Cj4gIAkJc3RydWN0IHphcF9kZXRhaWxzICpkZXRhaWxzKQo+ICB7Cj4gLQl6YXBfcGFnZV9yYW5n ZV9zaW5nbGUodm1hLCBzdGFydF9hZGRyLCBlbmRfYWRkciAtIHN0YXJ0X2FkZHIsIGRldGFpbHMp Owo+ICsJemFwX3BhZ2VfcmFuZ2Vfc2luZ2xlKHZtYSwgc3RhcnRfYWRkciwgZW5kX2FkZHIgLSBz dGFydF9hZGRyLCBkZXRhaWxzLAo+ICsJCQkgICAgICBmYWxzZSk7Cj4gIH0KPiAgCj4gIHN0YXRp YyBpbmxpbmUgdm9pZCB1bm1hcF9tYXBwaW5nX3JhbmdlX3RyZWUoc3RydWN0IHJiX3Jvb3RfY2Fj aGVkICpyb290LAo+IGRpZmYgLS1naXQgYS9tbS9tbWFwLmMgYi9tbS9tbWFwLmMKPiBpbmRleCAx MjE1NDRmZDkwZGUuLjA5NDY3OGI0NDM0YiAxMDA2NDQKPiAtLS0gYS9tbS9tbWFwLmMKPiArKysg Yi9tbS9tbWFwLmMKPiBAQCAtNzksNyArNzksNyBAQCBjb3JlX3BhcmFtKGlnbm9yZV9ybGltaXRf ZGF0YSwgaWdub3JlX3JsaW1pdF9kYXRhLCBib29sLCAwNjQ0KTsKPiAgCj4gIHN0YXRpYyB2b2lk IHVubWFwX3JlZ2lvbihzdHJ1Y3QgbW1fc3RydWN0ICptbSwKPiAgCQlzdHJ1Y3Qgdm1fYXJlYV9z dHJ1Y3QgKnZtYSwgc3RydWN0IHZtX2FyZWFfc3RydWN0ICpwcmV2LAo+IC0JCXVuc2lnbmVkIGxv bmcgc3RhcnQsIHVuc2lnbmVkIGxvbmcgZW5kKTsKPiArCQl1bnNpZ25lZCBsb25nIHN0YXJ0LCB1 bnNpZ25lZCBsb25nIGVuZCwgYm9vbCBsb2NrX3ZtYSk7Cj4gIAo+ICBzdGF0aWMgcGdwcm90X3Qg dm1fcGdwcm90X21vZGlmeShwZ3Byb3RfdCBvbGRwcm90LCB1bnNpZ25lZCBsb25nIHZtX2ZsYWdz KQo+ICB7Cj4gQEAgLTE4NjYsNyArMTg2Niw3IEBAIHVuc2lnbmVkIGxvbmcgbW1hcF9yZWdpb24o c3RydWN0IGZpbGUgKmZpbGUsIHVuc2lnbmVkIGxvbmcgYWRkciwKPiAgCXZtYS0+dm1fZmlsZSA9 IE5VTEw7Cj4gIAo+ICAJLyogVW5kbyBhbnkgcGFydGlhbCBtYXBwaW5nIGRvbmUgYnkgYSBkZXZp Y2UgZHJpdmVyLiAqLwo+IC0JdW5tYXBfcmVnaW9uKG1tLCB2bWEsIHByZXYsIHZtYS0+dm1fc3Rh cnQsIHZtYS0+dm1fZW5kKTsKPiArCXVubWFwX3JlZ2lvbihtbSwgdm1hLCBwcmV2LCB2bWEtPnZt X3N0YXJ0LCB2bWEtPnZtX2VuZCwgdHJ1ZSk7Cj4gIAlpZiAodm1fZmxhZ3MgJiBWTV9TSEFSRUQp Cj4gIAkJbWFwcGluZ191bm1hcF93cml0YWJsZShmaWxlLT5mX21hcHBpbmcpOwo+ICBmcmVlX3Zt YTogCj4gQEAgLTI2MjYsNyArMjYyNiw3IEBAIHN0YXRpYyB2b2lkIHJlbW92ZV92bWFfbGlzdChz dHJ1Y3QgbW1fc3RydWN0ICptbSwgc3RydWN0IHZtX2FyZWFfc3RydWN0ICp2bWEpCj4gICAqLwo+ ICBzdGF0aWMgdm9pZCB1bm1hcF9yZWdpb24oc3RydWN0IG1tX3N0cnVjdCAqbW0sCj4gIAkJc3Ry dWN0IHZtX2FyZWFfc3RydWN0ICp2bWEsIHN0cnVjdCB2bV9hcmVhX3N0cnVjdCAqcHJldiwKPiAt CQl1bnNpZ25lZCBsb25nIHN0YXJ0LCB1bnNpZ25lZCBsb25nIGVuZCkKPiArCQl1bnNpZ25lZCBs b25nIHN0YXJ0LCB1bnNpZ25lZCBsb25nIGVuZCwgYm9vbCBsb2NrX3ZtYSkKPiAgewo+ICAJc3Ry dWN0IHZtX2FyZWFfc3RydWN0ICpuZXh0ID0gdm1hX25leHQobW0sIHByZXYpOwo+ICAJc3RydWN0 IG1tdV9nYXRoZXIgdGxiOwo+IEBAIC0yNjM0LDkgKzI2MzQsMTAgQEAgc3RhdGljIHZvaWQgdW5t YXBfcmVnaW9uKHN0cnVjdCBtbV9zdHJ1Y3QgKm1tLAo+ICAJbHJ1X2FkZF9kcmFpbigpOwo+ICAJ dGxiX2dhdGhlcl9tbXUoJnRsYiwgbW0pOwo+ICAJdXBkYXRlX2hpd2F0ZXJfcnNzKG1tKTsKPiAt CXVubWFwX3ZtYXMoJnRsYiwgdm1hLCBzdGFydCwgZW5kKTsKPiArCXVubWFwX3ZtYXMoJnRsYiwg dm1hLCBzdGFydCwgZW5kLCBsb2NrX3ZtYSk7Cj4gIAlmcmVlX3BndGFibGVzKCZ0bGIsIHZtYSwg cHJldiA/IHByZXYtPnZtX2VuZCA6IEZJUlNUX1VTRVJfQUREUkVTUywKPiAtCQkJCSBuZXh0ID8g bmV4dC0+dm1fc3RhcnQgOiBVU0VSX1BHVEFCTEVTX0NFSUxJTkcpOwo+ICsJCQkJIG5leHQgPyBu ZXh0LT52bV9zdGFydCA6IFVTRVJfUEdUQUJMRVNfQ0VJTElORywKPiArCQkJCSBsb2NrX3ZtYSk7 Cj4gIAl0bGJfZmluaXNoX21tdSgmdGxiKTsKPiAgfQo+ICAKPiBAQCAtMjg0OSw3ICsyODUwLDcg QEAgaW50IF9fZG9fbXVubWFwKHN0cnVjdCBtbV9zdHJ1Y3QgKm1tLCB1bnNpZ25lZCBsb25nIHN0 YXJ0LCBzaXplX3QgbGVuLAo+ICAJaWYgKGRvd25ncmFkZSkKPiAgCQltbWFwX3dyaXRlX2Rvd25n cmFkZShtbSk7Cj4gIAo+IC0JdW5tYXBfcmVnaW9uKG1tLCB2bWEsIHByZXYsIHN0YXJ0LCBlbmQp Owo+ICsJdW5tYXBfcmVnaW9uKG1tLCB2bWEsIHByZXYsIHN0YXJ0LCBlbmQsICFkb3duZ3JhZGUp Owo+ICAKPiAgCS8qIEZpeCB1cCBhbGwgb3RoZXIgVk0gaW5mb3JtYXRpb24gKi8KPiAgCXJlbW92 ZV92bWFfbGlzdChtbSwgdm1hKTsKPiBAQCAtMzEyOSw4ICszMTMwLDggQEAgdm9pZCBleGl0X21t YXAoc3RydWN0IG1tX3N0cnVjdCAqbW0pCj4gIAl0bGJfZ2F0aGVyX21tdV9mdWxsbW0oJnRsYiwg bW0pOwo+ICAJLyogdXBkYXRlX2hpd2F0ZXJfcnNzKG1tKSBoZXJlPyBidXQgbm9ib2R5IHNob3Vs ZCBiZSBsb29raW5nICovCj4gIAkvKiBVc2UgLTEgaGVyZSB0byBlbnN1cmUgYWxsIFZNQXMgaW4g dGhlIG1tIGFyZSB1bm1hcHBlZCAqLwo+IC0JdW5tYXBfdm1hcygmdGxiLCB2bWEsIDAsIC0xKTsK PiAtCWZyZWVfcGd0YWJsZXMoJnRsYiwgdm1hLCBGSVJTVF9VU0VSX0FERFJFU1MsIFVTRVJfUEdU QUJMRVNfQ0VJTElORyk7Cj4gKwl1bm1hcF92bWFzKCZ0bGIsIHZtYSwgMCwgLTEsIHRydWUpOwo+ ICsJZnJlZV9wZ3RhYmxlcygmdGxiLCB2bWEsIEZJUlNUX1VTRVJfQUREUkVTUywgVVNFUl9QR1RB QkxFU19DRUlMSU5HLCB0cnVlKTsKPiAgCXRsYl9maW5pc2hfbW11KCZ0bGIpOwo+ICAKPiAgCS8q IFdhbGsgdGhlIGxpc3QgYWdhaW4sIGFjdHVhbGx5IGNsb3NpbmcgYW5kIGZyZWVpbmcgaXQuICov Cj4gZGlmZiAtLWdpdCBhL21tL29vbV9raWxsLmMgYi9tbS9vb21fa2lsbC5jCj4gaW5kZXggM2M2 Y2Y5ZTNjZDY2Li42ZmZhN2M1MTFhYTMgMTAwNjQ0Cj4gLS0tIGEvbW0vb29tX2tpbGwuYwo+ICsr KyBiL21tL29vbV9raWxsLmMKPiBAQCAtNTQ5LDcgKzU0OSw4IEBAIGJvb2wgX19vb21fcmVhcF90 YXNrX21tKHN0cnVjdCBtbV9zdHJ1Y3QgKm1tKQo+ICAJCQkJcmV0ID0gZmFsc2U7Cj4gIAkJCQlj b250aW51ZTsKPiAgCQkJfQo+IC0JCQl1bm1hcF9wYWdlX3JhbmdlKCZ0bGIsIHZtYSwgcmFuZ2Uu c3RhcnQsIHJhbmdlLmVuZCwgTlVMTCk7Cj4gKwkJCXVubWFwX3BhZ2VfcmFuZ2UoJnRsYiwgdm1h LCByYW5nZS5zdGFydCwgcmFuZ2UuZW5kLAo+ICsJCQkJCSBOVUxMLCBmYWxzZSk7Cj4gIAkJCW1t dV9ub3RpZmllcl9pbnZhbGlkYXRlX3JhbmdlX2VuZCgmcmFuZ2UpOwo+ICAJCQl0bGJfZmluaXNo X21tdSgmdGxiKTsKPiAgCQl9CgpJJ20gd29uZGVyaW5nIGlmIHRoZSBWTUEgbG9ja2luZyBzaG91 bGQgYmUgZG9uZSBoZXJlIGluc3RlYWQgb2YgaW5zaWRlCnVubWFwX3BhZ2VfcmFuZ2UoKSB3aGlj aCBpcyBub3QgcmVhbGx5IHRvdWNoaW5nIHRoZSBWTUEncyBmaWVsZHMuCgpIZXJlIHRoaXMgd291 bGQgYmUgbmVlZGVkIGJlY2F1c2UgdGhlIHBhZ2UgZmF1bHQgaGFuZGxlciBtYXkgY2hlY2sgdGhl Ck1NRl9VTlNUQUJMRSBmbGFnIGFuZCB0aGUgVk1BJ3MgbG9ja2luZyBiZWZvcmUgdGhpcyBsb29w IGlzIGVudGVyZWQgYnkKYW5vdGhlciB0aHJlYWQuCgoKX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX18KbGludXgtYXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKbGlu dXgtYXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQu b3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtYXJtLWtlcm5lbAo=