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=-5.7 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS autolearn=no 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 C6524C433F5 for ; Fri, 3 Sep 2021 06:22:11 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 42103601FA for ; Fri, 3 Sep 2021 06:22:11 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 42103601FA Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmx.de Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=kvack.org Received: by kanga.kvack.org (Postfix) id C610A900002; Fri, 3 Sep 2021 02:22:10 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id C11488D0001; Fri, 3 Sep 2021 02:22:10 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id AD842900002; Fri, 3 Sep 2021 02:22:10 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0161.hostedemail.com [216.40.44.161]) by kanga.kvack.org (Postfix) with ESMTP id 9D3278D0001 for ; Fri, 3 Sep 2021 02:22:10 -0400 (EDT) Received: from smtpin14.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay03.hostedemail.com (Postfix) with ESMTP id 5455682F3101 for ; Fri, 3 Sep 2021 06:22:10 +0000 (UTC) X-FDA: 78545267220.14.9C5F9D5 Received: from mout.gmx.net (mout.gmx.net [212.227.17.21]) by imf12.hostedemail.com (Postfix) with ESMTP id 933A810000A5 for ; Fri, 3 Sep 2021 06:22:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1630650122; bh=/bRw5YCQ4IWd0Lr2JjxHBW07ew2K//uXjYchUwdJ9to=; h=X-UI-Sender-Class:Subject:From:To:Cc:Date:In-Reply-To:References; b=QsQTVGQyquryKg0hvlJAkN9QMuB0A2QatSOzfDo7sRX/a19gF9dOjYHzWYUwmANNa LPMGI3UOU6uLMIg7wGdsflQ5aemEMr3Luxv+xIF7p2C0nGN7KCi2Oib0Mm1kgUvcNa +xRCL0Ns/27OCwn/6i3sHCL/8G/PqZnzZwvjr5Bc= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from homer.fritz.box ([185.191.218.121]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MOiDX-1mcqmr0jdv-00QAjI; Fri, 03 Sep 2021 08:22:02 +0200 Message-ID: Subject: Re: [patch 036/212] mm, slab: make flush_slab() possible to call with irqs enabled From: Mike Galbraith To: Vlastimil Babka , Linus Torvalds , Andrew Morton Cc: Sebastian Andrzej Siewior , Jesper Dangaard Brouer , Christoph Lameter , Joonsoo Kim , Jann Horn , Linux-MM , Mel Gorman , mm-commits@vger.kernel.org, Pekka Enberg , David Rientjes , Thomas Gleixner Date: Fri, 03 Sep 2021 08:22:00 +0200 In-Reply-To: References: <20210902144820.78957dff93d7bea620d55a89@linux-foundation.org> <20210902215152.ibWfL_bvd%akpm@linux-foundation.org> Content-Type: text/plain; charset="UTF-8" User-Agent: Evolution 3.41.2 MIME-Version: 1.0 Content-Transfer-Encoding: base64 X-Provags-ID: V03:K1:UmzXKmky+y5uZNqN9fv6AR+XGeCnotJgxpUgJgxFNOU08OS6IiH tjslqlYACkz/1f5WwG0B4B/bU+bkoWnm+lBbVj3T0K6Mr8topJ1JYiAiTlZSgrcMWpsrRu/ cDZyRq7brDS5USjdZlQsrumMoA0KwLQfEtxuTWrQ/JrfFRfT8lShI5yKryhnk2hNCRM0kmh q/PTB5/9jjz1KTsXx3svQ== X-UI-Out-Filterresults: notjunk:1;V03:K0:Qa+1k7Ssp6g=:w9yPMU3g+fVB3I45Xuc3lZ YVWeV6oxOerwbQj68Jfak+EHpNEcrX+fNY7OzSzVV0IPL55SwuDb/08w5ADIqdtEugnMAAF4S ZWFGpLWeKifZG4HD4TpDmsPT3CU1noxsQL06BjawY0/oiFH7oe69I2oW5MZpp6ZJsHAezvk8N EYFV/B/isySxLrusIsyqrFkaLASBnYVhwl9nI2ulsqDN6cOZPhonPhopiZ6kkJ5M1KwhtxLtk he4EsuEeV+K9AX1eK/ZXBNrJKeXS+6KNNgVPDkE4dqDAoWGpSz1bsxzOW9JoE4sZf2wPYxIox qaoXmWbbWz+5VXTc1r3Ug2Sf2QOOF/e9iRPO2SYLWZL3FU7SOyc8Z0qi9Tu/lZRPGa+3CLZ0E v18tHLIFEJD9VH5Q4KiwTyjHS5aEYID6pWJGAvmFsv8qrcGw3lLh0rUfqiNzPaFYw4cSVeprI IYtae/UdeYPXmxhfGIK7DDMlIgIkPRLY0krQPTCLmM6rZYVZF0uRCAYLD+HzkgG4aYIO49rSz 2FJhDT2VW4sINKH6N45dtjgJVyMcyW/EQOX2dbknMtMjq16IPRjttoic0rtNus4h7V51LaUlE HMAMJt1zbAI4/9imnFYevMjM7x6CXEs3+eTfjddK0H+eLfdKfNFViz3bLVO2XixN8BJFR/+ps 124WENGZhIGMkSi9eUF7us96fb17fqqOt9zPj+XvrUFClLJ4qD4aGdBQKrx8GV0rJHBSV6pja Ggoj3jdaFHUcMNoSn5kkKocxhzu0D68Cw2sR4g8RfBW1dIgYlxaWsZqDkmGcNeWsT9R+XWNVJ OBntPIOqtadHMAYbmB1+sCd7bHnQ5g4YCJ+QlVrcatgROUXLpmUPyfH5/t78CdeQwylCScitf 7HouDbyPdTQALJOcvx8L3t4oj8IQoGkMMigirc10U3v1N7o+qcmpHs+KChiNUGGcuT0BaDj/Q ETH8W+dM/Vv5z/l6rB4j153FV8mWhE9rbk+NbjBaZVWmJ2kBQeP+r8eHAcc3qZqz4d7prploM nFog82SkU0uBOczA2KH0ynJCXkPSepSCRvFDn//BfK1G6qcHRWPF+pupNbumqgeghov6Vj1qX /5i7rynVLFj/kpgjKqyC3K9j0w2ejf9tHrC X-Rspamd-Queue-Id: 933A810000A5 Authentication-Results: imf12.hostedemail.com; dkim=pass header.d=gmx.net header.s=badeba3b8450 header.b=QsQTVGQy; dmarc=pass (policy=none) header.from=gmx.de; spf=pass (imf12.hostedemail.com: domain of efault@gmx.de designates 212.227.17.21 as permitted sender) smtp.mailfrom=efault@gmx.de X-Rspamd-Server: rspam01 X-Stat-Signature: ghos767q7c7ixqmj47c8swfpd3pr358b X-HE-Tag: 1630650129-87918 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: PiA+IHNvIHRoYXQgd2hlbiB5b3UgcmVhZCB0aGF0IGZ1bmN0aW9uIG9uIGl0cyBvd24sIGl0J3Mg Y2xlYXIgdGhhdCB0aGUNCj4gPiBsb2NrIGlzIGFsd2F5cyBoZWxkIG92ZXIgdGhhdCBjcml0aWNh bCBzZWN0aW9uIC0gYW5kIHRoZSBpc3N1ZSBpcyB0aGF0DQo+ID4gcGVyaGFwcyB0aGUgbG9jayB3 YXMgYWxyZWFkeSB0YWtlbiBieSB0aGUgY2FsbGVyLg0KPiANCj4gQWN0dWFsbHkgdGhhdCAiYWxy ZWFkeSB0YWtlbiIgYmVjb21lcyAiY2FsbGVyIGRvZXMgbm90IG5lZWQgaXQvY2FuJ3QNCj4gZXZl biB0YWtlIHRoZSBsb2NhbCBsb2NrIGFzIGl0J3Mgbm90IGxvY2FsIiAoaXQncyBhIGNwdSBob3Qg cmVtb3ZlDQo+IGhhbmRsZXIgb24gYmVoYWxmIG9mIGFub3RoZXIsIGRlYWQgY3B1KS4NCj4gDQo+ IFNvIHdvdWxkIGl0IHdvcmsgd2l0aCBzb21ldGhpbmcgbGlrZSB0aGUgZm9sbG93aW5nIGNsZWFu dXAgb24gdG9wIGxhdGVyDQo+IGFmdGVyIHByb3BlciB0ZXN0aW5nPyAobm93IGp1c3QgY29tcGls ZSB0ZXN0ZWQpLg0KDQpTY3JvbGwgZG93bndhcmQuLi4NCg0KPiAtLS04PC0tLQ0KPiBkaWZmIC0t Z2l0IGEvbW0vc2x1Yi5jIGIvbW0vc2x1Yi5jDQo+IGluZGV4IGRmMWFjOGFmZjg2Zi4uMGQ5ZTYz ZTkxOGYxIDEwMDY0NA0KPiAtLS0gYS9tbS9zbHViLmMNCj4gKysrIGIvbW0vc2x1Yi5jDQo+IEBA IC0yNTY2LDM4ICsyNTY2LDMzIEBAIHN0YXRpYyBpbmxpbmUgdm9pZCB1bmZyZWV6ZV9wYXJ0aWFs c19jcHUoc3RydWN0IGttZW1fY2FjaGUgKnMsDQo+IMKgDQo+IMKgI2VuZGlmwqAvKiBDT05GSUdf U0xVQl9DUFVfUEFSVElBTCAqLw0KPiDCoA0KPiAtc3RhdGljIGlubGluZSB2b2lkIGZsdXNoX3Ns YWIoc3RydWN0IGttZW1fY2FjaGUgKnMsIHN0cnVjdCBrbWVtX2NhY2hlX2NwdSAqYywNCj4gLcKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGJv b2wgbG9jaykNCj4gK3N0YXRpYyBpbmxpbmUgc3RydWN0IHBhZ2UgKg0KPiArX19kZXRhY2hfY3B1 X3NsYWIoc3RydWN0IGttZW1fY2FjaGUgKnMsIHN0cnVjdCBrbWVtX2NhY2hlX2NwdSAqYywNCj4g K8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHZvaWQgKipmcmVlbGlzdCkNCj4gwqB7 DQo+IC3CoMKgwqDCoMKgwqDCoHVuc2lnbmVkIGxvbmcgZmxhZ3M7DQo+IC3CoMKgwqDCoMKgwqDC oHZvaWQgKmZyZWVsaXN0Ow0KPiDCoMKgwqDCoMKgwqDCoMKgc3RydWN0IHBhZ2UgKnBhZ2U7DQo+ IMKgDQo+IC3CoMKgwqDCoMKgwqDCoGlmIChsb2NrKQ0KPiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgbG9jYWxfbG9ja19pcnFzYXZlKCZzLT5jcHVfc2xhYi0+bG9jaywgZmxhZ3MpOw0K PiAtDQo+IC3CoMKgwqDCoMKgwqDCoGZyZWVsaXN0ID0gYy0+ZnJlZWxpc3Q7DQo+IMKgwqDCoMKg wqDCoMKgwqBwYWdlID0gYy0+cGFnZTsNCj4gK8KgwqDCoMKgwqDCoMKgKmZyZWVsaXN0ID0gYy0+ ZnJlZWxpc3Q7DQo+IMKgDQo+IMKgwqDCoMKgwqDCoMKgwqBjLT5wYWdlID0gTlVMTDsNCj4gwqDC oMKgwqDCoMKgwqDCoGMtPmZyZWVsaXN0ID0gTlVMTDsNCj4gwqDCoMKgwqDCoMKgwqDCoGMtPnRp ZCA9IG5leHRfdGlkKGMtPnRpZCk7DQo+IMKgDQo+IC3CoMKgwqDCoMKgwqDCoGlmIChsb2NrKQ0K PiAtwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgbG9jYWxfdW5sb2NrX2lycXJlc3RvcmUo JnMtPmNwdV9zbGFiLT5sb2NrLCBmbGFncyk7DQo+IC0NCj4gLcKgwqDCoMKgwqDCoMKgaWYgKHBh Z2UpDQo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBkZWFjdGl2YXRlX3NsYWIocywg cGFnZSwgZnJlZWxpc3QpOw0KPiAtDQo+IC3CoMKgwqDCoMKgwqDCoHN0YXQocywgQ1BVU0xBQl9G TFVTSCk7DQo+ICvCoMKgwqDCoMKgwqDCoHJldHVybiBwYWdlOw0KPiDCoH0NCj4gwqANCj4gwqBz dGF0aWMgaW5saW5lIHZvaWQgX19mbHVzaF9jcHVfc2xhYihzdHJ1Y3Qga21lbV9jYWNoZSAqcywg aW50IGNwdSkNCj4gwqB7DQo+IMKgwqDCoMKgwqDCoMKgwqBzdHJ1Y3Qga21lbV9jYWNoZV9jcHUg KmMgPSBwZXJfY3B1X3B0cihzLT5jcHVfc2xhYiwgY3B1KTsNCj4gK8KgwqDCoMKgwqDCoMKgc3Ry dWN0IHBhZ2UgKnBhZ2U7DQo+ICvCoMKgwqDCoMKgwqDCoHZvaWQgKmZyZWVsaXN0Ow0KPiDCoA0K PiAtwqDCoMKgwqDCoMKgwqBpZiAoYy0+cGFnZSkNCj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoGZsdXNoX3NsYWIocywgYywgZmFsc2UpOw0KPiArwqDCoMKgwqDCoMKgwqBpZiAoYy0+ cGFnZSkgew0KPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgcGFnZSA9IF9fZGV0YWNo X2NwdV9zbGFiKHMsIGMsICZmcmVlbGlzdCk7DQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqBkZWFjdGl2YXRlX3NsYWIocywgcGFnZSwgZnJlZWxpc3QpOw0KPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgc3RhdChzLCBDUFVTTEFCX0ZMVVNIKTsNCj4gK8KgwqDCoMKgwqDC oMKgfQ0KPiDCoA0KPiDCoMKgwqDCoMKgwqDCoMKgdW5mcmVlemVfcGFydGlhbHNfY3B1KHMsIGMp Ow0KPiDCoH0NCj4gQEAgLTI2MTgsMTQgKzI2MTMsMjQgQEAgc3RhdGljIHZvaWQgZmx1c2hfY3B1 X3NsYWIoc3RydWN0IHdvcmtfc3RydWN0ICp3KQ0KPiDCoMKgwqDCoMKgwqDCoMKgc3RydWN0IGtt ZW1fY2FjaGUgKnM7DQo+IMKgwqDCoMKgwqDCoMKgwqBzdHJ1Y3Qga21lbV9jYWNoZV9jcHUgKmM7 DQo+IMKgwqDCoMKgwqDCoMKgwqBzdHJ1Y3Qgc2x1Yl9mbHVzaF93b3JrICpzZnc7DQo+ICvCoMKg wqDCoMKgwqDCoHN0cnVjdCBwYWdlICpwYWdlOw0KPiArwqDCoMKgwqDCoMKgwqB2b2lkICpmcmVl bGlzdDsNCj4gK8KgwqDCoMKgwqDCoMKgdW5zaWduZWQgbG9uZyBmbGFnczsNCj4gwqANCj4gwqDC oMKgwqDCoMKgwqDCoHNmdyA9IGNvbnRhaW5lcl9vZih3LCBzdHJ1Y3Qgc2x1Yl9mbHVzaF93b3Jr LCB3b3JrKTsNCj4gwqANCj4gwqDCoMKgwqDCoMKgwqDCoHMgPSBzZnctPnM7DQo+IMKgwqDCoMKg wqDCoMKgwqBjID0gdGhpc19jcHVfcHRyKHMtPmNwdV9zbGFiKTsNCj4gwqANCj4gLcKgwqDCoMKg wqDCoMKgaWYgKGMtPnBhZ2UpDQo+IC3CoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqBmbHVz aF9zbGFiKHMsIGMsIHRydWUpOw0KPiArwqDCoMKgwqDCoMKgwqBpZiAoYy0+cGFnZSkgew0KPiAr wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgbG9jYWxfbG9ja19pcnFzYXZlKCZzLT5jcHVf c2xhYi0+bG9jaywgZmxhZ3MpOw0KPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgcGFn ZSA9IF9fZGV0YWNoX2NwdV9zbGFiKHMsIGMsICZmcmVlbGlzdCk7DQo+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqBsb2NhbF91bmxvY2tfaXJxcmVzdG9yZSgmcy0+Y3B1X3NsYWItPmxv Y2ssIGZsYWdzKTsNCj4gKw0KPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgaWYgKHBh Z2UpDQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgZGVh Y3RpdmF0ZV9zbGFiKHMsIHBhZ2UsIGZyZWVsaXN0KTsNCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoHN0YXQocywgQ1BVU0xBQl9GTFVTSCk7DQo+ICvCoMKgwqDCoMKgwqDCoH0NCj4g wqANCj4gwqDCoMKgwqDCoMKgwqDCoHVuZnJlZXplX3BhcnRpYWxzKHMpOw0KPiDCoH0NCg0KVG8g bXkgZXllYmFsbHMsIGJlbG93IGR1cGxpY2F0aW9uIG9mIGEgY291cGxlIGxpbmVzIG9mIGluaXRp YWxpemF0aW9uDQpuZWVkZWQgYnkgdGhlIGxvY2tsZXNzIGZ1bmN0aW9uIGlzIGxlc3MgaWNreSB0 aGFuIHRoZSBkb3VibGUgcmV0dXJuLg0KDQotLS0NCiBtbS9zbHViLmMgfCAgIDIzICsrKysrKysr KysrKysrLS0tLS0tLS0tDQogMSBmaWxlIGNoYW5nZWQsIDE0IGluc2VydGlvbnMoKyksIDkgZGVs ZXRpb25zKC0pDQoNCi0tLSBhL21tL3NsdWIuYw0KKysrIGIvbW0vc2x1Yi5jDQpAQCAtMjU2Niwx NSArMjU2NiwxMyBAQCBzdGF0aWMgaW5saW5lIHZvaWQgdW5mcmVlemVfcGFydGlhbHNfY3B1DQog DQogI2VuZGlmCS8qIENPTkZJR19TTFVCX0NQVV9QQVJUSUFMICovDQogDQotc3RhdGljIGlubGlu ZSB2b2lkIGZsdXNoX3NsYWIoc3RydWN0IGttZW1fY2FjaGUgKnMsIHN0cnVjdCBrbWVtX2NhY2hl X2NwdSAqYywNCi0JCQkgICAgICBib29sIGxvY2spDQorc3RhdGljIGlubGluZSB2b2lkIGZsdXNo X3NsYWIoc3RydWN0IGttZW1fY2FjaGUgKnMsIHN0cnVjdCBrbWVtX2NhY2hlX2NwdSAqYykNCiB7 DQogCXVuc2lnbmVkIGxvbmcgZmxhZ3M7DQogCXZvaWQgKmZyZWVsaXN0Ow0KIAlzdHJ1Y3QgcGFn ZSAqcGFnZTsNCiANCi0JaWYgKGxvY2spDQotCQlsb2NhbF9sb2NrX2lycXNhdmUoJnMtPmNwdV9z bGFiLT5sb2NrLCBmbGFncyk7DQorCWxvY2FsX2xvY2tfaXJxc2F2ZSgmcy0+Y3B1X3NsYWItPmxv Y2ssIGZsYWdzKTsNCiANCiAJZnJlZWxpc3QgPSBjLT5mcmVlbGlzdDsNCiAJcGFnZSA9IGMtPnBh Z2U7DQpAQCAtMjU4Myw4ICsyNTgxLDcgQEAgc3RhdGljIGlubGluZSB2b2lkIGZsdXNoX3NsYWIo c3RydWN0IGttZQ0KIAljLT5mcmVlbGlzdCA9IE5VTEw7DQogCWMtPnRpZCA9IG5leHRfdGlkKGMt PnRpZCk7DQogDQotCWlmIChsb2NrKQ0KLQkJbG9jYWxfdW5sb2NrX2lycXJlc3RvcmUoJnMtPmNw dV9zbGFiLT5sb2NrLCBmbGFncyk7DQorCWxvY2FsX3VubG9ja19pcnFyZXN0b3JlKCZzLT5jcHVf c2xhYi0+bG9jaywgZmxhZ3MpOw0KIA0KIAlpZiAocGFnZSkNCiAJCWRlYWN0aXZhdGVfc2xhYihz LCBwYWdlLCBmcmVlbGlzdCk7DQpAQCAtMjU5NSwxMSArMjU5MiwxOSBAQCBzdGF0aWMgaW5saW5l IHZvaWQgZmx1c2hfc2xhYihzdHJ1Y3Qga21lDQogc3RhdGljIGlubGluZSB2b2lkIF9fZmx1c2hf Y3B1X3NsYWIoc3RydWN0IGttZW1fY2FjaGUgKnMsIGludCBjcHUpDQogew0KIAlzdHJ1Y3Qga21l bV9jYWNoZV9jcHUgKmMgPSBwZXJfY3B1X3B0cihzLT5jcHVfc2xhYiwgY3B1KTsNCisJc3RydWN0 IHBhZ2UgKnBhZ2UgPSBjLT5wYWdlOw0KKwl2b2lkICpmcmVlbGlzdCA9IGMtPmZyZWVsaXN0Ow0K IA0KLQlpZiAoYy0+cGFnZSkNCi0JCWZsdXNoX3NsYWIocywgYywgZmFsc2UpOw0KKwljLT5wYWdl ID0gTlVMTDsNCisJYy0+ZnJlZWxpc3QgPSBOVUxMOw0KKwljLT50aWQgPSBuZXh0X3RpZChjLT50 aWQpOw0KKw0KKwlpZiAocGFnZSkNCisJCWRlYWN0aXZhdGVfc2xhYihzLCBwYWdlLCBmcmVlbGlz dCk7DQogDQogCXVuZnJlZXplX3BhcnRpYWxzX2NwdShzLCBjKTsNCisNCisJc3RhdChzLCBDUFVT TEFCX0ZMVVNIKTsNCiB9DQogDQogc3RydWN0IHNsdWJfZmx1c2hfd29yayB7DQpAQCAtMjYyNSw3 ICsyNjMwLDcgQEAgc3RhdGljIHZvaWQgZmx1c2hfY3B1X3NsYWIoc3RydWN0IHdvcmtfcw0KIAlj ID0gdGhpc19jcHVfcHRyKHMtPmNwdV9zbGFiKTsNCiANCiAJaWYgKGMtPnBhZ2UpDQotCQlmbHVz aF9zbGFiKHMsIGMsIHRydWUpOw0KKwkJZmx1c2hfc2xhYihzLCBjKTsNCiANCiAJdW5mcmVlemVf cGFydGlhbHMocyk7DQogfQ0KDQo=