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 mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 955E2C433EF for ; Mon, 11 Oct 2021 02:28:49 +0000 (UTC) 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 mail.kernel.org (Postfix) with ESMTPS id 5B34860F3A for ; Mon, 11 Oct 2021 02:28:49 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 5B34860F3A Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.alibaba.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=lists.infradead.org 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=IaDklQ6yQuWBSVG2iUuUYUq3hzUH9noiu0+U3AEJLUg=; b=ugR66+dj+Crf0G om0h8M221eRNA2PaXuh2fyX9hluuQPuJagMnGSD8tVu8lWKanzLKm7Q1J9qn0pUioK+jLA/MAfdW/ vcBeydHdByqXHHhJWCroQYPMPFj2Y3+C8/LiTWu46J469P6TrFelGOQ3hNljHABJhkoRs424YNWSX 9Kcl0ayxdZe08xMgZoVFIxTH4cNQJhfIBlzczJ17uOZxhQqDMPIpR98EDSKYQ4BxeOwgVNdpJtQhy LEnsYe6hoKsV4Q14dhPTGSIy0HQIjTi/3iiOzwC09kX9xFEbA7ZYiCJo3qt/7JZwxr5f+zUKM5Ge6 0UTFn0UdR4ctp8MkQO7w==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1mZl07-007ago-Sj; Mon, 11 Oct 2021 02:25:16 +0000 Received: from out30-132.freemail.mail.aliyun.com ([115.124.30.132]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1mZl03-007ag9-6x for linux-arm-kernel@lists.infradead.org; Mon, 11 Oct 2021 02:25:13 +0000 X-Alimail-AntiSpam: AC=PASS; BC=-1|-1; BR=01201311R951e4; CH=green; DM=||false|; DS=||; FP=0|-1|-1|-1|0|-1|-1|-1; HT=e01e04357; MF=xuesong.chen@linux.alibaba.com; NM=1; PH=DS; RN=18; SR=0; TI=SMTPD_---0UrJM6zB_1633919104; Received: from 30.225.212.130(mailfrom:xuesong.chen@linux.alibaba.com fp:SMTPD_---0UrJM6zB_1633919104) by smtp.aliyun-inc.com(127.0.0.1); Mon, 11 Oct 2021 10:25:05 +0800 Message-ID: Date: Mon, 11 Oct 2021 10:25:03 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0) Gecko/20100101 Thunderbird/91.1.2 Subject: Re: [PATCH v2 1/2] PCI: MCFG: Consolidate the separate PCI MCFG table entry list To: Bjorn Helgaas Cc: catalin.marinas@arm.com, lorenzo.pieralisi@arm.com, james.morse@arm.com, will@kernel.org, rafael@kernel.org, tony.luck@intel.com, bp@alien8.de, mingo@kernel.org, bhelgaas@google.com, mark.rutland@arm.com, linux-pci@vger.kernel.org, linux-acpi@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Jayachandran C , Tomasz Nowicki , xuesong.chen@linux.alibaba.com References: <20211008213143.GA1373034@bhelgaas> From: Xuesong Chen In-Reply-To: <20211008213143.GA1373034@bhelgaas> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20211010_192511_480458_F9710BC8 X-CRM114-Status: GOOD ( 35.81 ) 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 SGVsbG8gQmpvcm4sCgpPbiAwOS8xMC8yMDIxIDA1OjMxLCBCam9ybiBIZWxnYWFzIHdyb3RlOgo+ IFsrY2MgSmF5YWNoYW5kcmFuLCBUb21hc3o7IG5vdCBzdXJlIGlmIHRoZXkncmUgc3RpbGwgYXJv dW5kLCBidXQganVzdAo+IGluIGNhc2UgdGhleSBoYXZlIGEgY29tbWVudCBvbiBhbnkgcmVhc29u cyBmb3Iga2VlcGluZyB0aGUKPiBwY2lfbWNmZ19saXN0IGxpc3Qgc2VwYXJhdGUuXQo+IAo+IE9u IEZyaSwgT2N0IDA4LCAyMDIxIGF0IDA0OjQwOjEyUE0gKzA4MDAsIFh1ZXNvbmcgQ2hlbiB3cm90 ZToKPj4gVGhlIFBDSSBNQ0ZHIGVudHJ5IGxpc3QgaXMgZGlzY3JldGUgb24geDg2IGFuZCBvdGhl ciBhcmNoaXRlY3R1cmVzIGxpa2UKPj4gYXJtNjQgaW4gY3VycmVudCBpbXBsZW1lbnRhdGlvbiwg dGhpcyBsaXN0IHZhcmlhYmxlIGNhbiBiZSBjb25zb2xpZGF0ZWQKPj4gZm9yIHVubmVjZXNzYXJ5 IGR1cGxpY2F0aW9uIGFuZCBvdGhlciBwdXJwb3NlcywgZm9yIGV4YW1wbGUsIHdlIGNhbiByZW1v dmUKPj4gc29tZSBvZiB0aGUgJ2FyY2gnIHNwZWNpZmljIGNvZGVzIGluIHRoZSBBUEVJL0VJTkog bW9kdWxlIGFuZCByZS1pbXBsZW1lbnQKPj4gaXQgaW4gYSBtb3JlIGNvbW1vbiBhcmNoLWFnbm9z dGljIHdheS4KPiAKPiBUaGlzIGNvbW1pdCBsb2cgY291bGQgYmUgbW9yZSBleHBsaWNpdCBhYm91 dCB3aGF0J3MgZ29pbmcgb24gaGVyZS4KPiAKPiBGcm9tIGRlY2lwaGVyaW5nIHRoZSBwYXRjaCwg SSB0aGluayBpdCB0YWtlcyBhZHZhbnRhZ2Ugb2YgdGhlIGZhY3QKPiB0aGF0IHN0cnVjdCBwY2lf bW1jZmdfcmVnaW9uIGFuZCBzdHJ1Y3QgbWNmZ19lbnRyeSBjb250YWluIGJhc2ljYWxseQo+IHRo ZSBzYW1lIGluZm9ybWF0aW9uLCBidXQgcGNpX21tY2ZnX3JlZ2lvbiBjb250YWlucyBhIGxpdHRs ZSBleHRyYQo+IGluZm9ybWF0aW9uIChhIHN0cnVjdCByZXNvdXJjZSwgYSB2aXJ0dWFsIGFkZHJl c3MsIGFuZCBhIG5hbWUpLgo+IApHaXZlbiB0aGUgUENJIE1DRkcgZW50cmllcyBhcmUgbm90IHRv byBtdWNoIGluIHRoZSByZWFsaXR5LCBzbyB0aGUgcG90ZW50aWFsIAptZW1vcnkgc3BhY2UgcGVu YWx0eSBmb3IgdGhpcyBsaXR0bGUgZXh0cmEgaW5mb3JtYXRpb24sIElNTywgY2FuIGJlIGlnbm9y ZWQuCj4gVG8gcmVkdWNlIHRoZSByZWR1bmRhbmN5LCBpdDoKPiAKPiAgIC0gTW92ZXMgdGhlICJz dHJ1Y3QgcGNpX21tY2ZnX3JlZ2lvbiIgZGVmaW5pdGlvbiBmcm9tCj4gICAgIGFyY2gveDg2L2lu Y2x1ZGUvYXNtL3BjaV94ODYuaCB0byBpbmNsdWRlL2xpbnV4L3BjaS5oLCB3aGVyZSBpdAo+ICAg ICBjYW4gYmUgc2hhcmVkIGFjcm9zcyBhcmNoZXMuClJpZ2h0Lgo+IAo+ICAgLSBNb3ZlcyBwY2lf bW1jZmdfbGlzdCAoYSBsaXN0IG9mIHBjaV9tbWNmZ19yZWdpb24gc3RydWN0cykgZnJvbQo+ICAg ICBhcmNoL3g4Ni9wY2kvbW1jb25maWctc2hhcmVkLmMgdG8gZHJpdmVycy9wY2kvcGNpLmMsIHdo ZXJlIGl0IGNhbgo+ICAgICBiZSBzaGFyZWQgYWNyb3NzIGFyY2hlcy4KUmlnaHQuCj4gCj4gICAt IE9uIHg4NiAod2hpY2ggZG9lcyBub3QgZW5hYmxlIENPTkZJR19BQ1BJX01DRkcpLCBwY2lfbW1j ZmdfbGlzdCBpcwo+ICAgICBidWlsdCBpbiBhcmNoL3g4Ni9wY2kvbW1jb25maWctc2hhcmVkLmMg YXMgYmVmb3JlLgpBaCwgdGhpcyBwY2lfbW1jZmdfbGlzdCBtYXliZSBpcyBub3QgYnVpbHQtaW4g YXMgYmVmb3JlIHNpbmNlIGl0IHdpbGwgdXNlCnRoZSBzaGFyZWQgb25lIHJlLWRlZmluZWQgaW4g ZHJpdmVycy9wY2kvcGNpLmMKPiAKPiAgIC0gUmVtb3ZlcyB0aGUgInN0cnVjdCBtY2ZnX2VudHJ5 IiBmcm9tIGRyaXZlcnMvYWNwaS9wY2lfbWNmZy5jLgpSaWdodCwgdGhpcyBjYW4gYmUgY29uc29s aWRhdGVkIHdpdGggInN0cnVjdCBwY2lfbW1jZmdfcmVnaW9uIiwgd2UgbmVlZCBvbmx5IG9uZS4K PiAKPiAgIC0gUmVwbGFjZXMgcGNpX21jZmdfbGlzdCAocHJldmlvdXNseSBhIGxpc3Qgb2YgbWNm Z19lbnRyeSBzdHJ1Y3RzKQo+ICAgICBpbiBkcml2ZXJzL2FjcGkvcGNpX21jZmcuYyB3aXRoIHRo ZSBuZXdseS1zaGFyZWQgcGNpX21tY2ZnX2xpc3QgKGEKPiAgICAgbGlzdCBvZiBwY2lfbW1jZmdf cmVnaW9uIHN0cnVjdHMpLgpSaWdodO+8jHRoaXMgaXMgdGhlIHNwZWNpZmljIGNvbnNvbGlkYXRp b24gdXNlYWdlIHNjZW5hcmlv44CCIAo+IAo+ICAgLSBPbiBBUk02NCAod2hpY2ggZG9lcyBlbmFi bGUgQ09ORklHX0FDUElfTUNGRyksIHBjaV9tbWNmZ19saXN0IGlzCj4gICAgIGJ1aWx0IGluIGRy aXZlcnMvYWNwaS9wY2lfbWNmZy5jLgpBaCwgdGhlIG5ld2x5IHNoYXJlZCAncGNpX21tY2ZnX2xp c3QnIHJlLWRlZmluZWQgaW4gcGNpLmMgd2lsbCBiZSB1c2VkIGJ5IApkcml2ZXJzL2FjcGkvcGNp X21jZmcuYywgd2hpY2gganVzdCBsaWtlIHdoYXQgdGhlIHg4NiBkb2VzLgpJT1csIHdlIG1vdmUg dGhlICdwY2lfbW1jZmdfbGlzdCcgdG8gdGhlIGNvbW1vbiAnZHJpdmVycy9wY2kvcGNpLmMnLCB0 aGVuCmJvdGggdGhlIGFyY2gveDg2L3BjaS9tbWNvbmZpZy1zaGFyZWQuYyBhbmQgZHJpdmVycy9h Y3BpL3BjaV9tY2ZnLmMgb24gYXJtNjQKd2lsbCB1c2UgdGhhdCBieSB0aGUgJ2V4dGVybiBzdHJ1 Y3QgbGlzdF9oZWFkIHBjaV9tbWNmZ19saXN0JyBkZWNsYXJhdGlvbi4KPiAKPiBEb2VzIHRoYXQg c291bmQgYWJvdXQgcmlnaHQ/CkJqb3JuLCBmb3IgdGhlIGNvbW1pdCBsb2csIGRvIHlvdSB0aGlu ayBJIG5lZWQgdG8gYWRkIHRoZSBhYm92ZSBzdGVwcyB5b3UgbWVudGlvbmVkCmludG8gdGhlIGxv ZyBtZXNzYWdlIHRvIG1ha2UgaXQgYmUgbW9yZSBleHBsaWNpdD8gSSdkIGxpa2UgdG8gdXBkYXRl IGl0IGlmIHRoZQphbnN3ZXIgaXMgeWVzLi4uCgpGZWVsIGZyZWUgdG8gbGV0IG1lIGtub3cgaWYg eW91IGhhdmUgYW55IGNvbW1lbnRzIGFib3V0IHRoZSBjb2RlIGl0c2VsZi4KClh1ZXNvbmcKPiAK Pj4gU2lnbmVkLW9mZi1ieTogWHVlc29uZyBDaGVuIDx4dWVzb25nLmNoZW5AbGludXguYWxpYmFi YS5jb20+Cj4+IC0tLQo+PiAgYXJjaC94ODYvaW5jbHVkZS9hc20vcGNpX3g4Ni5oIHwgMTcgKy0t LS0tLS0tLS0tLS0tLS0KPj4gIGFyY2gveDg2L3BjaS9tbWNvbmZpZy1zaGFyZWQuYyB8ICAyIC0t Cj4+ICBkcml2ZXJzL2FjcGkvcGNpX21jZmcuYyAgICAgICAgfCAzNCArKysrKysrKysrKysrLS0t LS0tLS0tLS0tLS0tLS0tLS0tCj4+ICBkcml2ZXJzL3BjaS9wY2kuYyAgICAgICAgICAgICAgfCAg MiArKwo+PiAgaW5jbHVkZS9saW51eC9wY2kuaCAgICAgICAgICAgIHwgMTcgKysrKysrKysrKysr KysrKysKPj4gIDUgZmlsZXMgY2hhbmdlZCwgMzMgaW5zZXJ0aW9ucygrKSwgMzkgZGVsZXRpb25z KC0pCj4+Cj4+IGRpZmYgLS1naXQgYS9hcmNoL3g4Ni9pbmNsdWRlL2FzbS9wY2lfeDg2LmggYi9h cmNoL3g4Ni9pbmNsdWRlL2FzbS9wY2lfeDg2LmgKPj4gaW5kZXggNDkwNDExZC4uMWY0MjU3YyAx MDA2NDQKPj4gLS0tIGEvYXJjaC94ODYvaW5jbHVkZS9hc20vcGNpX3g4Ni5oCj4+ICsrKyBiL2Fy Y2gveDg2L2luY2x1ZGUvYXNtL3BjaV94ODYuaAo+PiBAQCAtMTQ2LDIwICsxNDYsNyBAQCBzdGF0 aWMgaW5saW5lIGludCAgX19pbml0IHBjaV9hY3BpX2luaXQodm9pZCkKPj4gIGV4dGVybiB2b2lk IHBjaWJpb3NfZml4dXBfaXJxcyh2b2lkKTsKPj4gIAo+PiAgLyogcGNpLW1tY29uZmlnLmMgKi8K Pj4gLQo+PiAtLyogIlBDSSBNTUNPTkZJRyAlMDR4IFtidXMgJTAyeC0lMDJ4XSIgKi8KPj4gLSNk ZWZpbmUgUENJX01NQ0ZHX1JFU09VUkNFX05BTUVfTEVOICgyMiArIDQgKyAyICsgMikKPj4gLQo+ PiAtc3RydWN0IHBjaV9tbWNmZ19yZWdpb24gewo+PiAtCXN0cnVjdCBsaXN0X2hlYWQgbGlzdDsK Pj4gLQlzdHJ1Y3QgcmVzb3VyY2UgcmVzOwo+PiAtCXU2NCBhZGRyZXNzOwo+PiAtCWNoYXIgX19p b21lbSAqdmlydDsKPj4gLQl1MTYgc2VnbWVudDsKPj4gLQl1OCBzdGFydF9idXM7Cj4+IC0JdTgg ZW5kX2J1czsKPj4gLQljaGFyIG5hbWVbUENJX01NQ0ZHX1JFU09VUkNFX05BTUVfTEVOXTsKPj4g LX07Cj4+ICtzdHJ1Y3QgcGNpX21tY2ZnX3JlZ2lvbjsKPj4gIAo+PiAgZXh0ZXJuIGludCBfX2lu aXQgcGNpX21tY2ZnX2FyY2hfaW5pdCh2b2lkKTsKPj4gIGV4dGVybiB2b2lkIF9faW5pdCBwY2lf bW1jZmdfYXJjaF9mcmVlKHZvaWQpOwo+PiBAQCAtMTc0LDggKzE2MSw2IEBAIGV4dGVybiBzdHJ1 Y3QgcGNpX21tY2ZnX3JlZ2lvbiAqX19pbml0IHBjaV9tbWNvbmZpZ19hZGQoaW50IHNlZ21lbnQs IGludCBzdGFydCwKPj4gIAo+PiAgZXh0ZXJuIHN0cnVjdCBsaXN0X2hlYWQgcGNpX21tY2ZnX2xp c3Q7Cj4+ICAKPj4gLSNkZWZpbmUgUENJX01NQ0ZHX0JVU19PRkZTRVQoYnVzKSAgICAgICgoYnVz KSA8PCAyMCkKPj4gLQo+PiAgLyoKPj4gICAqIE9uIEFNRCBGYW0xMGggQ1BVcywgYWxsIFBDSSBN TUlPIGNvbmZpZ3VyYXRpb24gc3BhY2UgYWNjZXNzZXMgbXVzdCB1c2UKPj4gICAqICVlYXguICBO byBvdGhlciBzb3VyY2Ugb3IgdGFyZ2V0IHJlZ2lzdGVycyBtYXkgYmUgdXNlZC4gIFRoZSBmb2xs b3dpbmcKPj4gZGlmZiAtLWdpdCBhL2FyY2gveDg2L3BjaS9tbWNvbmZpZy1zaGFyZWQuYyBiL2Fy Y2gveDg2L3BjaS9tbWNvbmZpZy1zaGFyZWQuYwo+PiBpbmRleCA3NThjYmZlLi4wYjk2MWZlNiAx MDA2NDQKPj4gLS0tIGEvYXJjaC94ODYvcGNpL21tY29uZmlnLXNoYXJlZC5jCj4+ICsrKyBiL2Fy Y2gveDg2L3BjaS9tbWNvbmZpZy1zaGFyZWQuYwo+PiBAQCAtMzEsOCArMzEsNiBAQAo+PiAgc3Rh dGljIERFRklORV9NVVRFWChwY2lfbW1jZmdfbG9jayk7Cj4+ICAjZGVmaW5lIHBjaV9tbWNmZ19s b2NrX2hlbGQoKSBsb2NrX2lzX2hlbGQoJihwY2lfbW1jZmdfbG9jaykuZGVwX21hcCkKPj4gIAo+ PiAtTElTVF9IRUFEKHBjaV9tbWNmZ19saXN0KTsKPj4gLQo+PiAgc3RhdGljIHZvaWQgX19pbml0 IHBjaV9tbWNvbmZpZ19yZW1vdmUoc3RydWN0IHBjaV9tbWNmZ19yZWdpb24gKmNmZykKPj4gIHsK Pj4gIAlpZiAoY2ZnLT5yZXMucGFyZW50KQo+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9hY3BpL3Bj aV9tY2ZnLmMgYi9kcml2ZXJzL2FjcGkvcGNpX21jZmcuYwo+PiBpbmRleCA1M2NhYjk3Li5kOTUw NmIwIDEwMDY0NAo+PiAtLS0gYS9kcml2ZXJzL2FjcGkvcGNpX21jZmcuYwo+PiArKysgYi9kcml2 ZXJzL2FjcGkvcGNpX21jZmcuYwo+PiBAQCAtMTMsMTQgKzEzLDcgQEAKPj4gICNpbmNsdWRlIDxs aW51eC9wY2ktYWNwaS5oPgo+PiAgI2luY2x1ZGUgPGxpbnV4L3BjaS1lY2FtLmg+Cj4+ICAKPj4g LS8qIFN0cnVjdHVyZSB0byBob2xkIGVudHJpZXMgZnJvbSB0aGUgTUNGRyB0YWJsZSAqLwo+PiAt c3RydWN0IG1jZmdfZW50cnkgewo+PiAtCXN0cnVjdCBsaXN0X2hlYWQJbGlzdDsKPj4gLQlwaHlz X2FkZHJfdAkJYWRkcjsKPj4gLQl1MTYJCQlzZWdtZW50Owo+PiAtCXU4CQkJYnVzX3N0YXJ0Owo+ PiAtCXU4CQkJYnVzX2VuZDsKPj4gLX07Cj4+ICtleHRlcm4gc3RydWN0IGxpc3RfaGVhZCBwY2lf bW1jZmdfbGlzdDsKPj4gIAo+PiAgI2lmZGVmIENPTkZJR19QQ0lfUVVJUktTCj4+ICBzdHJ1Y3Qg bWNmZ19maXh1cCB7Cj4+IEBAIC0yMTQsMTYgKzIwNywxMyBAQCBzdGF0aWMgdm9pZCBwY2lfbWNm Z19hcHBseV9xdWlya3Moc3RydWN0IGFjcGlfcGNpX3Jvb3QgKnJvb3QsCj4+ICAjZW5kaWYKPj4g IH0KPj4gIAo+PiAtLyogTGlzdCB0byBzYXZlIE1DRkcgZW50cmllcyAqLwo+PiAtc3RhdGljIExJ U1RfSEVBRChwY2lfbWNmZ19saXN0KTsKPj4gLQo+PiAgaW50IHBjaV9tY2ZnX2xvb2t1cChzdHJ1 Y3QgYWNwaV9wY2lfcm9vdCAqcm9vdCwgc3RydWN0IHJlc291cmNlICpjZmdyZXMsCj4+ICAJCSAg ICBjb25zdCBzdHJ1Y3QgcGNpX2VjYW1fb3BzICoqZWNhbV9vcHMpCj4+ICB7Cj4+ICAJY29uc3Qg c3RydWN0IHBjaV9lY2FtX29wcyAqb3BzID0gJnBjaV9nZW5lcmljX2VjYW1fb3BzOwo+PiAgCXN0 cnVjdCByZXNvdXJjZSAqYnVzX3JlcyA9ICZyb290LT5zZWNvbmRhcnk7Cj4+ICAJdTE2IHNlZyA9 IHJvb3QtPnNlZ21lbnQ7Cj4+IC0Jc3RydWN0IG1jZmdfZW50cnkgKmU7Cj4+ICsJc3RydWN0IHBj aV9tbWNmZ19yZWdpb24gKmU7Cj4+ICAJc3RydWN0IHJlc291cmNlIHJlczsKPj4gIAo+PiAgCS8q IFVzZSBhZGRyZXNzIGZyb20gX0NCQSBpZiBwcmVzZW50LCBvdGhlcndpc2UgbG9va3VwIE1DRkcg Ki8KPj4gQEAgLTIzMywxMCArMjIzLDEwIEBAIGludCBwY2lfbWNmZ19sb29rdXAoc3RydWN0IGFj cGlfcGNpX3Jvb3QgKnJvb3QsIHN0cnVjdCByZXNvdXJjZSAqY2ZncmVzLAo+PiAgCS8qCj4+ICAJ ICogV2UgZXhwZWN0IHRoZSByYW5nZSBpbiBidXNfcmVzIGluIHRoZSBjb3ZlcmFnZSBvZiBNQ0ZH IGJ1cyByYW5nZS4KPj4gIAkgKi8KPj4gLQlsaXN0X2Zvcl9lYWNoX2VudHJ5KGUsICZwY2lfbWNm Z19saXN0LCBsaXN0KSB7Cj4+IC0JCWlmIChlLT5zZWdtZW50ID09IHNlZyAmJiBlLT5idXNfc3Rh cnQgPD0gYnVzX3Jlcy0+c3RhcnQgJiYKPj4gLQkJICAgIGUtPmJ1c19lbmQgPj0gYnVzX3Jlcy0+ ZW5kKSB7Cj4+IC0JCQlyb290LT5tY2ZnX2FkZHIgPSBlLT5hZGRyOwo+PiArCWxpc3RfZm9yX2Vh Y2hfZW50cnkoZSwgJnBjaV9tbWNmZ19saXN0LCBsaXN0KSB7Cj4+ICsJCWlmIChlLT5zZWdtZW50 ID09IHNlZyAmJiBlLT5zdGFydF9idXMgPD0gYnVzX3Jlcy0+c3RhcnQgJiYKPj4gKwkJICAgIGUt PmVuZF9idXMgPj0gYnVzX3Jlcy0+ZW5kKSB7Cj4+ICsJCQlyb290LT5tY2ZnX2FkZHIgPSBlLT5h ZGRyZXNzOwo+PiAgCQl9Cj4+ICAKPj4gIAl9Cj4+IEBAIC0yNjgsNyArMjU4LDcgQEAgc3RhdGlj IF9faW5pdCBpbnQgcGNpX21jZmdfcGFyc2Uoc3RydWN0IGFjcGlfdGFibGVfaGVhZGVyICpoZWFk ZXIpCj4+ICB7Cj4+ICAJc3RydWN0IGFjcGlfdGFibGVfbWNmZyAqbWNmZzsKPj4gIAlzdHJ1Y3Qg YWNwaV9tY2ZnX2FsbG9jYXRpb24gKm1wdHI7Cj4+IC0Jc3RydWN0IG1jZmdfZW50cnkgKmUsICph cnI7Cj4+ICsJc3RydWN0IHBjaV9tbWNmZ19yZWdpb24gKmUsICphcnI7Cj4+ICAJaW50IGksIG47 Cj4+ICAKPj4gIAlpZiAoaGVhZGVyLT5sZW5ndGggPCBzaXplb2Yoc3RydWN0IGFjcGlfdGFibGVf bWNmZykpCj4+IEBAIC0yODUsMTAgKzI3NSwxMiBAQCBzdGF0aWMgX19pbml0IGludCBwY2lfbWNm Z19wYXJzZShzdHJ1Y3QgYWNwaV90YWJsZV9oZWFkZXIgKmhlYWRlcikKPj4gIAo+PiAgCWZvciAo aSA9IDAsIGUgPSBhcnI7IGkgPCBuOyBpKyssIG1wdHIrKywgZSsrKSB7Cj4+ICAJCWUtPnNlZ21l bnQgPSBtcHRyLT5wY2lfc2VnbWVudDsKPj4gLQkJZS0+YWRkciA9ICBtcHRyLT5hZGRyZXNzOwo+ PiAtCQllLT5idXNfc3RhcnQgPSBtcHRyLT5zdGFydF9idXNfbnVtYmVyOwo+PiAtCQllLT5idXNf ZW5kID0gbXB0ci0+ZW5kX2J1c19udW1iZXI7Cj4+IC0JCWxpc3RfYWRkKCZlLT5saXN0LCAmcGNp X21jZmdfbGlzdCk7Cj4+ICsJCWUtPmFkZHJlc3MgPSAgbXB0ci0+YWRkcmVzczsKPj4gKwkJZS0+ c3RhcnRfYnVzID0gbXB0ci0+c3RhcnRfYnVzX251bWJlcjsKPj4gKwkJZS0+ZW5kX2J1cyA9IG1w dHItPmVuZF9idXNfbnVtYmVyOwo+PiArCQllLT5yZXMuc3RhcnQgPSBlLT5hZGRyZXNzICsgUENJ X01NQ0ZHX0JVU19PRkZTRVQoZS0+c3RhcnRfYnVzKTsKPj4gKwkJZS0+cmVzLmVuZCA9IGUtPmFk ZHJlc3MgKyBQQ0lfTU1DRkdfQlVTX09GRlNFVChlLT5lbmRfYnVzICsgMSkgLSAxOwo+PiArCQls aXN0X2FkZCgmZS0+bGlzdCwgJnBjaV9tbWNmZ19saXN0KTsKPj4gIAl9Cj4+ICAKPj4gICNpZmRl ZiBDT05GSUdfUENJX1FVSVJLUwo+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9wY2kvcGNpLmMgYi9k cml2ZXJzL3BjaS9wY2kuYwo+PiBpbmRleCBjZTJhYjYyLi44OTkwMDRlIDEwMDY0NAo+PiAtLS0g YS9kcml2ZXJzL3BjaS9wY2kuYwo+PiArKysgYi9kcml2ZXJzL3BjaS9wY2kuYwo+PiBAQCAtNDcs NiArNDcsOCBAQAo+PiAgaW50IHBjaV9wY2lfcHJvYmxlbXM7Cj4+ICBFWFBPUlRfU1lNQk9MKHBj aV9wY2lfcHJvYmxlbXMpOwo+PiAgCj4+ICtMSVNUX0hFQUQocGNpX21tY2ZnX2xpc3QpOwo+PiAr Cj4+ICB1bnNpZ25lZCBpbnQgcGNpX3BtX2QzaG90X2RlbGF5Owo+PiAgCj4+ICBzdGF0aWMgdm9p ZCBwY2lfcG1lX2xpc3Rfc2NhbihzdHJ1Y3Qgd29ya19zdHJ1Y3QgKndvcmspOwo+PiBkaWZmIC0t Z2l0IGEvaW5jbHVkZS9saW51eC9wY2kuaCBiL2luY2x1ZGUvbGludXgvcGNpLmgKPj4gaW5kZXgg Y2Q4YWE2Zi4uNzFlNGMwNiAxMDA2NDQKPj4gLS0tIGEvaW5jbHVkZS9saW51eC9wY2kuaAo+PiAr KysgYi9pbmNsdWRlL2xpbnV4L3BjaS5oCj4+IEBAIC01NSw2ICs1NSwyMyBAQAo+PiAgI2RlZmlu ZSBQQ0lfUkVTRVRfUFJPQkUJCXRydWUKPj4gICNkZWZpbmUgUENJX1JFU0VUX0RPX1JFU0VUCWZh bHNlCj4+ICAKPj4gKyNkZWZpbmUgUENJX01NQ0ZHX0JVU19PRkZTRVQoYnVzKSAgICAgICgoYnVz KSA8PCAyMCkKPj4gKwo+PiArLyogIlBDSSBNTUNPTkZJRyAlMDR4IFtidXMgJTAyeC0lMDJ4XSIg Ki8KPj4gKyNkZWZpbmUgUENJX01NQ0ZHX1JFU09VUkNFX05BTUVfTEVOICgyMiArIDQgKyAyICsg MikKPj4gKwo+PiArLyogcGNpIG1jZmcgcmVnaW9uICovCj4+ICtzdHJ1Y3QgcGNpX21tY2ZnX3Jl Z2lvbiB7Cj4+ICsJc3RydWN0IGxpc3RfaGVhZCBsaXN0Owo+PiArCXN0cnVjdCByZXNvdXJjZSBy ZXM7Cj4+ICsJdTY0IGFkZHJlc3M7Cj4+ICsJY2hhciBfX2lvbWVtICp2aXJ0Owo+PiArCXUxNiBz ZWdtZW50Owo+PiArCXU4IHN0YXJ0X2J1czsKPj4gKwl1OCBlbmRfYnVzOwo+PiArCWNoYXIgbmFt ZVtQQ0lfTU1DRkdfUkVTT1VSQ0VfTkFNRV9MRU5dOwo+PiArfTsKPj4gKwo+PiAgLyoKPj4gICAq IFRoZSBQQ0kgaW50ZXJmYWNlIHRyZWF0cyBtdWx0aS1mdW5jdGlvbiBkZXZpY2VzIGFzIGluZGVw ZW5kZW50Cj4+ICAgKiBkZXZpY2VzLiAgVGhlIHNsb3QvZnVuY3Rpb24gYWRkcmVzcyBvZiBlYWNo IGRldmljZSBpcyBlbmNvZGVkCj4+IC0tIAo+PiAxLjguMy4xCj4+CgpfX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsaW51eC1hcm0ta2VybmVsIG1haWxpbmcg bGlzdApsaW51eC1hcm0ta2VybmVsQGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmlu ZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1hcm0ta2VybmVsCg==