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 ABF48CA0FF6 for ; Sat, 2 Sep 2023 04:52:55 +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:MIME-Version:References: Message-ID:Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=l9t9lppUb1gg/ghQWzAMDkw9QlsURBdlK4Nyaqe3QuI=; b=mXscS0B5pwKKOd H1Z3RPhsF/ibImLshpIRXkjOtYwcIZLai7CIcxwsmVA7zQFwsAfRmt9PqoF8AbGmxMP/O2Y+cM4+N Eob6940rwAqvqZ3XJ/GFmnJPpbdxSZNr2gI0UtRFo0qHP4XvbLagVve/6577WihYs/Y/PIwCWYSnw QHGkzyHqdNuQBS2TbSI+KMwj3VApxvWQiXfglLaPGOL//7ao8DQz99fW0R5fyAcwiJnaCF/DkXeTy nQo8P39msh2ZZcBKN9KVhl/0O5cA2ki+b3R4J0WQK4R21vC8m3YqS+hNpxnLrDDOZmtmz05svRoR/ +1CHac6y759cLQQkTg4w==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1qcIcZ-0013tZ-02; Sat, 02 Sep 2023 04:52:31 +0000 Received: from mail-pl1-x62e.google.com ([2607:f8b0:4864:20::62e]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1qcIcV-0013tA-35 for linux-arm-kernel@lists.infradead.org; Sat, 02 Sep 2023 04:52:29 +0000 Received: by mail-pl1-x62e.google.com with SMTP id d9443c01a7336-1bf1935f6c2so4016415ad.1 for ; Fri, 01 Sep 2023 21:52:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1693630346; x=1694235146; darn=lists.infradead.org; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date:from:to :cc:subject:date:message-id:reply-to; bh=ijD/QXgkfcmQQpjgZVWk02lSeb5Kah86yA9TYX6zx1I=; b=E+yZO8UPVxz/TdhXpURvmhrLLdVt88J1bXZlRkJYH4bexRdrLIaypVRjEy6ki+QKhD liKZFcDWLEo2fKavFNeYje7k2c/SiCEiM8VCaVO1x1rjmCi8s3oPs3TOBSVUdFJSW/TE NGxKaA4+WfVGV5wYC1rBzGjMmhgvNIRE0QUJXQSNEldzmV4IrVkfZryJG8nkG4nWC0Ny KJMwqNP3isFNyRmLQ8yXsIYYMzNzZpB7PjSBnN42CXdsGhiz4DZKapWe02df3PblTeIq nyo1MMcq/1dkdbDROsssjAd5GqZIamT4epVA5XcO7urkBezonybsrevVVJnmtFHvx6+D +6Lw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1693630346; x=1694235146; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=ijD/QXgkfcmQQpjgZVWk02lSeb5Kah86yA9TYX6zx1I=; b=TY3XagW7KPhljqvXiVtzAnWEtOg2HOc5xZ1yH28sFCbb7Z5pBZOYzxB2r60FDmnD5V it5gM4+0zt0fAPWm50R0poyHvRoT9Vp2Nt+zOyo/kvcJBcsyHi7y21MNyMvT9Hodjgu1 +ouCfqhCGBWjMsyCzfO+5W3PfpTv7ngY8VhIUrhzqAI8RCN0kGOjsz4ZvKCX2tyjJWZF ayDTR/GM05Yzm/FpEquINvvAGWRILFqyO0upJJYpwO6TlOiBSpJwH7wWvZCCiikycy9L 2zu3OUg7duYwCUf/Z4zdDcC75tjEJRO2CFXNtiIKLDql9NjF18DwQ5nMRMNY8Qkfb8e0 sFbA== X-Gm-Message-State: AOJu0YzBokdbX+hQCWNz/zz4q0vJTOKxNsQheeMSdEJsnTk9X1NHvguq SsZxE2Pebtq7MmF9FMgbqps/ X-Google-Smtp-Source: AGHT+IHn+lpzw9uFuVsUrK4hFksx30nUuJVmCY/9azhZGZuuOYfsE09NMsfHfbXcr11fLWIN9x+S/g== X-Received: by 2002:a17:902:ce83:b0:1bc:2fe1:1821 with SMTP id f3-20020a170902ce8300b001bc2fe11821mr6157887plg.17.1693630345688; Fri, 01 Sep 2023 21:52:25 -0700 (PDT) Received: from thinkpad ([117.217.187.8]) by smtp.gmail.com with ESMTPSA id u10-20020a170902e80a00b001aadd0d7364sm3794308plg.83.2023.09.01.21.52.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 01 Sep 2023 21:52:24 -0700 (PDT) Date: Sat, 2 Sep 2023 10:22:14 +0530 From: Manivannan Sadhasivam To: Frank Li Cc: tglx@linutronix.de, aisheng.dong@nxp.com, bhelgaas@google.com, devicetree@vger.kernel.org, festevam@gmail.com, imx@lists.linux.dev, jdmason@kudzu.us, kernel@pengutronix.de, kishon@ti.com, krzysztof.kozlowski+dt@linaro.org, kw@linux.com, linux-arm-kernel@lists.infradead.org, linux-imx@nxp.com, linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org, lorenzo.pieralisi@arm.com, lpieralisi@kernel.org, maz@kernel.org, ntb@lists.linux.dev, peng.fan@nxp.com, robh+dt@kernel.org, s.hauer@pengutronix.de, shawnguo@kernel.org Subject: Re: [PATCH 1/3] PCI: endpoint: Add RC-to-EP doorbell support using platform MSI controller Message-ID: <20230902045214.GA2913@thinkpad> References: <20230426203436.1277307-1-Frank.Li@nxp.com> <20230426203436.1277307-2-Frank.Li@nxp.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230426203436.1277307-2-Frank.Li@nxp.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230901_215228_047566_44D84438 X-CRM114-Status: GOOD ( 36.22 ) 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 T24gV2VkLCBBcHIgMjYsIDIwMjMgYXQgMDQ6MzQ6MzRQTSAtMDQwMCwgRnJhbmsgTGkgd3JvdGU6 Cj4gVGhpcyBjb21taXQgaW50cm9kdWNlcyBhIGNvbW1vbiBtZXRob2QgZm9yIHNlbmRpbmcgbWVz c2FnZXMgZnJvbSB0aGUgUm9vdCBDb21wbGV4Cj4gKFJDKSB0byB0aGUgRW5kcG9pbnQgKEVQKSBi eSB1dGlsaXppbmcgdGhlIHBsYXRmb3JtIE1TSSBpbnRlcnJ1cHQgY29udHJvbGxlciwKPiBzdWNo IGFzIEFSTSBHSUMsIGFzIGFuIEVQIGRvb3JiZWxsLiBNYXBzIHRoZSBtZW1vcnkgYXNzaWduZWQg Zm9yIHRoZSBCQVIgcmVnaW9uCj4gYnkgdGhlIFBDSSBob3N0IHRvIHRoZSBtZXNzYWdlIGFkZHJl c3Mgb2YgdGhlIHBsYXRmb3JtIE1TSSBpbnRlcnJ1cHQgY29udHJvbGxlcgo+IGluIHRoZSBQQ0kg RVAuIEFzIGEgcmVzdWx0LCB3aGVuIHRoZSBQQ0kgUkMgd3JpdGVzIHRvIHRoZSBCQVIgcmVnaW9u LCBpdCB0cmlnZ2Vycwo+IGFuIElSUSBhdCB0aGUgRVAuIFRoaXMgaW1wbGVtZW50YXRpb24gc2Vy dmVzIGFzIGEgY29tbW9uIG1ldGhvZCBmb3IgYWxsIGVuZHBvaW50Cj4gZnVuY3Rpb24gZHJpdmVy cy4KPiAKPiBIb3dldmVyLCBpdCBjdXJyZW50bHkgc3VwcG9ydHMgb25seSBvbmUgRVAgcGh5c2lj YWwgZnVuY3Rpb24gZHVlIHRvIGxpbWl0YXRpb25zCj4gaW4gQVJNIE1TSS9JTVMgcmVhZGluZXNz Lgo+IAoKSSd2ZSBwcm92aWRlZCBnZW5lcmljIGNvbW1lbnRzIGJlbG93LCBidXQgSSB3aWxsIGRv IG9uZSBtb3JlIHRob3JvdWdoIHJldmlldwphZnRlciBzZWVpbmcgZXBmLXRlc3QgZHJpdmVyIHBh dGNoLgoKPiBTaWduZWQtb2ZmLWJ5OiBGcmFuayBMaSA8RnJhbmsuTGlAbnhwLmNvbT4KPiAtLS0K PiAgZHJpdmVycy9wY2kvZW5kcG9pbnQvcGNpLWVwZi1jb3JlLmMgfCAxMDkgKysrKysrKysrKysr KysrKysrKysrKysrKysrKwo+ICBpbmNsdWRlL2xpbnV4L3BjaS1lcGYuaCAgICAgICAgICAgICB8 ICAxNiArKysrCj4gIDIgZmlsZXMgY2hhbmdlZCwgMTI1IGluc2VydGlvbnMoKykKPiAKPiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9wY2kvZW5kcG9pbnQvcGNpLWVwZi1jb3JlLmMgYi9kcml2ZXJzL3Bj aS9lbmRwb2ludC9wY2ktZXBmLWNvcmUuYwo+IGluZGV4IDM1NWE2ZjU2ZmNlYS4uOTRhYzgyYmY4 NGM1IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvcGNpL2VuZHBvaW50L3BjaS1lcGYtY29yZS5jCj4g KysrIGIvZHJpdmVycy9wY2kvZW5kcG9pbnQvcGNpLWVwZi1jb3JlLmMKPiBAQCAtNiwxMCArNiwx MiBAQAo+ICAgKiBBdXRob3I6IEtpc2hvbiBWaWpheSBBYnJhaGFtIEkgPGtpc2hvbkB0aS5jb20+ Cj4gICAqLwo+ICAKPiArI2luY2x1ZGUgPGxpbnV4L2lycXJldHVybi5oPgoKV2h5IGlzIHRoaXMg bmVlZGVkPwoKPiAgI2luY2x1ZGUgPGxpbnV4L2RldmljZS5oPgo+ICAjaW5jbHVkZSA8bGludXgv ZG1hLW1hcHBpbmcuaD4KPiAgI2luY2x1ZGUgPGxpbnV4L3NsYWIuaD4KPiAgI2luY2x1ZGUgPGxp bnV4L21vZHVsZS5oPgo+ICsjaW5jbHVkZSA8bGludXgvbXNpLmg+Cj4gIAo+ICAjaW5jbHVkZSA8 bGludXgvcGNpLWVwYy5oPgo+ICAjaW5jbHVkZSA8bGludXgvcGNpLWVwZi5oPgo+IEBAIC0zMDAs NiArMzAyLDExMyBAQCB2b2lkICpwY2lfZXBmX2FsbG9jX3NwYWNlKHN0cnVjdCBwY2lfZXBmICpl cGYsIHNpemVfdCBzaXplLCBlbnVtIHBjaV9iYXJubyBiYXIsCj4gIH0KPiAgRVhQT1JUX1NZTUJP TF9HUEwocGNpX2VwZl9hbGxvY19zcGFjZSk7Cj4gIAo+ICtzdGF0aWMgZW51bSBpcnFyZXR1cm4g cGNpX2VwZl9pbnRlcnJ1cHRfaGFuZGxlcihpbnQgaXJxLCB2b2lkICpkYXRhKQoKc3RhdGljIGly cXJldHVybl90CgpzL3BjaV9lcGZfaW50ZXJydXB0X2hhbmRsZXIvcGNpX2VwZl9kb29yYmVsbF9o YW5kbGVyCgo+ICt7Cj4gKwlzdHJ1Y3QgcGNpX2VwZiAqZXBmID0gZGF0YTsKPiArCj4gKwlpZiAo ZXBmLT5ldmVudF9vcHMgJiYgZXBmLT5ldmVudF9vcHMtPmRvb3JiZWxsKQo+ICsJCWVwZi0+ZXZl bnRfb3BzLT5kb29yYmVsbChlcGYsIGlycSAtIGVwZi0+dmlycV9iYXNlKTsKPiArCj4gKwlyZXR1 cm4gSVJRX0hBTkRMRUQ7Cj4gK30KPiArCj4gK3N0YXRpYyB2b2lkIHBjaV9lcGZfd3JpdGVfbXNp X21zZyhzdHJ1Y3QgbXNpX2Rlc2MgKmRlc2MsIHN0cnVjdCBtc2lfbXNnICptc2cpCj4gK3sKPiAr CXN0cnVjdCBwY2lfZXBjICplcGMgPSBjb250YWluZXJfb2YoZGVzYy0+ZGV2LCBzdHJ1Y3QgcGNp X2VwYywgZGV2KTsKPiArCXN0cnVjdCBwY2lfZXBmICplcGY7Cj4gKwo+ICsJLyogVG9kbzogTmVl ZCBjaGVjayBjb3JyZWN0IGVwZiBpZiBtdWx0aSBlcGYgc3VwcG9ydGVkICovCj4gKwlsaXN0X2Zv cl9lYWNoX2VudHJ5KGVwZiwgJmVwYy0+cGNpX2VwZiwgbGlzdCkgewo+ICsJCWlmIChlcGYtPm1z ZyAmJiBkZXNjLT5tc2lfaW5kZXggPCBlcGYtPm51bV9tc2dzKQo+ICsJCQllcGYtPm1zZ1tkZXNj LT5tc2lfaW5kZXhdID0gKm1zZzsKPiArCX0KPiArfQo+ICsKPiAraW50IHBjaV9lcGZfYWxsb2Nf ZG9vcmJlbGwoc3RydWN0IHBjaV9lcGYgKmVwZiwgdTE2IG51bV9tc2dzKQo+ICt7Cj4gKwlzdHJ1 Y3QgaXJxX2RvbWFpbiAqZG9tYWluOwo+ICsJc3RydWN0IHBjaV9lcGMgKmVwYzsKPiArCXN0cnVj dCBkZXZpY2UgKmRldjsKPiArCWludCB2aXJxOwo+ICsJaW50IHJldDsKPiArCWludCBpOwo+ICsK PiArCWVwYyA9IGVwZi0+ZXBjOwo+ICsJZGV2ID0gJmVwYy0+ZGV2OwoKImVwY19kZXYiIHRvIG1h a2UgaXQgZXhwbGljaXQKCj4gKwo+ICsJLyoKPiArCSAqIEN1cnJlbnQgb25seSBzdXBwb3J0IDEg ZnVuY3Rpb24uCgpXaGF0IGRvZXMgdGhpcyBtZWFuIGV4YWN0bHk/IEV2ZW4gYSBzaW5nbGUgRVBD IGNhbiBzdXBwb3J0IG11bHRpcGxlIEVQRnMKCj4gKwkgKiBQQ0kgSU1TKGludGVycnVwdCBtZXNz YWdlIHN0b3JlKSBBUk0gc3VwcG9ydCBoYXZlIG5vdCBiZWVuCj4gKwkgKiByZWFkeSB5ZXQuCgpO byBuZWVkIHRvIG1lbnRpb24gcGxhdGZvcm0gaXJxIGNvbnRyb2xsZXIgbmFtZS4KCj4gKwkgKi8K PiArCWlmIChlcGMtPmZ1bmN0aW9uX251bV9tYXAgIT0gMSkKCldoeSBjYW4ndCB5b3UgdXNlLCBl cGYtPmZ1bmNfbm8/Cgo+ICsJCXJldHVybiAtRU9QTk9UU1VQUDsKPiArCj4gKwlkb21haW4gPSBk ZXZfZ2V0X21zaV9kb21haW4oZGV2LT5wYXJlbnQpOwo+ICsJaWYgKCFkb21haW4pCj4gKwkJcmV0 dXJuIC1FT1BOVFNVUFA7CgpOZXdsaW5lCgo+ICsJZGV2X3NldF9tc2lfZG9tYWluKGRldiwgZG9t YWluKTsKPiArCj4gKwkvKiB1c2UgcGFyZW50IG9mX25vZGUgdG8gZ2V0IGRldmljZSBpZCBpbmZv cm1hdGlvbiAqLwo+ICsJZGV2LT5vZl9ub2RlID0gZGV2LT5wYXJlbnQtPm9mX25vZGU7Cj4gKwoK V2h5IGRvIHlvdSBuZWVkIG9mX25vZGUgYXNzaWdubWVudCBpbnNpZGUgRVBGIGNvcmU/Cgo+ICsJ ZXBmLT5tc2cgPSBrY2FsbG9jKG51bV9tc2dzLCBzaXplb2Yoc3RydWN0IG1zaV9tc2cpLCBHRlBf S0VSTkVMKTsKPiArCWlmICghZXBmLT5tc2cpCj4gKwkJcmV0dXJuIC1FTk9NRU07Cj4gKwo+ICsJ ZXBmLT5udW1fbXNncyA9IG51bV9tc2dzOwo+ICsKCk1vdmUgdGhpcyB0byB0aGUgc3RhcnQgb2Yg dGhlIGZ1bmN0aW9uLCBhZnRlciBjaGVja3MuCgo+ICsJcmV0ID0gcGxhdGZvcm1fbXNpX2RvbWFp bl9hbGxvY19pcnFzKGRldiwgbnVtX21zZ3MsIHBjaV9lcGZfd3JpdGVfbXNpX21zZyk7Cj4gKwlp ZiAocmV0KSB7Cj4gKwkJZGV2X2VycihkZXYsICJDYW4ndCBhbGxvY2F0ZSBNU0kgZnJvbSBzeXN0 ZW0gTVNJIGNvbnRyb2xsZXJcbiIpOwoKIkZhaWxlZCB0byBhbGxvY2F0ZSBNU0kiCgo+ICsJCWdv dG8gZXJyX21lbTsKCmVycl9mcmVlX21lbQoKPiArCX0KPiArCj4gKwlmb3IgKGkgPSAwOyBpIDwg bnVtX21zZ3M7IGkrKykgewo+ICsJCXZpcnEgPSBtc2lfZ2V0X3ZpcnEoZGV2LCBpKTsKPiArCQlp ZiAoaSA9PSAwKQo+ICsJCQllcGYtPnZpcnFfYmFzZSA9IHZpcnE7Cj4gKwo+ICsJCXJldCA9IHJl cXVlc3RfaXJxKHZpcnEsIHBjaV9lcGZfaW50ZXJydXB0X2hhbmRsZXIsIDAsCj4gKwkJCQkgICJw Y2ktZXBmLWRvb3JiZWxsIiwgZXBmKTsKCklSUSBuYW1lIHNob3VsZCBoYXZlIGFuIGluZGV4LCBv dGhlcndpc2UgYWxsIG9mIHRoZW0gd2lsbCBoYXZlIHRoZSBzYW1lIG5hbWUuCgo+ICsKPiArCQlp ZiAocmV0KSB7Cj4gKwkJCWRldl9lcnIoZGV2LCAiRmFpbHVyZSByZXF1ZXN0IGRvb3JiZWxsIElS UVxuIik7CgoiRmFpbGVkIHRvIHJlcXVlc3QgZG9vcmJlbGwiCgo+ICsJCQlnb3RvIGVycl9pcnE7 CgplcnJfZnJlZV9pcnEKCj4gKwkJfQo+ICsJfQo+ICsKPiArCWVwZi0+bnVtX21zZ3MgPSBudW1f bXNnczsKCk5ld2xpbmUKCj4gKwlyZXR1cm4gcmV0Owo+ICsKPiArZXJyX2lycToKPiArCXBsYXRm b3JtX21zaV9kb21haW5fZnJlZV9pcnFzKGRldik7Cj4gK2Vycl9tZW06Cj4gKwlrZnJlZShlcGYt Pm1zZyk7Cj4gKwllcGYtPm1zZyA9IE5VTEw7Cj4gKwllcGYtPm51bV9tc2dzID0gMDsKPiArCj4g KwlyZXR1cm4gcmV0Owo+ICt9Cj4gK0VYUE9SVF9TWU1CT0xfR1BMKHBjaV9lcGZfYWxsb2NfZG9v cmJlbGwpOwo+ICsKPiArdm9pZCBwY2lfZXBmX2ZyZWVfZG9vcmJlbGwoc3RydWN0IHBjaV9lcGYg KmVwZikKPiArewo+ICsJc3RydWN0IHBjaV9lcGMgKmVwYzsKPiArCWludCBpOwo+ICsKPiArCWVw YyA9IGVwZi0+ZXBjOwo+ICsKPiArCWZvciAoaSA9IDA7IGkgPCBlcGYtPm51bV9tc2dzOyBpKysp Cj4gKwkJZnJlZV9pcnEoZXBmLT52aXJxX2Jhc2UgKyBpLCBlcGYpOwo+ICsKPiArCXBsYXRmb3Jt X21zaV9kb21haW5fZnJlZV9pcnFzKCZlcGMtPmRldik7Cj4gKwlrZnJlZShlcGYtPm1zZyk7Cj4g KwllcGYtPm1zZyA9IE5VTEw7Cj4gKwllcGYtPm51bV9tc2dzID0gMDsKPiArfQo+ICtFWFBPUlRf U1lNQk9MX0dQTChwY2lfZXBmX2ZyZWVfZG9vcmJlbGwpOwo+ICsKPiAgc3RhdGljIHZvaWQgcGNp X2VwZl9yZW1vdmVfY2ZzKHN0cnVjdCBwY2lfZXBmX2RyaXZlciAqZHJpdmVyKQo+ICB7Cj4gIAlz dHJ1Y3QgY29uZmlnX2dyb3VwICpncm91cCwgKnRtcDsKPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9s aW51eC9wY2ktZXBmLmggYi9pbmNsdWRlL2xpbnV4L3BjaS1lcGYuaAo+IGluZGV4IGI4NDQxZGIy ZmE1Mi4uZTE4N2UzZWU0OGQyIDEwMDY0NAo+IC0tLSBhL2luY2x1ZGUvbGludXgvcGNpLWVwZi5o Cj4gKysrIGIvaW5jbHVkZS9saW51eC9wY2ktZXBmLmgKPiBAQCAtNzUsNiArNzUsNyBAQCBzdHJ1 Y3QgcGNpX2VwZl9vcHMgewo+ICBzdHJ1Y3QgcGNpX2VwY19ldmVudF9vcHMgewo+ICAJaW50ICgq Y29yZV9pbml0KShzdHJ1Y3QgcGNpX2VwZiAqZXBmKTsKPiAgCWludCAoKmxpbmtfdXApKHN0cnVj dCBwY2lfZXBmICplcGYpOwo+ICsJaW50ICgqZG9vcmJlbGwpKHN0cnVjdCBwY2lfZXBmICplcGYs IGludCBpbmRleCk7Cj4gIH07Cj4gIAo+ICAvKioKPiBAQCAtMTczLDYgKzE3NCw5IEBAIHN0cnVj dCBwY2lfZXBmIHsKPiAgCXVuc2lnbmVkIGxvbmcJCXZmdW5jdGlvbl9udW1fbWFwOwo+ICAJc3Ry dWN0IGxpc3RfaGVhZAlwY2lfdmVwZjsKPiAgCWNvbnN0IHN0cnVjdCBwY2lfZXBjX2V2ZW50X29w cyAqZXZlbnRfb3BzOwo+ICsJc3RydWN0IG1zaV9tc2cgKm1zZzsKPiArCXUxNiBudW1fbXNnczsK PiArCWludCB2aXJxX2Jhc2U7Cj4gIH07Cj4gIAo+ICAvKioKPiBAQCAtMjE2LDQgKzIyMCwxNiBA QCBpbnQgcGNpX2VwZl9iaW5kKHN0cnVjdCBwY2lfZXBmICplcGYpOwo+ICB2b2lkIHBjaV9lcGZf dW5iaW5kKHN0cnVjdCBwY2lfZXBmICplcGYpOwo+ICBpbnQgcGNpX2VwZl9hZGRfdmVwZihzdHJ1 Y3QgcGNpX2VwZiAqZXBmX3BmLCBzdHJ1Y3QgcGNpX2VwZiAqZXBmX3ZmKTsKPiAgdm9pZCBwY2lf ZXBmX3JlbW92ZV92ZXBmKHN0cnVjdCBwY2lfZXBmICplcGZfcGYsIHN0cnVjdCBwY2lfZXBmICpl cGZfdmYpOwo+ICtpbnQgcGNpX2VwZl9hbGxvY19kb29yYmVsbChzdHJ1Y3QgcGNpX2VwZiAqZXBm LCB1MTYgbnVtcyk7Cj4gK3ZvaWQgcGNpX2VwZl9mcmVlX2Rvb3JiZWxsKHN0cnVjdCBwY2lfZXBm ICplcGYpOwo+ICsKPiArc3RhdGljIGlubGluZSBzdHJ1Y3QgbXNpX21zZyAqZXBmX2dldF9tc2co c3RydWN0IHBjaV9lcGYgKmVwZikKPiArewo+ICsJcmV0dXJuIGVwZi0+bXNnOwo+ICt9Cj4gKwo+ ICtzdGF0aWMgaW5saW5lIHUxNiBlcGZfZ2V0X21zZ19udW0oc3RydWN0IHBjaV9lcGYgKmVwZikK PiArewo+ICsJcmV0dXJuIGVwZi0+bnVtX21zZ3M7Cj4gK30KCkkgZG9uJ3Qgc2VlIGEgbmVlZCBm b3IgdGhlc2UgdHdvIGZ1bmN0aW9ucyBhcyB0aGV5IGFyZSBkb2luZyBqdXN0IGRlcmVmZXJlbmNl cy4KCi0gTWFuaQoKPiAgI2VuZGlmIC8qIF9fTElOVVhfUENJX0VQRl9IICovCj4gLS0gCj4gMi4z NC4xCj4gCgotLSAK4K6u4K6j4K6/4K614K6j4K+N4K6j4K6p4K+NIOCumuCupOCuvuCumuCuv+Cu teCuruCvjQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K bGludXgtYXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgtYXJtLWtlcm5lbEBsaXN0cy5pbmZy YWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGlu dXgtYXJtLWtlcm5lbAo=