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.0 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,URIBL_BLOCKED,USER_AGENT_SANE_1 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 33757ECE58E for ; Thu, 17 Oct 2019 10:55:17 +0000 (UTC) Received: from mail.linuxfoundation.org (mail.linuxfoundation.org [140.211.169.12]) (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 C963620869 for ; Thu, 17 Oct 2019 10:55:16 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=st.com header.i=@st.com header.b="ZwFWnOqm" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org C963620869 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=st.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=iommu-bounces@lists.linux-foundation.org Received: from mail.linux-foundation.org (localhost [127.0.0.1]) by mail.linuxfoundation.org (Postfix) with ESMTP id 72FF9155C; Thu, 17 Oct 2019 10:55:16 +0000 (UTC) Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id 265CCE40 for ; Thu, 17 Oct 2019 10:52:10 +0000 (UTC) X-Greylist: delayed 00:48:31 by SQLgrey-1.7.6 Received: from mx07-00178001.pphosted.com (mx07-00178001.pphosted.com [62.209.51.94]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id DEFC1608 for ; Thu, 17 Oct 2019 10:52:08 +0000 (UTC) Received: from pps.filterd (m0046668.ppops.net [127.0.0.1]) by mx07-00178001.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id x9H9vVcY002146; Thu, 17 Oct 2019 12:03:31 +0200 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=st.com; h=subject : to : cc : references : from : message-id : date : mime-version : in-reply-to : content-type : content-transfer-encoding; s=STMicroelectronics; bh=IdgUmjRayqkwAeVK31/fO6SZEJXv0f2yVqSQh53LNUo=; b=ZwFWnOqmR7E9AvRr1qawUTAaoMmGmSdQ1V/kH0tvotm+Kow0ApaLY+XpsHLNh4MwLNan gH67PvXaOe2AKXPPBF75V/9vqcNnEocqHpt7SGiBQauu50UPsb1Z74D4tm86X5th//fs Mf0y/6IgBp1WVfiZ5aO9KxbdiBtfK6J9RRiPU2TTgWQ0qWpyEnEOY00HRob2dmxggOJh higQYpNYLD+rjR2N1a93R9fia/3XJPOiB3oTj7C0uMbuE4nO49VZ/DxA0a4HcCJPSVRC 1PrHr3NqJ5KHWGZPgE3pExzRx+1hwvc7Fpp7w6m9M26pZKxnIUiVdmZR0E2K7ea3mv8C Gw== Received: from beta.dmz-eu.st.com (beta.dmz-eu.st.com [164.129.1.35]) by mx07-00178001.pphosted.com with ESMTP id 2vk4a1k5de-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 17 Oct 2019 12:03:31 +0200 Received: from euls16034.sgp.st.com (euls16034.sgp.st.com [10.75.44.20]) by beta.dmz-eu.st.com (STMicroelectronics) with ESMTP id 9C2E910002A; Thu, 17 Oct 2019 12:03:30 +0200 (CEST) Received: from Webmail-eu.st.com (sfhdag3node2.st.com [10.75.127.8]) by euls16034.sgp.st.com (STMicroelectronics) with ESMTP id 7FEF121C0D3; Thu, 17 Oct 2019 12:03:30 +0200 (CEST) Received: from lmecxl0912.lme.st.com (10.75.127.49) by SFHDAG3NODE2.st.com (10.75.127.8) with Microsoft SMTP Server (TLS) id 15.0.1347.2; Thu, 17 Oct 2019 12:03:29 +0200 Subject: Re: [BUG] dma-ranges, reserved memory regions, dma_alloc_coherent: possible bug? To: Vladimir Murzin , Robin Murphy , Daniele Alessandrelli , Christoph Hellwig , Marek Szyprowski References: <417fa080-08f9-9f35-687b-c0b82a61628d@arm.com> From: Alexandre Torgue Message-ID: <294b8a71-6e97-96b7-1ef3-c752cf8a9130@st.com> Date: Thu, 17 Oct 2019 12:03:29 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.8.0 MIME-Version: 1.0 In-Reply-To: <417fa080-08f9-9f35-687b-c0b82a61628d@arm.com> Content-Language: en-US X-Originating-IP: [10.75.127.49] X-ClientProxiedBy: SFHDAG3NODE2.st.com (10.75.127.8) To SFHDAG3NODE2.st.com (10.75.127.8) X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.95,1.0.8 definitions=2019-10-17_04:2019-10-17,2019-10-17 signatures=0 X-Mailman-Approved-At: Thu, 17 Oct 2019 10:55:16 +0000 Cc: iommu@lists.linux-foundation.org, Arnd Bergmann X-BeenThere: iommu@lists.linux-foundation.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Development issues for Linux IOMMU support List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: iommu-bounces@lists.linux-foundation.org Errors-To: iommu-bounces@lists.linux-foundation.org SGkgVmxhZAoKT24gMTAvMTcvMTkgMTE6NDYgQU0sIFZsYWRpbWlyIE11cnppbiB3cm90ZToKPiBP biAxMC8xNC8xOSA0OjAxIFBNLCBWbGFkaW1pciBNdXJ6aW4gd3JvdGU6Cj4+IE9uIDEwLzE0LzE5 IDI6NTQgUE0sIFJvYmluIE11cnBoeSB3cm90ZToKPj4+IE9uIDEzLzEwLzIwMTkgMTU6MjgsIERh bmllbGUgQWxlc3NhbmRyZWxsaSB3cm90ZToKPj4+PiBIaSwKPj4+Pgo+Pj4+IEl0IGxvb2tzIGxp a2UgZG1hX2FsbG9jX2NvaGVyZW50KCkgaXMgc2V0dGluZyB0aGUgZG1hX2hhbmRsZSBvdXRwdXQK Pj4+PiBwYXJhbWV0ZXIgdG8gdGhlIG1lbW9yeSBwaHlzaWNhbCBhZGRyZXNzIGFuZCBub3QgdGhl IGRldmljZSBidXMKPj4+PiBhZGRyZXNzIHdoZW4gdGhlIGRldmljZSBpcyB1c2luZyByZXNlcnZl ZCBtZW1vcnkgcmVnaW9ucyBmb3IgRE1BCj4+Pj4gYWxsb2NhdGlvbi4gVGhpcyBpcyBkZXNwaXRl IHVzaW5nICdkbWFfcmFuZ2VzJyBpbiB0aGUgZGV2aWNlIHRyZWUgdG8KPj4+PiBkZXNjcmliZSB0 aGUgRE1BIG1lbW9yeSBtYXBwaW5nLiBJcyB0aGlzIGV4cGVjdGVkIGJlaGF2aW9yIG9yIGEgYnVn Pwo+Pj4KPj4+IFRoYXQgZG9lcyBzb3VuZCBsaWtlIGEgYnVnIDooCj4+Pgo+Pj4+IEhlcmUgaXMg YSByZWR1Y2VkIHZlcnNpb24gb2YgdGhlIGRldmljZSB0cmVlIEknbSB1c2luZzoKPj4+PiBcIHsK Pj4+PiAgwqDCoMKgwqDCoMKgwqDCoCByZXNlcnZlZC1tZW1vcnkgewo+Pj4+ICDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjYWRkcmVzcy1jZWxscyA9IDwyPjsKPj4+PiAgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgI3NpemUtY2VsbHMgPSA8Mj47Cj4+Pj4gIMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHJhbmdlczsKPj4+PiAgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgbXlkZXZfcnN2ZDogcnN2ZF9tZW1ANDk0ODAwMDAwIHsKPj4+PiAg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGNvbXBhdGli bGUgPSAic2hhcmVkLWRtYS1wb29sIjsKPj4+PiAgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIHJlZyA9IDwweDQgMHg5NDgwMDAwMCAweDAgMHgyMDAwMDA+ Owo+Pj4+ICDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg bm8tbWFwOwo+Pj4+ICDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB9Owo+Pj4+ICDC oMKgwqDCoMKgwqDCoMKgIH07Cj4+Pj4gIMKgwqDCoMKgwqDCoMKgwqAgc29jIHsKPj4+PiAgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgY29tcGF0aWJsZSA9ICJzaW1wbGUtYnVzIjsK Pj4+PiAgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgI2FkZHJlc3MtY2VsbHMgPSA8 Mj47Cj4+Pj4gIMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICNzaXplLWNlbGxzID0g PDI+Owo+Pj4+ICDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCByYW5nZXM7Cj4+Pj4g IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGRtYV9yYW5nZXM7Cj4+Pj4KPj4+PiAg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgbXlidXMgewo+Pj4+ICDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcmFuZ2VzID0gPD47Cj4+Pj4g IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBkbWEtcmFu Z2VzID0gPD47Cj4+Pj4gIMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCBjb21wYXRpYmxlID0gInNpbXBsZS1idXMiOwo+Pj4+ICDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgI2FkZHJlc3MtY2VsbHMgPSA8Mj47Cj4+ Pj4gIMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjc2l6 ZS1jZWxscyA9IDwyPjsKPj4+PiAgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIHJhbmdlcyA9wqDCoMKgwqAgPDB4MCAweDDCoCAweDAgMHgwwqAgMHgwIDB4 ODAwMDAwMDA+Owo+Pj4+ICDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgZG1hLXJhbmdlcyA9IDwweDAgMHg4MDAwMDAwMMKgIDB4NCAweDgwMDAwMDAwCj4+ Pj4gMHgwIDB4ODAwMDAwMDA+Owo+Pj4+Cj4+Pj4gIMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBteWRldmljZSB7Cj4+Pj4gIMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgY29tcGF0aWJs ZSA9ICJteS1jb21wYXRpYmxlLXN0cmluZyI7Cj4+Pj4gIMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgbWVtb3J5LXJlZ2lvbiA9 IDwmbXlkZXZfcnN2ZD47Cj4+Pj4gIMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCB9Cj4+Pj4gIMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIH0K Pj4+PiAgwqDCoMKgwqDCoMKgwqDCoCB9Cj4+Pj4gfTsKPj4+Pgo+Pj4+IEl0IGxvb2tzIGxpa2Ug dGhpcyBpc3N1ZSB3YXMgcHJldmlvdXNseSBmaXhlZCBieSBjb21taXQgYzQxZjllYTk5OGYzCj4+ Pj4gKCJkcml2ZXJzOiBkbWEtY29oZXJlbnQ6IEFjY291bnQgZG1hX3Bmbl9vZmZzZXQgd2hlbiB1 c2VkIHdpdGggZGV2aWNlCj4+Pj4gdHJlZSIpIHdoaWNoIGludHJvZHVjZWQgYSBuZXcgZnVuY3Rp b24gKCdkbWFfZ2V0X2RldmljZV9iYXNlKCknKSB0bwo+Pj4+IHJldHVybiB0aGUgcmVzZXJ2ZWQg bWVtb3J5IGFkZHJlc3MgYXMgc2VlbiBieSB0aGUgZGV2aWNlLiBIb3dldmVyLAo+Pj4+IHN1Y2gg YSBmdW5jdGlvbiwgZXZlbiBpZiBzdGlsbCB0aGVyZSwgaXMgbm90IHVzZWQgYW55bW9yZSBpbiBs YXRlc3QKPj4+PiBjb2RlIChhcyBvZiB2NS40LXJjMikuIFdhcyB0aGF0IGRvbmUgZm9yIGEgc3Bl Y2lmaWMgcmVhc29uPyBPciBpcyBpdAo+Pj4+IGp1c3QgYSBtaXN0YWtlPwo+Pj4KPj4+IEhtbSwg aXQgbG9va3MgbGlrZSA0M2ZjNTA5YzNlZmIgKCJkbWEtY29oZXJlbnQ6IGludHJvZHVjZSBpbnRl cmZhY2UgZm9yIGRlZmF1bHQgRE1BIHBvb2wiKSByZW1vdmVkIHRoZSBjYWxsZXIgb2YgZG1hX2dl dF9kZXZpY2VfYmFzZSgpIGluIHRoZSBhbGxvYyBwYXRoIHNob3J0bHkgYWZ0ZXIgaXQgd2FzIGlu dHJvZHVjZWQsIHdoaWNoIGNlcnRhaW5seSBhcHBlYXJzIGFzIGlmIGl0IG1heSBoYXZlIGJlZW4g dW5pbnRlbnRpb25hbCAtIFZsYWRpbWlyPwo+Pgo+PiBJIGRvIG5vdCByZW1lbWJlciBpdCB3YXMg aW50ZW50aW9uYWwuIExvb2tpbmcgYXQgaGlzdG9yeSwgZGVmYXVsdCBETUEgcG9vbCB3YXMgYSBy ZXNwb25zZQo+PiB0byBhbm90aGVyIHJlcG9ydC4gSG93ZXZlciwgbm93IEknbSB3b25kZXJpbmcg d2h5IGl0IHdhcyBub3QgY2F1Z2h0IGJ5IFNUTTMyIC0gbW9zdCBvZiB0aGF0Cj4+IHdvcmsgd2Fz IHJlcXVpcmVkIHRvIHN1cHBvcnQgImRtYS1yYW5nZXMiIHdpdGggTk9NTVUrY2FjaGVzIChDb3J0 ZXgtTTcpLgo+Pgo+PiBBbGV4IChvciBhbnlib2R5IGVsc2UgZnJvbSBTVCksIG1heWJlIHlvdSBo YXZlIHNvbWUgaW5wdXQ/Cj4gCj4gU2VlbSB0aGV5IGRvIG5vdCBjYXJlIDopCj4gCgoKQ29uY2Vy bmluZywgdGhlIGRlZmF1bHQgZG1hIHBvb2w6CgotIEl0IHdhcyBpbnRyb2R1Y2VkIGJlY2F1c2Ug ZG1hIG9uIGNvcnRleE03IGNvdWxkbid0IHVzZSBjYWNoZS1hYmxlIAptZW1vcnkgcmVnaW9uLiBT byB3ZSBjb25maWd1cmVkIE1QVSBpbiBib290bG9hZGVyIChJIHRoaW5rIGl0IGNhbiBiZSAKZG9u ZSBub3cgYnkgS2VybmVsKSBhIHNtYWxsICJubyBjYWNoZSIgbWVtb3J5IHJlZ2lvbiBhbmQgdGhl biBkZWNsYXJlIAp0aGlzIHNhbWUgcmVnaW9uIGluIGtlcm5lbCBkZXZpY2UgdHJlZSBmb3IgdGhl IGRtYSBwb29sLiBXaXRob3V0IHRoYXQgd2UgCmNhbid0IGV4ZWN1dGUgYW55IGRtYSB0cmFzZmVy dHMuCgpTb3JyeSBmb3IgdGhlIGxhdGUgYW5zd2VyIDooCgphbGV4PiBJJ20gd29uZGVyaW5nIGlm IEkndmUgbWlzc2VkIHNvbWV0aGluZyB3aXRoIGRpZmYgYmVsbG93IChpdCB3YXMgYSAKbG9uZyB0 aW1lIGFnbyB3aGVuIEkgdG91Y2hlZCBETUEpPwo+IAo+IGRpZmYgLS1naXQgYS9hcmNoL2FybS9t bS9kbWEtbWFwcGluZy1ub21tdS5jIGIvYXJjaC9hcm0vbW0vZG1hLW1hcHBpbmctbm9tbXUuYwo+ IGluZGV4IGRiOTI0NzguLjI4N2VmODkgMTAwNjQ0Cj4gLS0tIGEvYXJjaC9hcm0vbW0vZG1hLW1h cHBpbmctbm9tbXUuYwo+ICsrKyBiL2FyY2gvYXJtL21tL2RtYS1tYXBwaW5nLW5vbW11LmMKPiBA QCAtMzUsNyArMzUsNyBAQCBzdGF0aWMgdm9pZCAqYXJtX25vbW11X2RtYV9hbGxvYyhzdHJ1Y3Qg ZGV2aWNlICpkZXYsIHNpemVfdCBzaXplLAo+ICAgCQkJCSB1bnNpZ25lZCBsb25nIGF0dHJzKQo+ ICAgCj4gICB7Cj4gLQl2b2lkICpyZXQgPSBkbWFfYWxsb2NfZnJvbV9nbG9iYWxfY29oZXJlbnQo c2l6ZSwgZG1hX2hhbmRsZSk7Cj4gKwl2b2lkICpyZXQgPSBkbWFfYWxsb2NfZnJvbV9nbG9iYWxf Y29oZXJlbnQoZGV2LCBzaXplLCBkbWFfaGFuZGxlKTsKPiAgIAo+ICAgCS8qCj4gICAJICogZG1h X2FsbG9jX2Zyb21fZ2xvYmFsX2NvaGVyZW50KCkgbWF5IGZhaWwgYmVjYXVzZToKPiBkaWZmIC0t Z2l0IGEvaW5jbHVkZS9saW51eC9kbWEtbWFwcGluZy5oIGIvaW5jbHVkZS9saW51eC9kbWEtbWFw cGluZy5oCj4gaW5kZXggNGExYzRmYy4uMTA5MThjNSAxMDA2NDQKPiAtLS0gYS9pbmNsdWRlL2xp bnV4L2RtYS1tYXBwaW5nLmgKPiArKysgYi9pbmNsdWRlL2xpbnV4L2RtYS1tYXBwaW5nLmgKPiBA QCAtMTYyLDcgKzE2Miw3IEBAIGludCBkbWFfcmVsZWFzZV9mcm9tX2Rldl9jb2hlcmVudChzdHJ1 Y3QgZGV2aWNlICpkZXYsIGludCBvcmRlciwgdm9pZCAqdmFkZHIpOwo+ICAgaW50IGRtYV9tbWFw X2Zyb21fZGV2X2NvaGVyZW50KHN0cnVjdCBkZXZpY2UgKmRldiwgc3RydWN0IHZtX2FyZWFfc3Ry dWN0ICp2bWEsCj4gICAJCQkgICAgdm9pZCAqY3B1X2FkZHIsIHNpemVfdCBzaXplLCBpbnQgKnJl dCk7Cj4gICAKPiAtdm9pZCAqZG1hX2FsbG9jX2Zyb21fZ2xvYmFsX2NvaGVyZW50KHNzaXplX3Qg c2l6ZSwgZG1hX2FkZHJfdCAqZG1hX2hhbmRsZSk7Cj4gK3ZvaWQgKmRtYV9hbGxvY19mcm9tX2ds b2JhbF9jb2hlcmVudChzdHJ1Y3QgZGV2aWNlICpkZXYsIHNzaXplX3Qgc2l6ZSwgZG1hX2FkZHJf dCAqZG1hX2hhbmRsZSk7Cj4gICBpbnQgZG1hX3JlbGVhc2VfZnJvbV9nbG9iYWxfY29oZXJlbnQo aW50IG9yZGVyLCB2b2lkICp2YWRkcik7Cj4gICBpbnQgZG1hX21tYXBfZnJvbV9nbG9iYWxfY29o ZXJlbnQoc3RydWN0IHZtX2FyZWFfc3RydWN0ICp2bWEsIHZvaWQgKmNwdV9hZGRyLAo+ICAgCQkJ CSAgc2l6ZV90IHNpemUsIGludCAqcmV0KTsKPiBAQCAtMTcyLDcgKzE3Miw3IEBAIGludCBkbWFf bW1hcF9mcm9tX2dsb2JhbF9jb2hlcmVudChzdHJ1Y3Qgdm1fYXJlYV9zdHJ1Y3QgKnZtYSwgdm9p ZCAqY3B1X2FkZHIsCj4gICAjZGVmaW5lIGRtYV9yZWxlYXNlX2Zyb21fZGV2X2NvaGVyZW50KGRl diwgb3JkZXIsIHZhZGRyKSAoMCkKPiAgICNkZWZpbmUgZG1hX21tYXBfZnJvbV9kZXZfY29oZXJl bnQoZGV2LCB2bWEsIHZhZGRyLCBvcmRlciwgcmV0KSAoMCkKPiAgIAo+IC1zdGF0aWMgaW5saW5l IHZvaWQgKmRtYV9hbGxvY19mcm9tX2dsb2JhbF9jb2hlcmVudChzc2l6ZV90IHNpemUsCj4gK3N0 YXRpYyBpbmxpbmUgdm9pZCAqZG1hX2FsbG9jX2Zyb21fZ2xvYmFsX2NvaGVyZW50KHN0cnVjdCBk ZXZpY2UgKmRldiwgc3NpemVfdCBzaXplLAo+ICAgCQkJCQkJICAgZG1hX2FkZHJfdCAqZG1hX2hh bmRsZSkKPiAgIHsKPiAgIAlyZXR1cm4gTlVMTDsKPiBkaWZmIC0tZ2l0IGEva2VybmVsL2RtYS9j b2hlcmVudC5jIGIva2VybmVsL2RtYS9jb2hlcmVudC5jCj4gaW5kZXggNTQ1ZTM4Ni4uNTUxYjBl YiAxMDA2NDQKPiAtLS0gYS9rZXJuZWwvZG1hL2NvaGVyZW50LmMKPiArKysgYi9rZXJuZWwvZG1h L2NvaGVyZW50LmMKPiBAQCAtMTIzLDggKzEyMyw5IEBAIGludCBkbWFfZGVjbGFyZV9jb2hlcmVu dF9tZW1vcnkoc3RydWN0IGRldmljZSAqZGV2LCBwaHlzX2FkZHJfdCBwaHlzX2FkZHIsCj4gICAJ cmV0dXJuIHJldDsKPiAgIH0KPiAgIAo+IC1zdGF0aWMgdm9pZCAqX19kbWFfYWxsb2NfZnJvbV9j b2hlcmVudChzdHJ1Y3QgZG1hX2NvaGVyZW50X21lbSAqbWVtLAo+IC0JCXNzaXplX3Qgc2l6ZSwg ZG1hX2FkZHJfdCAqZG1hX2hhbmRsZSkKPiArc3RhdGljIHZvaWQgKl9fZG1hX2FsbG9jX2Zyb21f Y29oZXJlbnQoc3RydWN0IGRldmljZSAqZGV2LAo+ICsJCQkJICAgICAgIHN0cnVjdCBkbWFfY29o ZXJlbnRfbWVtICptZW0sCj4gKwkJCQkgICAgICAgc3NpemVfdCBzaXplLCBkbWFfYWRkcl90ICpk bWFfaGFuZGxlKQo+ICAgewo+ICAgCWludCBvcmRlciA9IGdldF9vcmRlcihzaXplKTsKPiAgIAl1 bnNpZ25lZCBsb25nIGZsYWdzOwo+IEBAIC0xNDMsNyArMTQ0LDcgQEAgc3RhdGljIHZvaWQgKl9f ZG1hX2FsbG9jX2Zyb21fY29oZXJlbnQoc3RydWN0IGRtYV9jb2hlcmVudF9tZW0gKm1lbSwKPiAg IAkvKgo+ICAgCSAqIE1lbW9yeSB3YXMgZm91bmQgaW4gdGhlIGNvaGVyZW50IGFyZWEuCj4gICAJ ICovCj4gLQkqZG1hX2hhbmRsZSA9IG1lbS0+ZGV2aWNlX2Jhc2UgKyAocGFnZW5vIDw8IFBBR0Vf U0hJRlQpOwo+ICsJKmRtYV9oYW5kbGUgPSBkbWFfZ2V0X2RldmljZV9iYXNlKGRldiwgbWVtKSAr IChwYWdlbm8gPDwgUEFHRV9TSElGVCk7Cj4gICAJcmV0ID0gbWVtLT52aXJ0X2Jhc2UgKyAocGFn ZW5vIDw8IFBBR0VfU0hJRlQpOwo+ICAgCXNwaW5fdW5sb2NrX2lycXJlc3RvcmUoJm1lbS0+c3Bp bmxvY2ssIGZsYWdzKTsKPiAgIAltZW1zZXQocmV0LCAwLCBzaXplKTsKPiBAQCAtMTc1LDE3ICsx NzYsMTggQEAgaW50IGRtYV9hbGxvY19mcm9tX2Rldl9jb2hlcmVudChzdHJ1Y3QgZGV2aWNlICpk ZXYsIHNzaXplX3Qgc2l6ZSwKPiAgIAlpZiAoIW1lbSkKPiAgIAkJcmV0dXJuIDA7Cj4gICAKPiAt CSpyZXQgPSBfX2RtYV9hbGxvY19mcm9tX2NvaGVyZW50KG1lbSwgc2l6ZSwgZG1hX2hhbmRsZSk7 Cj4gKwkqcmV0ID0gX19kbWFfYWxsb2NfZnJvbV9jb2hlcmVudChkZXYsIG1lbSwgc2l6ZSwgZG1h X2hhbmRsZSk7Cj4gICAJcmV0dXJuIDE7Cj4gICB9Cj4gICAKPiAtdm9pZCAqZG1hX2FsbG9jX2Zy b21fZ2xvYmFsX2NvaGVyZW50KHNzaXplX3Qgc2l6ZSwgZG1hX2FkZHJfdCAqZG1hX2hhbmRsZSkK PiArdm9pZCAqZG1hX2FsbG9jX2Zyb21fZ2xvYmFsX2NvaGVyZW50KHN0cnVjdCBkZXZpY2UgKmRl diwgc3NpemVfdCBzaXplLAo+ICsJCQkJICAgICBkbWFfYWRkcl90ICpkbWFfaGFuZGxlKQo+ICAg ewo+ICAgCWlmICghZG1hX2NvaGVyZW50X2RlZmF1bHRfbWVtb3J5KQo+ICAgCQlyZXR1cm4gTlVM TDsKPiAgIAo+IC0JcmV0dXJuIF9fZG1hX2FsbG9jX2Zyb21fY29oZXJlbnQoZG1hX2NvaGVyZW50 X2RlZmF1bHRfbWVtb3J5LCBzaXplLAo+IC0JCQlkbWFfaGFuZGxlKTsKPiArCXJldHVybiBfX2Rt YV9hbGxvY19mcm9tX2NvaGVyZW50KGRldiwgZG1hX2NvaGVyZW50X2RlZmF1bHRfbWVtb3J5LCBz aXplLAo+ICsJCQkJCSBkbWFfaGFuZGxlKTsKPiAgIH0KPiAgIAo+ICAgc3RhdGljIGludCBfX2Rt YV9yZWxlYXNlX2Zyb21fY29oZXJlbnQoc3RydWN0IGRtYV9jb2hlcmVudF9tZW0gKm1lbSwKPiAK Pj4KPj4gQ2hlZXJzCj4+IFZsYWRpbWlyCj4+Cj4+Pgo+Pj4gUm9iaW4uCj4+Cj4gCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmlvbW11IG1haWxpbmcgbGlz dAppb21tdUBsaXN0cy5saW51eC1mb3VuZGF0aW9uLm9yZwpodHRwczovL2xpc3RzLmxpbnV4Zm91 bmRhdGlvbi5vcmcvbWFpbG1hbi9saXN0aW5mby9pb21tdQ==