From nobody Sun Dec 14 06:20:33 2025 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 9B14AC04A68 for ; Wed, 27 Jul 2022 17:53:28 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S243186AbiG0RxZ (ORCPT ); Wed, 27 Jul 2022 13:53:25 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58648 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S242940AbiG0RxA (ORCPT ); Wed, 27 Jul 2022 13:53:00 -0400 Received: from mail-pj1-x1036.google.com (mail-pj1-x1036.google.com [IPv6:2607:f8b0:4864:20::1036]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A1311974AB for ; Wed, 27 Jul 2022 09:57:42 -0700 (PDT) Received: by mail-pj1-x1036.google.com with SMTP id q7-20020a17090a7a8700b001f300db8677so2718084pjf.5 for ; Wed, 27 Jul 2022 09:57:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=7Xh1YsWgeIhLV/qWna0t1xQte21GlqcP6EU1Jx3cAms=; b=CqZ/lqnhF6IImbTBvsWfWrQmUaK8G9r4Mlg6BDThEhHFoERyjdua0eCW5JToS5IQT+ 7OYD3k65OCiLl+1IGNW/wntfYLb/XWkWkh/bykvylsRO11EvTnXwQpk6HxjZIp8xhdna QsutvcXw3QY4APZ3NbIOGSwLK2XLKCPz99cRo= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=7Xh1YsWgeIhLV/qWna0t1xQte21GlqcP6EU1Jx3cAms=; b=yqt1fWQGj1WjDi4lWCX5iwSHfmte/tKCd8fBbULxr91Rx6KQgFQHGgin4NQSUFHy+m d7SwXIq29BbtDIykt2Vj9QXM9YY7I+5yspDO10ey921okVHLchljfQsuOCnCQwcNgPlj cblvHoosfCmRSQOhg7df2xokcdYWr7stf84c4GyrKi1O6oBZXfn73ChIXNc+yqxQ/P8t bXE2a90H9d/f2ProrUgpSsP+TSsAS/B73TLmUGLxL3OQPO8R1Scp/qYWQ5+kIuGgQmvZ Ohjg9at5gQf8QND9oR+9IBTBZgcvGEboaqM1Dzd7+l0xPRyfN8bLilMTX9G9dVL1K1J4 18Dw== X-Gm-Message-State: AJIora/l+Cw0rLNBFOjTcIO63lEkh/jOVzoD0eI/PfCqNBvW7nvdlmNq 1MTSX7U+tsVOySulPclZgmyCrw== X-Google-Smtp-Source: AGRyM1v0NvD7FYUDPm8yK4zwPHs2vHGqjgz7OJToLnZdC/i8qnzbKHTHjpxeUyP62PGfQcq47chsiQ== X-Received: by 2002:a17:902:f705:b0:16b:9b6d:67a1 with SMTP id h5-20020a170902f70500b0016b9b6d67a1mr23119291plo.39.1658941061768; Wed, 27 Jul 2022 09:57:41 -0700 (PDT) Received: from rahul_yocto_ubuntu18.ibn.broadcom.net ([192.19.234.250]) by smtp.gmail.com with ESMTPSA id c15-20020a631c0f000000b0040c74f0cdb5sm12280280pgc.6.2022.07.27.09.57.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 27 Jul 2022 09:57:41 -0700 (PDT) From: Vikas Gupta To: jiri@nvidia.com, kuba@kernel.org Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, davem@davemloft.net, dsahern@kernel.org, stephen@networkplumber.org, edumazet@google.com, pabeni@redhat.com, ast@kernel.org, leon@kernel.org, linux-doc@vger.kernel.org, corbet@lwn.net, michael.chan@broadcom.com, andrew.gospodarek@broadcom.com, Vikas Gupta Subject: [PATCH net-next v9 1/2] devlink: introduce framework for selftests Date: Wed, 27 Jul 2022 22:27:20 +0530 Message-Id: <20220727165721.37959-2-vikas.gupta@broadcom.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20220727165721.37959-1-vikas.gupta@broadcom.com> References: <20220727165721.37959-1-vikas.gupta@broadcom.com> Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-256; boundary="000000000000b89dc205e4cc50fd" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: quoted-printable --000000000000b89dc205e4cc50fd MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 QWRkIGEgZnJhbWV3b3JrIGZvciBydW5uaW5nIHNlbGZ0ZXN0cy4KRnJhbWV3b3JrIGV4cG9zZXMg ZGV2bGluayBjb21tYW5kcyBhbmQgdGVzdCBzdWl0ZShzKSB0byB0aGUgdXNlcgp0byBleGVjdXRl IGFuZCBxdWVyeSB0aGUgc3VwcG9ydGVkIHRlc3RzIGJ5IHRoZSBkcml2ZXIuCgpCZWxvdyBhcmUg bmV3IGVudHJpZXMgaW4gZGV2bGlua19ubF9vcHMKZGV2bGlua19ubF9jbWRfc2VsZnRlc3RzX3No b3dfZG9pdC9kdW1waXQ6IFRvIHF1ZXJ5IHRoZSBzdXBwb3J0ZWQKc2VsZnRlc3RzIGJ5IHRoZSBk cml2ZXJzLgpkZXZsaW5rX25sX2NtZF9zZWxmdGVzdHNfcnVuOiBUbyBleGVjdXRlIHNlbGZ0ZXN0 cy4gVXNlcnMgY2FuCnByb3ZpZGUgYSB0ZXN0IG1hc2sgZm9yIGV4ZWN1dGluZyBncm91cCB0ZXN0 cyBvciBzdGFuZGFsb25lIHRlc3RzLgoKRG9jdW1lbnRhdGlvbi9uZXR3b3JraW5nL2Rldmxpbmsv IHBhdGggaXMgYWxyZWFkeSBwYXJ0IG9mIE1BSU5UQUlORVJTICYKdGhlIG5ldyBmaWxlcyBjb21l IHVuZGVyIHRoaXMgcGF0aC4gSGVuY2Ugbm8gdXBkYXRlIG5lZWRlZCB0byB0aGUKTUFJTlRBSU5F UlMKClNpZ25lZC1vZmYtYnk6IFZpa2FzIEd1cHRhIDx2aWthcy5ndXB0YUBicm9hZGNvbS5jb20+ ClJldmlld2VkLWJ5OiBBbmR5IEdvc3BvZGFyZWsgPGdvc3BvQGJyb2FkY29tLmNvbT4KUmV2aWV3 ZWQtYnk6IEppcmkgUGlya28gPGppcmlAbnZpZGlhLmNvbT4KLS0tCiAuLi4vbmV0d29ya2luZy9k ZXZsaW5rL2Rldmxpbmstc2VsZnRlc3RzLnJzdCAgfCAgMzggKysrCiBpbmNsdWRlL25ldC9kZXZs aW5rLmggICAgICAgICAgICAgICAgICAgICAgICAgfCAgMjEgKysKIGluY2x1ZGUvdWFwaS9saW51 eC9kZXZsaW5rLmggICAgICAgICAgICAgICAgICB8ICAyOSArKysKIG5ldC9jb3JlL2Rldmxpbmsu YyAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDIxNiArKysrKysrKysrKysrKysrKysKIDQg ZmlsZXMgY2hhbmdlZCwgMzA0IGluc2VydGlvbnMoKykKIGNyZWF0ZSBtb2RlIDEwMDY0NCBEb2N1 bWVudGF0aW9uL25ldHdvcmtpbmcvZGV2bGluay9kZXZsaW5rLXNlbGZ0ZXN0cy5yc3QKCmRpZmYg LS1naXQgYS9Eb2N1bWVudGF0aW9uL25ldHdvcmtpbmcvZGV2bGluay9kZXZsaW5rLXNlbGZ0ZXN0 cy5yc3QgYi9Eb2N1bT0KZW50YXRpb24vbmV0d29ya2luZy9kZXZsaW5rL2Rldmxpbmstc2VsZnRl c3RzLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLmMwYWExZjNh ZWYwZAotLS0gL2Rldi9udWxsCisrKyBiL0RvY3VtZW50YXRpb24vbmV0d29ya2luZy9kZXZsaW5r L2Rldmxpbmstc2VsZnRlc3RzLnJzdApAQCAtMCwwICsxLDM4IEBACisuLiBTUERYLUxpY2Vuc2Ut SWRlbnRpZmllcjogKEdQTC0yLjAtb25seSBPUiBCU0QtMi1DbGF1c2UpCisKKz0zRD0zRD0zRD0z RD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRAorRGV2bGluayBTZWxmdGVz dHMKKz0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRAor CitUaGUgYGBkZXZsaW5rLXNlbGZ0ZXN0c2BgIEFQSSBhbGxvd3MgZXhlY3V0aW5nIHNlbGZ0ZXN0 cyBvbiB0aGUgZGV2aWNlLgorCitUZXN0cyBNYXNrCis9M0Q9M0Q9M0Q9M0Q9M0Q9M0Q9M0Q9M0Q9 M0Q9M0QKK1RoZSBgYGRldmxpbmstc2VsZnRlc3RzYGAgY29tbWFuZCBzaG91bGQgYmUgcnVuIHdp dGggYSBtYXNrIGluZGljYXRpbmcKK3RoZSB0ZXN0cyB0byBiZSBleGVjdXRlZC4KKworVGVzdHMg RGVzY3JpcHRpb24KKz0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0z RD0zRD0zRAorVGhlIGZvbGxvd2luZyBpcyBhIGxpc3Qgb2YgdGVzdHMgdGhhdCBkcml2ZXJzIG1h eSBleGVjdXRlLgorCisuLiBsaXN0LXRhYmxlOjogTGlzdCBvZiB0ZXN0cworICAgOndpZHRoczog NSA5MAorCisgICAqIC0gTmFtZQorICAgICAtIERlc2NyaXB0aW9uCisgICAqIC0gYGBERVZMSU5L X1NFTEZURVNUX0ZMQVNIYGAKKyAgICAgLSBEZXZpY2VzIG1heSBoYXZlIHRoZSBmaXJtd2FyZSBv biBub24tdm9sYXRpbGUgbWVtb3J5IG9uIHRoZSBib2FyZCwgPQplLmcuCisgICAgICAgZmxhc2gu IFRoaXMgcGFydGljdWxhciB0ZXN0IGhlbHBzIHRvIHJ1biBhIGZsYXNoIHNlbGZ0ZXN0IG9uIHRo ZSBkZT0KdmljZS4KKyAgICAgICBJbXBsZW1lbnRhdGlvbiBvZiB0aGUgdGVzdCBpcyBsZWZ0IHRv IHRoZSBkcml2ZXIvZmlybXdhcmUuCisKK2V4YW1wbGUgdXNhZ2UKKy0tLS0tLS0tLS0tLS0KKwor Li4gY29kZTo6IHNoZWxsCisKKyAgICAjIFF1ZXJ5IHNlbGZ0ZXN0cyBzdXBwb3J0ZWQgb24gdGhl IGRldmxpbmsgZGV2aWNlCisgICAgJCBkZXZsaW5rIGRldiBzZWxmdGVzdHMgc2hvdyBERVYKKyAg ICAjIFF1ZXJ5IHNlbGZ0ZXN0cyBzdXBwb3J0ZWQgb24gYWxsIGRldmxpbmsgZGV2aWNlcworICAg ICQgZGV2bGluayBkZXYgc2VsZnRlc3RzIHNob3cKKyAgICAjIEV4ZWN1dGVzIHNlbGZ0ZXN0cyBv biB0aGUgZGV2aWNlCisgICAgJCBkZXZsaW5rIGRldiBzZWxmdGVzdHMgcnVuIERFViBpZCBmbGFz aApkaWZmIC0tZ2l0IGEvaW5jbHVkZS9uZXQvZGV2bGluay5oIGIvaW5jbHVkZS9uZXQvZGV2bGlu ay5oCmluZGV4IDViZDNmYWMxMmU5ZS4uMTE5ZWQxZmZiOTg4IDEwMDY0NAotLS0gYS9pbmNsdWRl L25ldC9kZXZsaW5rLmgKKysrIGIvaW5jbHVkZS9uZXQvZGV2bGluay5oCkBAIC0xNTA5LDYgKzE1 MDksMjcgQEAgc3RydWN0IGRldmxpbmtfb3BzIHsKIAkJCQkgICAgc3RydWN0IGRldmxpbmtfcmF0 ZSAqcGFyZW50LAogCQkJCSAgICB2b2lkICpwcml2X2NoaWxkLCB2b2lkICpwcml2X3BhcmVudCwK IAkJCQkgICAgc3RydWN0IG5ldGxpbmtfZXh0X2FjayAqZXh0YWNrKTsKKwkvKioKKwkgKiBzZWxm dGVzdHNfY2hlY2soKSAtIHF1ZXJpZXMgaWYgc2VsZnRlc3QgaXMgc3VwcG9ydGVkCisJICogQGRl dmxpbms6IGRldmxpbmsgaW5zdGFuY2UKKwkgKiBAaWQ6IHRlc3QgaW5kZXgKKwkgKiBAZXh0YWNr OiBleHRhY2sgZm9yIHJlcG9ydGluZyBlcnJvciBtZXNzYWdlcworCSAqCisJICogUmV0dXJuOiB0 cnVlIGlmIHRlc3QgaXMgc3VwcG9ydGVkIGJ5IHRoZSBkcml2ZXIKKwkgKi8KKwlib29sICgqc2Vs ZnRlc3RfY2hlY2spKHN0cnVjdCBkZXZsaW5rICpkZXZsaW5rLCB1bnNpZ25lZCBpbnQgaWQsCisJ CQkgICAgICAgc3RydWN0IG5ldGxpbmtfZXh0X2FjayAqZXh0YWNrKTsKKwkvKioKKwkgKiBzZWxm dGVzdF9ydW4oKSAtIFJ1bnMgYSBzZWxmdGVzdAorCSAqIEBkZXZsaW5rOiBkZXZsaW5rIGluc3Rh bmNlCisJICogQGlkOiB0ZXN0IGluZGV4CisJICogQGV4dGFjazogZXh0YWNrIGZvciByZXBvcnRp bmcgZXJyb3IgbWVzc2FnZXMKKwkgKgorCSAqIFJldHVybjogc3RhdHVzIG9mIHRoZSB0ZXN0CisJ ICovCisJZW51bSBkZXZsaW5rX3NlbGZ0ZXN0X3N0YXR1cworCSgqc2VsZnRlc3RfcnVuKShzdHJ1 Y3QgZGV2bGluayAqZGV2bGluaywgdW5zaWduZWQgaW50IGlkLAorCQkJc3RydWN0IG5ldGxpbmtf ZXh0X2FjayAqZXh0YWNrKTsKIH07Cj0yMAogdm9pZCAqZGV2bGlua19wcml2KHN0cnVjdCBkZXZs aW5rICpkZXZsaW5rKTsKZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWFwaS9saW51eC9kZXZsaW5rLmgg Yi9pbmNsdWRlL3VhcGkvbGludXgvZGV2bGluay5oCmluZGV4IDU0MTMyMTY5NWY1Mi4uMmYyNGI1 M2E4N2E1IDEwMDY0NAotLS0gYS9pbmNsdWRlL3VhcGkvbGludXgvZGV2bGluay5oCisrKyBiL2lu Y2x1ZGUvdWFwaS9saW51eC9kZXZsaW5rLmgKQEAgLTEzNiw2ICsxMzYsOSBAQCBlbnVtIGRldmxp bmtfY29tbWFuZCB7CiAJREVWTElOS19DTURfTElORUNBUkRfTkVXLAogCURFVkxJTktfQ01EX0xJ TkVDQVJEX0RFTCwKPTIwCisJREVWTElOS19DTURfU0VMRlRFU1RTX0dFVCwJLyogY2FuIGR1bXAg Ki8KKwlERVZMSU5LX0NNRF9TRUxGVEVTVFNfUlVOLAorCiAJLyogYWRkIG5ldyBjb21tYW5kcyBh Ym92ZSBoZXJlICovCiAJX19ERVZMSU5LX0NNRF9NQVgsCiAJREVWTElOS19DTURfTUFYID0zRCBf X0RFVkxJTktfQ01EX01BWCAtIDEKQEAgLTI3Niw2ICsyNzksMzAgQEAgZW51bSB7CiAjZGVmaW5l IERFVkxJTktfU1VQUE9SVEVEX0ZMQVNIX09WRVJXUklURV9TRUNUSU9OUyBcCiAJKF9CSVRVTChf X0RFVkxJTktfRkxBU0hfT1ZFUldSSVRFX01BWF9CSVQpIC0gMSkKPTIwCitlbnVtIGRldmxpbmtf YXR0cl9zZWxmdGVzdF9pZCB7CisJREVWTElOS19BVFRSX1NFTEZURVNUX0lEX1VOU1BFQywKKwlE RVZMSU5LX0FUVFJfU0VMRlRFU1RfSURfRkxBU0gsCS8qIGZsYWcgKi8KKworCV9fREVWTElOS19B VFRSX1NFTEZURVNUX0lEX01BWCwKKwlERVZMSU5LX0FUVFJfU0VMRlRFU1RfSURfTUFYID0zRCBf X0RFVkxJTktfQVRUUl9TRUxGVEVTVF9JRF9NQVggLSAxCit9OworCitlbnVtIGRldmxpbmtfc2Vs ZnRlc3Rfc3RhdHVzIHsKKwlERVZMSU5LX1NFTEZURVNUX1NUQVRVU19TS0lQLAorCURFVkxJTktf U0VMRlRFU1RfU1RBVFVTX1BBU1MsCisJREVWTElOS19TRUxGVEVTVF9TVEFUVVNfRkFJTAorfTsK KworZW51bSBkZXZsaW5rX2F0dHJfc2VsZnRlc3RfcmVzdWx0IHsKKwlERVZMSU5LX0FUVFJfU0VM RlRFU1RfUkVTVUxUX1VOU1BFQywKKwlERVZMSU5LX0FUVFJfU0VMRlRFU1RfUkVTVUxULAkJLyog bmVzdGVkICovCisJREVWTElOS19BVFRSX1NFTEZURVNUX1JFU1VMVF9JRCwJLyogdTMyLCBlbnVt IGRldmxpbmtfYXR0cl9zZWxmdGVzdF9pZCAqLworCURFVkxJTktfQVRUUl9TRUxGVEVTVF9SRVNV TFRfU1RBVFVTLAkvKiB1OCwgZW51bSBkZXZsaW5rX3NlbGZ0ZXN0X3N0YXR1cyA9CiovCisKKwlf X0RFVkxJTktfQVRUUl9TRUxGVEVTVF9SRVNVTFRfTUFYLAorCURFVkxJTktfQVRUUl9TRUxGVEVT VF9SRVNVTFRfTUFYID0zRCBfX0RFVkxJTktfQVRUUl9TRUxGVEVTVF9SRVNVTFRfTUFYIC09CiAx Cit9OworCiAvKioKICAqIGVudW0gZGV2bGlua190cmFwX2FjdGlvbiAtIFBhY2tldCB0cmFwIGFj dGlvbi4KICAqIEBERVZMSU5LX1RSQVBfQUNUSU9OX0RST1A6IFBhY2tldCBpcyBkcm9wcGVkIGJ5 IHRoZSBkZXZpY2UgYW5kIGEgY29weSBpPQpzIG5vdApAQCAtNTc4LDYgKzYwNSw4IEBAIGVudW0g ZGV2bGlua19hdHRyIHsKPTIwCiAJREVWTElOS19BVFRSX05FU1RFRF9ERVZMSU5LLAkJLyogbmVz dGVkICovCj0yMAorCURFVkxJTktfQVRUUl9TRUxGVEVTVFMsCQkJLyogbmVzdGVkICovCisKIAkv KiBhZGQgbmV3IGF0dHJpYnV0ZXMgYWJvdmUgaGVyZSwgdXBkYXRlIHRoZSBwb2xpY3kgaW4gZGV2 bGluay5jICovCj0yMAogCV9fREVWTElOS19BVFRSX01BWCwKZGlmZiAtLWdpdCBhL25ldC9jb3Jl L2RldmxpbmsuYyBiL25ldC9jb3JlL2RldmxpbmsuYwppbmRleCA2OThiMmQ2ZTBlYzcuLjMyNzMw YWQyNTA4MSAxMDA2NDQKLS0tIGEvbmV0L2NvcmUvZGV2bGluay5jCisrKyBiL25ldC9jb3JlL2Rl dmxpbmsuYwpAQCAtMjAxLDYgKzIwMSwxMCBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IG5sYV9wb2xp Y3kgZGV2bGlua19mdW5jdGlvbl9ubF9wb2w9CmljeVtERVZMSU5LX1BPUlRfRlVOQ1RJT05fCiAJ CQkJIERFVkxJTktfUE9SVF9GTl9TVEFURV9BQ1RJVkUpLAogfTsKPTIwCitzdGF0aWMgY29uc3Qg c3RydWN0IG5sYV9wb2xpY3kgZGV2bGlua19zZWxmdGVzdF9ubF9wb2xpY3lbREVWTElOS19BVFRS X1NFTD0KRlRFU1RfSURfTUFYICsgMV0gPTNEIHsKKwlbREVWTElOS19BVFRSX1NFTEZURVNUX0lE X0ZMQVNIXSA9M0QgeyAudHlwZSA9M0QgTkxBX0ZMQUcgfSwKK307CisKIHN0YXRpYyBERUZJTkVf WEFSUkFZX0ZMQUdTKGRldmxpbmtzLCBYQV9GTEFHU19BTExPQyk7CiAjZGVmaW5lIERFVkxJTktf UkVHSVNURVJFRCBYQV9NQVJLXzEKPTIwCkBAIC00ODI3LDYgKzQ4MzEsMjA2IEBAIHN0YXRpYyBp bnQgZGV2bGlua19ubF9jbWRfZmxhc2hfdXBkYXRlKHN0cnVjdCBza19idT0KZmYgKnNrYiwKIAly ZXR1cm4gcmV0OwogfQo9MjAKK3N0YXRpYyBpbnQKK2Rldmxpbmtfbmxfc2VsZnRlc3RzX2ZpbGwo c3RydWN0IHNrX2J1ZmYgKm1zZywgc3RydWN0IGRldmxpbmsgKmRldmxpbmssCisJCQkgIHUzMiBw b3J0aWQsIHUzMiBzZXEsIGludCBmbGFncywKKwkJCSAgc3RydWN0IG5ldGxpbmtfZXh0X2FjayAq ZXh0YWNrKQoreworCXN0cnVjdCBubGF0dHIgKnNlbGZ0ZXN0czsKKwl2b2lkICpoZHI7CisJaW50 IGVycjsKKwlpbnQgaTsKKworCWhkciA9M0QgZ2VubG1zZ19wdXQobXNnLCBwb3J0aWQsIHNlcSwg JmRldmxpbmtfbmxfZmFtaWx5LCBmbGFncywKKwkJCSAgREVWTElOS19DTURfU0VMRlRFU1RTX0dF VCk7CisJaWYgKCFoZHIpCisJCXJldHVybiAtRU1TR1NJWkU7CisKKwllcnIgPTNEIC1FTVNHU0la RTsKKwlpZiAoZGV2bGlua19ubF9wdXRfaGFuZGxlKG1zZywgZGV2bGluaykpCisJCWdvdG8gZXJy X2NhbmNlbF9tc2c7CisKKwlzZWxmdGVzdHMgPTNEIG5sYV9uZXN0X3N0YXJ0KG1zZywgREVWTElO S19BVFRSX1NFTEZURVNUUyk7CisJaWYgKCFzZWxmdGVzdHMpCisJCWdvdG8gZXJyX2NhbmNlbF9t c2c7CisKKwlmb3IgKGkgPTNEIERFVkxJTktfQVRUUl9TRUxGVEVTVF9JRF9VTlNQRUMgKyAxOwor CSAgICAgaSA8PTNEIERFVkxJTktfQVRUUl9TRUxGVEVTVF9JRF9NQVg7IGkrKykgeworCQlpZiAo ZGV2bGluay0+b3BzLT5zZWxmdGVzdF9jaGVjayhkZXZsaW5rLCBpLCBleHRhY2spKSB7CisJCQll cnIgPTNEIG5sYV9wdXRfZmxhZyhtc2csIGkpOworCQkJaWYgKGVycikKKwkJCQlnb3RvIGVycl9j YW5jZWxfbXNnOworCQl9CisJfQorCisJbmxhX25lc3RfZW5kKG1zZywgc2VsZnRlc3RzKTsKKwln ZW5sbXNnX2VuZChtc2csIGhkcik7CisJcmV0dXJuIDA7CisKK2Vycl9jYW5jZWxfbXNnOgorCWdl bmxtc2dfY2FuY2VsKG1zZywgaGRyKTsKKwlyZXR1cm4gZXJyOworfQorCitzdGF0aWMgaW50IGRl dmxpbmtfbmxfY21kX3NlbGZ0ZXN0c19nZXRfZG9pdChzdHJ1Y3Qgc2tfYnVmZiAqc2tiLAorCQkJ CQkgICAgIHN0cnVjdCBnZW5sX2luZm8gKmluZm8pCit7CisJc3RydWN0IGRldmxpbmsgKmRldmxp bmsgPTNEIGluZm8tPnVzZXJfcHRyWzBdOworCXN0cnVjdCBza19idWZmICptc2c7CisJaW50IGVy cjsKKworCWlmICghZGV2bGluay0+b3BzLT5zZWxmdGVzdF9jaGVjaykKKwkJcmV0dXJuIC1FT1BO T1RTVVBQOworCisJbXNnID0zRCBubG1zZ19uZXcoTkxNU0dfREVGQVVMVF9TSVpFLCBHRlBfS0VS TkVMKTsKKwlpZiAoIW1zZykKKwkJcmV0dXJuIC1FTk9NRU07CisKKwllcnIgPTNEIGRldmxpbmtf bmxfc2VsZnRlc3RzX2ZpbGwobXNnLCBkZXZsaW5rLCBpbmZvLT5zbmRfcG9ydGlkLAorCQkJCQlp bmZvLT5zbmRfc2VxLCAwLCBpbmZvLT5leHRhY2spOworCWlmIChlcnIpIHsKKwkJbmxtc2dfZnJl ZShtc2cpOworCQlyZXR1cm4gZXJyOworCX0KKworCXJldHVybiBnZW5sbXNnX3JlcGx5KG1zZywg aW5mbyk7Cit9CisKK3N0YXRpYyBpbnQgZGV2bGlua19ubF9jbWRfc2VsZnRlc3RzX2dldF9kdW1w aXQoc3RydWN0IHNrX2J1ZmYgKm1zZywKKwkJCQkJICAgICAgIHN0cnVjdCBuZXRsaW5rX2NhbGxi YWNrICpjYikKK3sKKwlzdHJ1Y3QgZGV2bGluayAqZGV2bGluazsKKwlpbnQgc3RhcnQgPTNEIGNi LT5hcmdzWzBdOworCXVuc2lnbmVkIGxvbmcgaW5kZXg7CisJaW50IGlkeCA9M0QgMDsKKwlpbnQg ZXJyID0zRCAwOworCisJbXV0ZXhfbG9jaygmZGV2bGlua19tdXRleCk7CisJZGV2bGlua3NfeGFf Zm9yX2VhY2hfcmVnaXN0ZXJlZF9nZXQoc29ja19uZXQobXNnLT5zayksIGluZGV4LCBkZXZsaW5r KSB7CisJCWlmIChpZHggPCBzdGFydCB8fCAhZGV2bGluay0+b3BzLT5zZWxmdGVzdF9jaGVjaykK KwkJCWdvdG8gaW5jOworCisJCWRldmxfbG9jayhkZXZsaW5rKTsKKwkJZXJyID0zRCBkZXZsaW5r X25sX3NlbGZ0ZXN0c19maWxsKG1zZywgZGV2bGluaywKKwkJCQkJCU5FVExJTktfQ0IoY2ItPnNr YikucG9ydGlkLAorCQkJCQkJY2ItPm5saC0+bmxtc2dfc2VxLCBOTE1fRl9NVUxUSSwKKwkJCQkJ CWNiLT5leHRhY2spOworCQlkZXZsX3VubG9jayhkZXZsaW5rKTsKKwkJaWYgKGVycikgeworCQkJ ZGV2bGlua19wdXQoZGV2bGluayk7CisJCQlicmVhazsKKwkJfQoraW5jOgorCQlpZHgrKzsKKwkJ ZGV2bGlua19wdXQoZGV2bGluayk7CisJfQorCW11dGV4X3VubG9jaygmZGV2bGlua19tdXRleCk7 CisKKwlpZiAoZXJyICE9M0QgLUVNU0dTSVpFKQorCQlyZXR1cm4gZXJyOworCisJY2ItPmFyZ3Nb MF0gPTNEIGlkeDsKKwlyZXR1cm4gbXNnLT5sZW47Cit9CisKK3N0YXRpYyBpbnQgZGV2bGlua19z ZWxmdGVzdF9yZXN1bHRfcHV0KHN0cnVjdCBza19idWZmICpza2IsIHVuc2lnbmVkIGludCBpPQpk LAorCQkJCSAgICAgICBlbnVtIGRldmxpbmtfc2VsZnRlc3Rfc3RhdHVzIHRlc3Rfc3RhdHVzKQor eworCXN0cnVjdCBubGF0dHIgKnJlc3VsdF9hdHRyOworCisJcmVzdWx0X2F0dHIgPTNEIG5sYV9u ZXN0X3N0YXJ0KHNrYiwgREVWTElOS19BVFRSX1NFTEZURVNUX1JFU1VMVCk7CisJaWYgKCFyZXN1 bHRfYXR0cikKKwkJcmV0dXJuIC1FTVNHU0laRTsKKworCWlmIChubGFfcHV0X3UzMihza2IsIERF VkxJTktfQVRUUl9TRUxGVEVTVF9SRVNVTFRfSUQsIGlkKSB8fAorCSAgICBubGFfcHV0X3U4KHNr YiwgREVWTElOS19BVFRSX1NFTEZURVNUX1JFU1VMVF9TVEFUVVMsCisJCSAgICAgICB0ZXN0X3N0 YXR1cykpCisJCWdvdG8gbmxhX3B1dF9mYWlsdXJlOworCisJbmxhX25lc3RfZW5kKHNrYiwgcmVz dWx0X2F0dHIpOworCXJldHVybiAwOworCitubGFfcHV0X2ZhaWx1cmU6CisJbmxhX25lc3RfY2Fu Y2VsKHNrYiwgcmVzdWx0X2F0dHIpOworCXJldHVybiAtRU1TR1NJWkU7Cit9CisKK3N0YXRpYyBp bnQgZGV2bGlua19ubF9jbWRfc2VsZnRlc3RzX3J1bihzdHJ1Y3Qgc2tfYnVmZiAqc2tiLAorCQkJ CQlzdHJ1Y3QgZ2VubF9pbmZvICppbmZvKQoreworCXN0cnVjdCBubGF0dHIgKnRiW0RFVkxJTktf QVRUUl9TRUxGVEVTVF9JRF9NQVggKyAxXTsKKwlzdHJ1Y3QgZGV2bGluayAqZGV2bGluayA9M0Qg aW5mby0+dXNlcl9wdHJbMF07CisJc3RydWN0IG5sYXR0ciAqYXR0cnMsICpzZWxmdGVzdHM7CisJ c3RydWN0IHNrX2J1ZmYgKm1zZzsKKwl2b2lkICpoZHI7CisJaW50IGVycjsKKwlpbnQgaTsKKwor CWlmICghZGV2bGluay0+b3BzLT5zZWxmdGVzdF9ydW4gfHwgIWRldmxpbmstPm9wcy0+c2VsZnRl c3RfY2hlY2spCisJCXJldHVybiAtRU9QTk9UU1VQUDsKKworCWlmICghaW5mby0+YXR0cnNbREVW TElOS19BVFRSX1NFTEZURVNUU10pIHsKKwkJTkxfU0VUX0VSUl9NU0dfTU9EKGluZm8tPmV4dGFj aywgInNlbGZ0ZXN0IHJlcXVpcmVkIik7CisJCXJldHVybiAtRUlOVkFMOworCX0KKworCWF0dHJz ID0zRCBpbmZvLT5hdHRyc1tERVZMSU5LX0FUVFJfU0VMRlRFU1RTXTsKKworCWVyciA9M0Qgbmxh X3BhcnNlX25lc3RlZCh0YiwgREVWTElOS19BVFRSX1NFTEZURVNUX0lEX01BWCwgYXR0cnMsCisJ CQkgICAgICAgZGV2bGlua19zZWxmdGVzdF9ubF9wb2xpY3ksIGluZm8tPmV4dGFjayk7CisJaWYg KGVyciA8IDApCisJCXJldHVybiBlcnI7CisKKwltc2cgPTNEIG5sbXNnX25ldyhOTE1TR19ERUZB VUxUX1NJWkUsIEdGUF9LRVJORUwpOworCWlmICghbXNnKQorCQlyZXR1cm4gLUVOT01FTTsKKwor CWVyciA9M0QgLUVNU0dTSVpFOworCWhkciA9M0QgZ2VubG1zZ19wdXQobXNnLCBpbmZvLT5zbmRf cG9ydGlkLCBpbmZvLT5zbmRfc2VxLAorCQkJICAmZGV2bGlua19ubF9mYW1pbHksIDAsIERFVkxJ TktfQ01EX1NFTEZURVNUU19SVU4pOworCWlmICghaGRyKQorCQlnb3RvIGZyZWVfbXNnOworCisJ aWYgKGRldmxpbmtfbmxfcHV0X2hhbmRsZShtc2csIGRldmxpbmspKQorCQlnb3RvIGdlbmxtc2df Y2FuY2VsOworCisJc2VsZnRlc3RzID0zRCBubGFfbmVzdF9zdGFydChtc2csIERFVkxJTktfQVRU Ul9TRUxGVEVTVFMpOworCWlmICghc2VsZnRlc3RzKQorCQlnb3RvIGdlbmxtc2dfY2FuY2VsOwor CisJZm9yIChpID0zRCBERVZMSU5LX0FUVFJfU0VMRlRFU1RfSURfVU5TUEVDICsgMTsKKwkgICAg IGkgPD0zRCBERVZMSU5LX0FUVFJfU0VMRlRFU1RfSURfTUFYOyBpKyspIHsKKwkJZW51bSBkZXZs aW5rX3NlbGZ0ZXN0X3N0YXR1cyB0ZXN0X3N0YXR1czsKKworCQlpZiAobmxhX2dldF9mbGFnKHRi W2ldKSkgeworCQkJaWYgKCFkZXZsaW5rLT5vcHMtPnNlbGZ0ZXN0X2NoZWNrKGRldmxpbmssIGks CisJCQkJCQkJICBpbmZvLT5leHRhY2spKSB7CisJCQkJaWYgKGRldmxpbmtfc2VsZnRlc3RfcmVz dWx0X3B1dChtc2csIGksCisJCQkJCQkJCURFVkxJTktfU0VMRlRFU1RfU1RBVFVTX1NLSVApKQor CQkJCQlnb3RvIHNlbGZ0ZXN0c19uZXN0X2NhbmNlbDsKKwkJCQljb250aW51ZTsKKwkJCX0KKwor CQkJdGVzdF9zdGF0dXMgPTNEIGRldmxpbmstPm9wcy0+c2VsZnRlc3RfcnVuKGRldmxpbmssIGks CisJCQkJCQkJCSBpbmZvLT5leHRhY2spOworCQkJaWYgKGRldmxpbmtfc2VsZnRlc3RfcmVzdWx0 X3B1dChtc2csIGksIHRlc3Rfc3RhdHVzKSkKKwkJCQlnb3RvIHNlbGZ0ZXN0c19uZXN0X2NhbmNl bDsKKwkJfQorCX0KKworCW5sYV9uZXN0X2VuZChtc2csIHNlbGZ0ZXN0cyk7CisJZ2VubG1zZ19l bmQobXNnLCBoZHIpOworCXJldHVybiBnZW5sbXNnX3JlcGx5KG1zZywgaW5mbyk7CisKK3NlbGZ0 ZXN0c19uZXN0X2NhbmNlbDoKKwlubGFfbmVzdF9jYW5jZWwobXNnLCBzZWxmdGVzdHMpOworZ2Vu bG1zZ19jYW5jZWw6CisJZ2VubG1zZ19jYW5jZWwobXNnLCBoZHIpOworZnJlZV9tc2c6CisJbmxt c2dfZnJlZShtc2cpOworCXJldHVybiBlcnI7Cit9CisKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZGV2 bGlua19wYXJhbSBkZXZsaW5rX3BhcmFtX2dlbmVyaWNbXSA9M0QgewogCXsKIAkJLmlkID0zRCBE RVZMSU5LX1BBUkFNX0dFTkVSSUNfSURfSU5UX0VSUl9SRVNFVCwKQEAgLTg5NzAsNiArOTE3NCw3 IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgbmxhX3BvbGljeSBkZXZsaW5rX25sX3BvbGljeVtERVZM PQpJTktfQVRUUl9NQVggKyAxXSA9M0QgewogCVtERVZMSU5LX0FUVFJfUkFURV9QQVJFTlRfTk9E RV9OQU1FXSA9M0QgeyAudHlwZSA9M0QgTkxBX05VTF9TVFJJTkcgfSwKIAlbREVWTElOS19BVFRS X0xJTkVDQVJEX0lOREVYXSA9M0QgeyAudHlwZSA9M0QgTkxBX1UzMiB9LAogCVtERVZMSU5LX0FU VFJfTElORUNBUkRfVFlQRV0gPTNEIHsgLnR5cGUgPTNEIE5MQV9OVUxfU1RSSU5HIH0sCisJW0RF VkxJTktfQVRUUl9TRUxGVEVTVFNdID0zRCB7IC50eXBlID0zRCBOTEFfTkVTVEVEIH0sCiB9Owo9 MjAKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZ2VubF9zbWFsbF9vcHMgZGV2bGlua19ubF9vcHNbXSA9 M0QgewpAQCAtOTMyOSw2ICs5NTM0LDE3IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZ2VubF9zbWFs bF9vcHMgZGV2bGlua19ubF9vcHNbXSA9Cj0zRCB7CiAJCS5kb2l0ID0zRCBkZXZsaW5rX25sX2Nt ZF90cmFwX3BvbGljZXJfc2V0X2RvaXQsCiAJCS5mbGFncyA9M0QgR0VOTF9BRE1JTl9QRVJNLAog CX0sCisJeworCQkuY21kID0zRCBERVZMSU5LX0NNRF9TRUxGVEVTVFNfR0VULAorCQkuZG9pdCA9 M0QgZGV2bGlua19ubF9jbWRfc2VsZnRlc3RzX2dldF9kb2l0LAorCQkuZHVtcGl0ID0zRCBkZXZs aW5rX25sX2NtZF9zZWxmdGVzdHNfZ2V0X2R1bXBpdAorCQkvKiBjYW4gYmUgcmV0cmlldmVkIGJ5 IHVucHJpdmlsZWdlZCB1c2VycyAqLworCX0sCisJeworCQkuY21kID0zRCBERVZMSU5LX0NNRF9T RUxGVEVTVFNfUlVOLAorCQkuZG9pdCA9M0QgZGV2bGlua19ubF9jbWRfc2VsZnRlc3RzX3J1biwK KwkJLmZsYWdzID0zRCBHRU5MX0FETUlOX1BFUk0sCisJfSwKIH07Cj0yMAogc3RhdGljIHN0cnVj dCBnZW5sX2ZhbWlseSBkZXZsaW5rX25sX2ZhbWlseSBfX3JvX2FmdGVyX2luaXQgPTNEIHsKLS09 MjAKMi4zMS4xCg== --000000000000b89dc205e4cc50fd Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature 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 I7qKxvF8Yo7eGTnHRTa99J+6yTd88AKVuhM5TEhpC8cS7qvrQXJje+Uing2xWC4FH76LEWIFH0Pt x8C1WoCU0ClXHU/XfzH2mYrFANBSCeP1Co6QdEfRAgMBAAGjggHZMIIB1TAOBgNVHQ8BAf8EBAMC BaAwgaMGCCsGAQUFBwEBBIGWMIGTME4GCCsGAQUFBzAChkJodHRwOi8vc2VjdXJlLmdsb2JhbHNp Z24uY29tL2NhY2VydC9nc2djY3IzcGVyc29uYWxzaWduMmNhMjAyMC5jcnQwQQYIKwYBBQUHMAGG NWh0dHA6Ly9vY3NwLmdsb2JhbHNpZ24uY29tL2dzZ2NjcjNwZXJzb25hbHNpZ24yY2EyMDIwME0G A1UdIARGMEQwQgYKKwYBBAGgMgEoCjA0MDIGCCsGAQUFBwIBFiZodHRwczovL3d3dy5nbG9iYWxz aWduLmNvbS9yZXBvc2l0b3J5LzAJBgNVHRMEAjAAMEkGA1UdHwRCMEAwPqA8oDqGOGh0dHA6Ly9j cmwuZ2xvYmFsc2lnbi5jb20vZ3NnY2NyM3BlcnNvbmFsc2lnbjJjYTIwMjAuY3JsMCMGA1UdEQQc MBqBGHZpa2FzLmd1cHRhQGJyb2FkY29tLmNvbTATBgNVHSUEDDAKBggrBgEFBQcDBDAfBgNVHSME GDAWgBSWM9HmWBdbNHWKgVZk1b5I3qGPzzAdBgNVHQ4EFgQUUc6J11rH3s6PyZQ0zIVZHIuP20Yw DQYJKoZIhvcNAQELBQADggEBALvCjXn9gy9a2nU/Ey0nphGZefIP33ggiyuKnmqwBt7Wk/uDHIIc kkIlqtTbo0x0PqphS9A23CxCDjKqZq2WN34fL5MMW83nrK0vqnPloCaxy9/6yuLbottBY4STNuvA mQ//Whh+PE+DZadqiDbxXbos3IH8AeFXH4A1zIqIrc0Um2/CSD/T6pvu9QrchtvemfP0z/f1Bk+8 QbQ4ARVP93WV1I13US69evWXw+mOv9VnejShU9PMcDK203xjXbBOi9Hm+fthrWfwIyGoC5aEf7vd PKkEDt4VZ9RbudZU/c3N8+kURaHNtrvu2K+mQs5w/AF7HYZThqmOzQJnvMRjuL8xggJtMIICaQIB ATBrMFsxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNhMTEwLwYDVQQDEyhH bG9iYWxTaWduIEdDQyBSMyBQZXJzb25hbFNpZ24gMiBDQSAyMDIwAgwYjepatB64S625eswwDQYJ YIZIAWUDBAIBBQCggdQwLwYJKoZIhvcNAQkEMSIEIOIT2YMU3NMi27XlgMeXf19Us8wvNXM3SqhJ 1WsmXbqYMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTIyMDcyNzE2 NTc0MlowaQYJKoZIhvcNAQkPMVwwWjALBglghkgBZQMEASowCwYJYIZIAWUDBAEWMAsGCWCGSAFl AwQBAjAKBggqhkiG9w0DBzALBgkqhkiG9w0BAQowCwYJKoZIhvcNAQEHMAsGCWCGSAFlAwQCATAN BgkqhkiG9w0BAQEFAASCAQC0y8qBFjZ3v3+gHSIKITlsDg+TFLEDUpLveW+Vz49TfDHcwn09G6ln 2So4bksScayg2OBYZWU+GyjXI81dSmXujPl0Jx27flJR8mHCFiulJI3OtLR7RQ0htnFXH7MKlU9e VszbNzead8izcxz5W7g4FxvSCxTbXR4Igxx6Wn2fKqgK2EBCf4q8Q2ti12EMbpOLnwm49ALn0o39 aP0ufuYKlcVorMfjP4HPlFNI0UPNRes6HH1/n6SEhpTlvVPOibEM8HVo6q3ML5WvYpKGdybmRzSB Q3yEISXnN3PufsCreNcTALNr+jv1hTWIJzaDcaIArvfZYcU3SGu/Fjr1MppO --000000000000b89dc205e4cc50fd-- From nobody Sun Dec 14 06:20:33 2025 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 56C13C04A68 for ; Wed, 27 Jul 2022 17:55:06 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S238679AbiG0RzB (ORCPT ); Wed, 27 Jul 2022 13:55:01 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:59096 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S243501AbiG0Ryf (ORCPT ); Wed, 27 Jul 2022 13:54:35 -0400 Received: from mail-pg1-x531.google.com (mail-pg1-x531.google.com [IPv6:2607:f8b0:4864:20::531]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C00A14F1B1 for ; Wed, 27 Jul 2022 09:59:17 -0700 (PDT) Received: by mail-pg1-x531.google.com with SMTP id q16so16401831pgq.6 for ; Wed, 27 Jul 2022 09:59:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=CJ36krLt6lqM2DIbqeHQPf9pHp61hgGwWbhZN3kXWmI=; b=C796k8E6Q3YXKWuZRCByUjGghjS/ZycVrRnSVvC6bPdK7nizy1hXxouhUmU0J7oib3 r1trqkdNt/e5XW4azsk1sPoEn5ixV/tCvpP3fTeUq7yxdQgJ3/1G7GYQJHJFukrZiauT yqdaRZFvwYjnIiV6q2Lv8M/yfajD91cQt6jF8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=CJ36krLt6lqM2DIbqeHQPf9pHp61hgGwWbhZN3kXWmI=; b=R7wzvVdhv6JrVfzZJ4QxOvGmxC8j9yw6Y/XM6iGWgFm35ginlOMlXcfU5gqtsJM2El m5hAEPM636Jhz5LGtXcnuqgPbJWWZqkivcD1NQdFe2oOjT6K7LDXsbuRNjQUfNSGQBmt 2LskmFQfiVgT0e4+1y981sBLC5gXYizt2lND9iqJXukBQM0SOGAuA2B3hCJZGZxXm2+3 F3raxcjE40XOXweMo73jrtPMBOOgjlvuME5eRiuvgCZVWmk5SNOx0+ybcmzwZfD2d98l rRqVBEgW0zmk7JOA3DjibXzbsORaIxSkKDo7978/qe2ytZA96O2346/44WNYb41wn9rU CR3A== X-Gm-Message-State: AJIora8y5lXEHQdeRm3tT3ZmHkXsbnNfmhYY5f682RXtPIrEv9yVZnU/ wURd/zyuU4xHZcEIFJdSrEFhkg== X-Google-Smtp-Source: AGRyM1sQHzpRj04mbP4dxEC8OZgywWl2UoY4lFTvzkBmSgkfw4UUrHwL9aXS4luSo01AmJQjAE0aeQ== X-Received: by 2002:a63:fd14:0:b0:41a:20e8:c1e2 with SMTP id d20-20020a63fd14000000b0041a20e8c1e2mr19327872pgh.286.1658941156764; Wed, 27 Jul 2022 09:59:16 -0700 (PDT) Received: from rahul_yocto_ubuntu18.ibn.broadcom.net ([192.19.234.250]) by smtp.gmail.com with ESMTPSA id c15-20020a631c0f000000b0040c74f0cdb5sm12280280pgc.6.2022.07.27.09.57.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 27 Jul 2022 09:57:45 -0700 (PDT) From: Vikas Gupta To: jiri@nvidia.com, kuba@kernel.org Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, davem@davemloft.net, dsahern@kernel.org, stephen@networkplumber.org, edumazet@google.com, pabeni@redhat.com, ast@kernel.org, leon@kernel.org, linux-doc@vger.kernel.org, corbet@lwn.net, michael.chan@broadcom.com, andrew.gospodarek@broadcom.com, vikas Subject: [PATCH net-next v9 2/2] bnxt_en: implement callbacks for devlink selftests Date: Wed, 27 Jul 2022 22:27:21 +0530 Message-Id: <20220727165721.37959-3-vikas.gupta@broadcom.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20220727165721.37959-1-vikas.gupta@broadcom.com> References: <20220727165721.37959-1-vikas.gupta@broadcom.com> Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-256; boundary="00000000000066134405e4cc56a0" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: quoted-printable --00000000000066134405e4cc56a0 MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 RnJvbTogdmlrYXMgPHZpa2FzLmd1cHRhQGJyb2FkY29tLmNvbT4KCkFkZCBjYWxsYmFja3MKPTNE PTNEPTNEPTNEPTNEPTNEPTNEPTNEPTNEPTNEPTNEPTNEPTNECi5zZWxmdGVzdF9jaGVjazogcmV0 dXJucyB0cnVlIGZvciBmbGFzaCBzZWxmdGVzdC4KLnNlbGZ0ZXN0X3J1bjogcnVucyBhIGZsYXNo IHNlbGZ0ZXN0LgoKQWxzbywgcmVmYWN0b3IgTlZNIEFQSXMgc28gdGhhdCB0aGV5IGNhbiBiZQp1 c2VkIHdpdGggZGV2bGluayBhbmQgZXRodG9vbCBib3RoLgoKU2lnbmVkLW9mZi1ieTogVmlrYXMg R3VwdGEgPHZpa2FzLmd1cHRhQGJyb2FkY29tLmNvbT4KUmV2aWV3ZWQtYnk6IEFuZHkgR29zcG9k YXJlayA8Z29zcG9AYnJvYWRjb20uY29tPgpSZXZpZXdlZC1ieTogSmlyaSBQaXJrbyA8amlyaUBu dmlkaWEuY29tPgotLS0KIC4uLi9uZXQvZXRoZXJuZXQvYnJvYWRjb20vYm54dC9ibnh0X2Rldmxp bmsuYyB8IDYxICsrKysrKysrKysrKysrKysrKysKIC4uLi9uZXQvZXRoZXJuZXQvYnJvYWRjb20v Ym54dC9ibnh0X2V0aHRvb2wuYyB8IDI0ICsrKystLS0tCiAuLi4vbmV0L2V0aGVybmV0L2Jyb2Fk Y29tL2JueHQvYm54dF9ldGh0b29sLmggfCAxMiArKysrCiAzIGZpbGVzIGNoYW5nZWQsIDg1IGlu c2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2V0 aGVybmV0L2Jyb2FkY29tL2JueHQvYm54dF9kZXZsaW5rLmMgYi9kcml2ZXJzL25lPQp0L2V0aGVy bmV0L2Jyb2FkY29tL2JueHQvYm54dF9kZXZsaW5rLmMKaW5kZXggNmIzZDRmNGMyYTc1Li4xNGRm OGNmYzI5NDYgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L2Jyb2FkY29tL2JueHQv Ym54dF9kZXZsaW5rLmMKKysrIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvYnJvYWRjb20vYm54dC9i bnh0X2RldmxpbmsuYwpAQCAtMjAsNiArMjAsOCBAQAogI2luY2x1ZGUgImJueHRfdWxwLmgiCiAj aW5jbHVkZSAiYm54dF9wdHAuaCIKICNpbmNsdWRlICJibnh0X2NvcmVkdW1wLmgiCisjaW5jbHVk ZSAiYm54dF9udm1fZGVmcy5oIgorI2luY2x1ZGUgImJueHRfZXRodG9vbC5oIgo9MjAKIHN0YXRp YyB2b2lkIF9fYm54dF9md19yZWNvdmVyKHN0cnVjdCBibnh0ICpicCkKIHsKQEAgLTYxMCw2ICs2 MTIsNjMgQEAgc3RhdGljIGludCBibnh0X2RsX3JlbG9hZF91cChzdHJ1Y3QgZGV2bGluayAqZGws IGVudW0gPQpkZXZsaW5rX3JlbG9hZF9hY3Rpb24gYWN0aQogCXJldHVybiByYzsKIH0KPTIwCitz dGF0aWMgYm9vbCBibnh0X252bV90ZXN0KHN0cnVjdCBibnh0ICpicCwgc3RydWN0IG5ldGxpbmtf ZXh0X2FjayAqZXh0YWNrKQoreworCXUzMiBkYXRhbGVuOworCXUxNiBpbmRleDsKKwl1OCAqYnVm OworCisJaWYgKGJueHRfZmluZF9udnJhbV9pdGVtKGJwLT5kZXYsIEJOWF9ESVJfVFlQRV9WUEQs CisJCQkJIEJOWF9ESVJfT1JESU5BTF9GSVJTVCwgQk5YX0RJUl9FWFRfTk9ORSwKKwkJCQkgJmlu ZGV4LCBOVUxMLCAmZGF0YWxlbikgfHwgIWRhdGFsZW4pIHsKKwkJTkxfU0VUX0VSUl9NU0dfTU9E KGV4dGFjaywgIm52bSB0ZXN0IHZwZCBlbnRyeSBlcnJvciIpOworCQlyZXR1cm4gZmFsc2U7CisJ fQorCisJYnVmID0zRCBremFsbG9jKGRhdGFsZW4sIEdGUF9LRVJORUwpOworCWlmICghYnVmKSB7 CisJCU5MX1NFVF9FUlJfTVNHX01PRChleHRhY2ssICJpbnN1ZmZpY2llbnQgbWVtb3J5IGZvciBu dm0gdGVzdCIpOworCQlyZXR1cm4gZmFsc2U7CisJfQorCisJaWYgKGJueHRfZ2V0X252cmFtX2l0 ZW0oYnAtPmRldiwgaW5kZXgsIDAsIGRhdGFsZW4sIGJ1ZikpIHsKKwkJTkxfU0VUX0VSUl9NU0df TU9EKGV4dGFjaywgIm52bSB0ZXN0IHZwZCByZWFkIGVycm9yIik7CisJCWdvdG8gZXJyOworCX0K KworCWlmIChibnh0X2ZsYXNoX252cmFtKGJwLT5kZXYsIEJOWF9ESVJfVFlQRV9WUEQsIEJOWF9E SVJfT1JESU5BTF9GSVJTVCwKKwkJCSAgICAgQk5YX0RJUl9FWFRfTk9ORSwgMCwgMCwgYnVmLCBk YXRhbGVuKSkgeworCQlOTF9TRVRfRVJSX01TR19NT0QoZXh0YWNrLCAibnZtIHRlc3QgdnBkIHdy aXRlIGVycm9yIik7CisJCWdvdG8gZXJyOworCX0KKworCXJldHVybiB0cnVlOworCitlcnI6CisJ a2ZyZWUoYnVmKTsKKwlyZXR1cm4gZmFsc2U7Cit9CisKK3N0YXRpYyBib29sIGJueHRfZGxfc2Vs ZnRlc3RfY2hlY2soc3RydWN0IGRldmxpbmsgKmRsLCB1bnNpZ25lZCBpbnQgaWQsCisJCQkJICAg c3RydWN0IG5ldGxpbmtfZXh0X2FjayAqZXh0YWNrKQoreworCXJldHVybiBpZCA9M0Q9M0QgREVW TElOS19BVFRSX1NFTEZURVNUX0lEX0ZMQVNIOworfQorCitzdGF0aWMgZW51bSBkZXZsaW5rX3Nl bGZ0ZXN0X3N0YXR1cyBibnh0X2RsX3NlbGZ0ZXN0X3J1bihzdHJ1Y3QgZGV2bGluayAqZD0KbCwK KwkJCQkJCQkgdW5zaWduZWQgaW50IGlkLAorCQkJCQkJCSBzdHJ1Y3QgbmV0bGlua19leHRfYWNr ICpleHRhY2spCit7CisJc3RydWN0IGJueHQgKmJwID0zRCBibnh0X2dldF9icF9mcm9tX2RsKGRs KTsKKworCWlmIChpZCA9M0Q9M0QgREVWTElOS19BVFRSX1NFTEZURVNUX0lEX0ZMQVNIKQorCQly ZXR1cm4gYm54dF9udm1fdGVzdChicCwgZXh0YWNrKSA/CisJCQkJREVWTElOS19TRUxGVEVTVF9T VEFUVVNfUEFTUyA6CisJCQkJREVWTElOS19TRUxGVEVTVF9TVEFUVVNfRkFJTDsKKworCXJldHVy biBERVZMSU5LX1NFTEZURVNUX1NUQVRVU19TS0lQOworfQorCiBzdGF0aWMgY29uc3Qgc3RydWN0 IGRldmxpbmtfb3BzIGJueHRfZGxfb3BzID0zRCB7CiAjaWZkZWYgQ09ORklHX0JOWFRfU1JJT1YK IAkuZXN3aXRjaF9tb2RlX3NldCA9M0QgYm54dF9kbF9lc3dpdGNoX21vZGVfc2V0LApAQCAtNjIy LDYgKzY4MSw4IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZGV2bGlua19vcHMgYm54dF9kbF9vcHMg PTNEIHsKIAkucmVsb2FkX2xpbWl0cwkgID0zRCBCSVQoREVWTElOS19SRUxPQURfTElNSVRfTk9f UkVTRVQpLAogCS5yZWxvYWRfZG93bgkgID0zRCBibnh0X2RsX3JlbG9hZF9kb3duLAogCS5yZWxv YWRfdXAJICA9M0QgYm54dF9kbF9yZWxvYWRfdXAsCisJLnNlbGZ0ZXN0X2NoZWNrCSAgPTNEIGJu eHRfZGxfc2VsZnRlc3RfY2hlY2ssCisJLnNlbGZ0ZXN0X3J1bgkgID0zRCBibnh0X2RsX3NlbGZ0 ZXN0X3J1biwKIH07Cj0yMAogc3RhdGljIGNvbnN0IHN0cnVjdCBkZXZsaW5rX29wcyBibnh0X3Zm X2RsX29wczsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L2Jyb2FkY29tL2JueHQv Ym54dF9ldGh0b29sLmMgYi9kcml2ZXJzL25lPQp0L2V0aGVybmV0L2Jyb2FkY29tL2JueHQvYm54 dF9ldGh0b29sLmMKaW5kZXggNzE5MWU1ZDc0MjA4Li44N2ViNTM2MmFkNzAgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvbmV0L2V0aGVybmV0L2Jyb2FkY29tL2JueHQvYm54dF9ldGh0b29sLmMKKysrIGIv ZHJpdmVycy9uZXQvZXRoZXJuZXQvYnJvYWRjb20vYm54dC9ibnh0X2V0aHRvb2wuYwpAQCAtMjE3 NiwxNCArMjE3NiwxNCBAQCBzdGF0aWMgdm9pZCBibnh0X3ByaW50X2FkbWluX2VycihzdHJ1Y3Qg Ym54dCAqYnApCiAJbmV0ZGV2X2luZm8oYnAtPmRldiwgIlBGIGRvZXMgbm90IGhhdmUgYWRtaW4g cHJpdmlsZWdlcyB0byBmbGFzaCBvciByZXNldD0KIHRoZSBkZXZpY2VcbiIpOwogfQo9MjAKLXN0 YXRpYyBpbnQgYm54dF9maW5kX252cmFtX2l0ZW0oc3RydWN0IG5ldF9kZXZpY2UgKmRldiwgdTE2 IHR5cGUsIHUxNiBvcmRpPQpuYWwsCi0JCQkJdTE2IGV4dCwgdTE2ICppbmRleCwgdTMyICppdGVt X2xlbmd0aCwKLQkJCQl1MzIgKmRhdGFfbGVuZ3RoKTsKK2ludCBibnh0X2ZpbmRfbnZyYW1faXRl bShzdHJ1Y3QgbmV0X2RldmljZSAqZGV2LCB1MTYgdHlwZSwgdTE2IG9yZGluYWwsCisJCQkgdTE2 IGV4dCwgdTE2ICppbmRleCwgdTMyICppdGVtX2xlbmd0aCwKKwkJCSB1MzIgKmRhdGFfbGVuZ3Ro KTsKPTIwCi1zdGF0aWMgaW50IGJueHRfZmxhc2hfbnZyYW0oc3RydWN0IG5ldF9kZXZpY2UgKmRl diwgdTE2IGRpcl90eXBlLAotCQkJICAgIHUxNiBkaXJfb3JkaW5hbCwgdTE2IGRpcl9leHQsIHUx NiBkaXJfYXR0ciwKLQkJCSAgICB1MzIgZGlyX2l0ZW1fbGVuLCBjb25zdCB1OCAqZGF0YSwKLQkJ CSAgICBzaXplX3QgZGF0YV9sZW4pCitpbnQgYm54dF9mbGFzaF9udnJhbShzdHJ1Y3QgbmV0X2Rl dmljZSAqZGV2LCB1MTYgZGlyX3R5cGUsCisJCSAgICAgdTE2IGRpcl9vcmRpbmFsLCB1MTYgZGly X2V4dCwgdTE2IGRpcl9hdHRyLAorCQkgICAgIHUzMiBkaXJfaXRlbV9sZW4sIGNvbnN0IHU4ICpk YXRhLAorCQkgICAgIHNpemVfdCBkYXRhX2xlbikKIHsKIAlzdHJ1Y3QgYm54dCAqYnAgPTNEIG5l dGRldl9wcml2KGRldik7CiAJc3RydWN0IGh3cm1fbnZtX3dyaXRlX2lucHV0ICpyZXE7CkBAIC0y ODM2LDggKzI4MzYsOCBAQCBzdGF0aWMgaW50IGJueHRfZ2V0X252cmFtX2RpcmVjdG9yeShzdHJ1 Y3QgbmV0X2RldmljZT0KICpkZXYsIHUzMiBsZW4sIHU4ICpkYXRhKQogCXJldHVybiByYzsKIH0K PTIwCi1zdGF0aWMgaW50IGJueHRfZ2V0X252cmFtX2l0ZW0oc3RydWN0IG5ldF9kZXZpY2UgKmRl diwgdTMyIGluZGV4LCB1MzIgb2Zmcz0KZXQsCi0JCQkgICAgICAgdTMyIGxlbmd0aCwgdTggKmRh dGEpCitpbnQgYm54dF9nZXRfbnZyYW1faXRlbShzdHJ1Y3QgbmV0X2RldmljZSAqZGV2LCB1MzIg aW5kZXgsIHUzMiBvZmZzZXQsCisJCQl1MzIgbGVuZ3RoLCB1OCAqZGF0YSkKIHsKIAlzdHJ1Y3Qg Ym54dCAqYnAgPTNEIG5ldGRldl9wcml2KGRldik7CiAJaW50IHJjOwpAQCAtMjg3MSw5ICsyODcx LDkgQEAgc3RhdGljIGludCBibnh0X2dldF9udnJhbV9pdGVtKHN0cnVjdCBuZXRfZGV2aWNlICpk ZXY9CiwgdTMyIGluZGV4LCB1MzIgb2Zmc2V0LAogCXJldHVybiByYzsKIH0KPTIwCi1zdGF0aWMg aW50IGJueHRfZmluZF9udnJhbV9pdGVtKHN0cnVjdCBuZXRfZGV2aWNlICpkZXYsIHUxNiB0eXBl LCB1MTYgb3JkaT0KbmFsLAotCQkJCXUxNiBleHQsIHUxNiAqaW5kZXgsIHUzMiAqaXRlbV9sZW5n dGgsCi0JCQkJdTMyICpkYXRhX2xlbmd0aCkKK2ludCBibnh0X2ZpbmRfbnZyYW1faXRlbShzdHJ1 Y3QgbmV0X2RldmljZSAqZGV2LCB1MTYgdHlwZSwgdTE2IG9yZGluYWwsCisJCQkgdTE2IGV4dCwg dTE2ICppbmRleCwgdTMyICppdGVtX2xlbmd0aCwKKwkJCSB1MzIgKmRhdGFfbGVuZ3RoKQogewog CXN0cnVjdCBod3JtX252bV9maW5kX2Rpcl9lbnRyeV9vdXRwdXQgKm91dHB1dDsKIAlzdHJ1Y3Qg aHdybV9udm1fZmluZF9kaXJfZW50cnlfaW5wdXQgKnJlcTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMv bmV0L2V0aGVybmV0L2Jyb2FkY29tL2JueHQvYm54dF9ldGh0b29sLmggYi9kcml2ZXJzL25lPQp0 L2V0aGVybmV0L2Jyb2FkY29tL2JueHQvYm54dF9ldGh0b29sLmgKaW5kZXggYTU5Mjg0MjE1ZTc4 Li5hOGVjZWY4YWI4MmMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbmV0L2V0aGVybmV0L2Jyb2FkY29t L2JueHQvYm54dF9ldGh0b29sLmgKKysrIGIvZHJpdmVycy9uZXQvZXRoZXJuZXQvYnJvYWRjb20v Ym54dC9ibnh0X2V0aHRvb2wuaApAQCAtNTgsNSArNTgsMTcgQEAgaW50IGJueHRfZmxhc2hfcGFj a2FnZV9mcm9tX2Z3X29iaihzdHJ1Y3QgbmV0X2RldmljZSAqZGU9CnYsIGNvbnN0IHN0cnVjdCBm aXJtd2FyZQogaW50IGJueHRfZ2V0X3BrZ2luZm8oc3RydWN0IG5ldF9kZXZpY2UgKmRldiwgY2hh ciAqdmVyLCBpbnQgc2l6ZSk7CiB2b2lkIGJueHRfZXRodG9vbF9pbml0KHN0cnVjdCBibnh0ICpi cCk7CiB2b2lkIGJueHRfZXRodG9vbF9mcmVlKHN0cnVjdCBibnh0ICpicCk7CitpbnQgYm54dF9m aW5kX252cmFtX2l0ZW0oc3RydWN0IG5ldF9kZXZpY2UgKmRldiwgdTE2IHR5cGUsIHUxNiBvcmRp bmFsLAorCQkJIHUxNiBleHQsIHUxNiAqaW5kZXgsIHUzMiAqaXRlbV9sZW5ndGgsCisJCQkgdTMy ICpkYXRhX2xlbmd0aCk7CitpbnQgYm54dF9maW5kX252cmFtX2l0ZW0oc3RydWN0IG5ldF9kZXZp Y2UgKmRldiwgdTE2IHR5cGUsIHUxNiBvcmRpbmFsLAorCQkJIHUxNiBleHQsIHUxNiAqaW5kZXgs IHUzMiAqaXRlbV9sZW5ndGgsCisJCQkgdTMyICpkYXRhX2xlbmd0aCk7CitpbnQgYm54dF9mbGFz aF9udnJhbShzdHJ1Y3QgbmV0X2RldmljZSAqZGV2LCB1MTYgZGlyX3R5cGUsCisJCSAgICAgdTE2 IGRpcl9vcmRpbmFsLCB1MTYgZGlyX2V4dCwgdTE2IGRpcl9hdHRyLAorCQkgICAgIHUzMiBkaXJf aXRlbV9sZW4sIGNvbnN0IHU4ICpkYXRhLAorCQkgICAgIHNpemVfdCBkYXRhX2xlbik7CitpbnQg Ym54dF9nZXRfbnZyYW1faXRlbShzdHJ1Y3QgbmV0X2RldmljZSAqZGV2LCB1MzIgaW5kZXgsIHUz MiBvZmZzZXQsCisJCQl1MzIgbGVuZ3RoLCB1OCAqZGF0YSk7Cj0yMAogI2VuZGlmCi0tPTIwCjIu MzEuMQo= --00000000000066134405e4cc56a0 Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature 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 I7qKxvF8Yo7eGTnHRTa99J+6yTd88AKVuhM5TEhpC8cS7qvrQXJje+Uing2xWC4FH76LEWIFH0Pt x8C1WoCU0ClXHU/XfzH2mYrFANBSCeP1Co6QdEfRAgMBAAGjggHZMIIB1TAOBgNVHQ8BAf8EBAMC BaAwgaMGCCsGAQUFBwEBBIGWMIGTME4GCCsGAQUFBzAChkJodHRwOi8vc2VjdXJlLmdsb2JhbHNp Z24uY29tL2NhY2VydC9nc2djY3IzcGVyc29uYWxzaWduMmNhMjAyMC5jcnQwQQYIKwYBBQUHMAGG NWh0dHA6Ly9vY3NwLmdsb2JhbHNpZ24uY29tL2dzZ2NjcjNwZXJzb25hbHNpZ24yY2EyMDIwME0G A1UdIARGMEQwQgYKKwYBBAGgMgEoCjA0MDIGCCsGAQUFBwIBFiZodHRwczovL3d3dy5nbG9iYWxz aWduLmNvbS9yZXBvc2l0b3J5LzAJBgNVHRMEAjAAMEkGA1UdHwRCMEAwPqA8oDqGOGh0dHA6Ly9j cmwuZ2xvYmFsc2lnbi5jb20vZ3NnY2NyM3BlcnNvbmFsc2lnbjJjYTIwMjAuY3JsMCMGA1UdEQQc MBqBGHZpa2FzLmd1cHRhQGJyb2FkY29tLmNvbTATBgNVHSUEDDAKBggrBgEFBQcDBDAfBgNVHSME GDAWgBSWM9HmWBdbNHWKgVZk1b5I3qGPzzAdBgNVHQ4EFgQUUc6J11rH3s6PyZQ0zIVZHIuP20Yw DQYJKoZIhvcNAQELBQADggEBALvCjXn9gy9a2nU/Ey0nphGZefIP33ggiyuKnmqwBt7Wk/uDHIIc kkIlqtTbo0x0PqphS9A23CxCDjKqZq2WN34fL5MMW83nrK0vqnPloCaxy9/6yuLbottBY4STNuvA mQ//Whh+PE+DZadqiDbxXbos3IH8AeFXH4A1zIqIrc0Um2/CSD/T6pvu9QrchtvemfP0z/f1Bk+8 QbQ4ARVP93WV1I13US69evWXw+mOv9VnejShU9PMcDK203xjXbBOi9Hm+fthrWfwIyGoC5aEf7vd PKkEDt4VZ9RbudZU/c3N8+kURaHNtrvu2K+mQs5w/AF7HYZThqmOzQJnvMRjuL8xggJtMIICaQIB ATBrMFsxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNhMTEwLwYDVQQDEyhH bG9iYWxTaWduIEdDQyBSMyBQZXJzb25hbFNpZ24gMiBDQSAyMDIwAgwYjepatB64S625eswwDQYJ YIZIAWUDBAIBBQCggdQwLwYJKoZIhvcNAQkEMSIEINERCbEP428yRQvgF+laxcNbMctPsvD4IdKP C4LQ6uPOMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTIyMDcyNzE2 NTkxN1owaQYJKoZIhvcNAQkPMVwwWjALBglghkgBZQMEASowCwYJYIZIAWUDBAEWMAsGCWCGSAFl AwQBAjAKBggqhkiG9w0DBzALBgkqhkiG9w0BAQowCwYJKoZIhvcNAQEHMAsGCWCGSAFlAwQCATAN BgkqhkiG9w0BAQEFAASCAQCq3jZLz9ffcm7LUgmGx8gSHZNUb0PbXSCfOSRU0FNpKlWMAocfNR9a j/fDOVqZudjHmOikBuyYIEnKae16CeU1Cz6ks3oc0UGxGPfkrT6uLQSzoenIkS8/c6iE075cZoFM 5gRTAnEJthmJsdyoxG7Q8nH17nD6bggi4iN/DEWDx4bvvBsgtvpWgFrL+q6PJ44Nz6KjmUyBwAB2 Z95Dt5qGFBdmQnqPdxS9d63Ga6U4tgVq43Hyxu/aY5zGs8wxyx6xY3H5tVIqCD4DFIZwdRmRmPGm 1zCB7Xw5xEDS3rQUnBTrRyR3HCX6ardaobDvYawXWgT7enKAG/hl/hd1BQrr --00000000000066134405e4cc56a0--