From nobody Sat Apr 18 04:19:36 2026 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 48C2ACCA488 for ; Mon, 18 Jul 2022 06:22:04 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232986AbiGRGV3 (ORCPT ); Mon, 18 Jul 2022 02:21:29 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41964 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230242AbiGRGVG (ORCPT ); Mon, 18 Jul 2022 02:21:06 -0400 Received: from mail-pg1-x52f.google.com (mail-pg1-x52f.google.com [IPv6:2607:f8b0:4864:20::52f]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A739E13F07 for ; Sun, 17 Jul 2022 23:21:04 -0700 (PDT) Received: by mail-pg1-x52f.google.com with SMTP id r186so9720247pgr.2 for ; Sun, 17 Jul 2022 23:21:04 -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=F3lHpyR3lqDaKOizO1owh/h7819IPaPxDQuLumM39tI=; b=gsSLaTyL3ioGwqkyNTfv9q+MpoZ9I2HPM5IL5ysk2hTSUdQQtH8qtHqhPHygzPNXmG 5HYeoJmfU15sUD7FlrD4BhXCED5ffZWDq7pR3Ifid44dFu7X2zTAsnerBo4CmHIGuNA0 /it7uOd8Uk0STe8KFAevxA3r3xLUsCCczhnEg= 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=F3lHpyR3lqDaKOizO1owh/h7819IPaPxDQuLumM39tI=; b=nEM+WWLfsFeyiXRgVwMBaCxF1+Rp6ze+rCk2u6p9rCQMHMsSkCXMGIqJHr6s3V1v75 CsGZS7NrpSkzrReUwLaDpQiDwUJ5mz6vRL6vp12Yh5/Re/P/ISgPRTnKDePjm8y41Efc ssd/9KnUXeCV2tELX+hB3UqeTxefUrnQwAoZWjLOMsWeoDCkm73OcRHUchMclvDMjYjp 4niOvMN6Re2o4/PTcBt/tMcaFQvD/e0LGHiLSIsPHdeFvTaZfOt+ozXwapqGyh/KhBDr DHVDDql/X1gD08y07fK3qcqPqu+KiQqVVCfTkltkD0Yw4zNXXrn24+YnLSeWN0umEXGj 0pLQ== X-Gm-Message-State: AJIora+BCajFpHiWJFrAADN9HBVTAKnVmB4onuBAOt6ossBrati8mY0r Qoz9Z/QsJYhGB9hXoNix2V7Vcw== X-Google-Smtp-Source: AGRyM1uqFm35/QxRvn9dw/vG7PgiYXfilkRzhUPF68kcsHvTZ69RxBsWGMtaYlwcfsEgX9dOY6XhOQ== X-Received: by 2002:aa7:8a02:0:b0:528:9f42:4fcf with SMTP id m2-20020aa78a02000000b005289f424fcfmr26765862pfa.28.1658125263825; Sun, 17 Jul 2022 23:21:03 -0700 (PDT) Received: from rahul_yocto_ubuntu18.ibn.broadcom.net ([192.19.234.250]) by smtp.gmail.com with ESMTPSA id h22-20020a170902f7d600b0016c4fe627eesm8360164plw.241.2022.07.17.23.20.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 17 Jul 2022 23:21:03 -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 v3 1/3] devlink: introduce framework for selftests Date: Mon, 18 Jul 2022 11:50:30 +0530 Message-Id: <20220718062032.22426-2-vikas.gupta@broadcom.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20220718062032.22426-1-vikas.gupta@broadcom.com> References: <0220707182950.29348-1-vikas.gupta@broadcom.com> <20220718062032.22426-1-vikas.gupta@broadcom.com> Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-256; boundary="00000000000061657905e40e5f6c" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: quoted-printable --00000000000061657905e40e5f6c MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 QWRkIGEgZnJhbWV3b3JrIGZvciBydW5uaW5nIHNlbGZ0ZXN0cy4KRnJhbWV3b3JrIGV4cG9zZXMg ZGV2bGluayBjb21tYW5kcyBhbmQgdGVzdCBzdWl0ZShzKSB0byB0aGUgdXNlcgp0byBleGVjdXRl IGFuZCBxdWVyeSB0aGUgc3VwcG9ydGVkIHRlc3RzIGJ5IHRoZSBkcml2ZXIuCgpCZWxvdyBhcmUg bmV3IGVudHJpZXMgaW4gZGV2bGlua19ubF9vcHMKZGV2bGlua19ubF9jbWRfc2VsZnRlc3RzX2xp c3RfZG9pdC9kdW1waXQ6IFRvIHF1ZXJ5IHRoZSBzdXBwb3J0ZWQKc2VsZnRlc3RzIGJ5IHRoZSBk cml2ZXJzLgpkZXZsaW5rX25sX2NtZF9zZWxmdGVzdHNfcnVuOiBUbyBleGVjdXRlIHNlbGZ0ZXN0 cy4gVXNlcnMgY2FuCnByb3ZpZGUgYSB0ZXN0IG1hc2sgZm9yIGV4ZWN1dGluZyBncm91cCB0ZXN0 cyBvciBzdGFuZGFsb25lIHRlc3RzLgoKRG9jdW1lbnRhdGlvbi9uZXR3b3JraW5nL2Rldmxpbmsv IHBhdGggaXMgYWxyZWFkeSBwYXJ0IG9mIE1BSU5UQUlORVJTICYKdGhlIG5ldyBmaWxlcyBjb21l IHVuZGVyIHRoaXMgcGF0aC4gSGVuY2Ugbm8gdXBkYXRlIG5lZWRlZCB0byB0aGUKTUFJTlRBSU5F UlMKClNpZ25lZC1vZmYtYnk6IFZpa2FzIEd1cHRhIDx2aWthcy5ndXB0YUBicm9hZGNvbS5jb20+ ClJldmlld2VkLWJ5OiBNaWNoYWVsIENoYW4gPG1pY2hhZWwuY2hhbkBicm9hZGNvbS5jb20+ClJl dmlld2VkLWJ5OiBBbmR5IEdvc3BvZGFyZWsgPGFuZHJldy5nb3Nwb2RhcmVrQGJyb2FkY29tLmNv bT4KLS0tCiAuLi4vbmV0d29ya2luZy9kZXZsaW5rL2Rldmxpbmstc2VsZnRlc3RzLnJzdCAgfCAg MzggKysrCiBpbmNsdWRlL25ldC9kZXZsaW5rLmggICAgICAgICAgICAgICAgICAgICAgICAgfCAg MjAgKysKIGluY2x1ZGUvdWFwaS9saW51eC9kZXZsaW5rLmggICAgICAgICAgICAgICAgICB8ICAy OSArKysKIG5ldC9jb3JlL2RldmxpbmsuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDIx NiArKysrKysrKysrKysrKysrKysKIDQgZmlsZXMgY2hhbmdlZCwgMzAzIGluc2VydGlvbnMoKykK IGNyZWF0ZSBtb2RlIDEwMDY0NCBEb2N1bWVudGF0aW9uL25ldHdvcmtpbmcvZGV2bGluay9kZXZs aW5rLXNlbGZ0ZXN0cy5yc3QKCmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL25ldHdvcmtpbmcv ZGV2bGluay9kZXZsaW5rLXNlbGZ0ZXN0cy5yc3QgYi9Eb2N1bT0KZW50YXRpb24vbmV0d29ya2lu Zy9kZXZsaW5rL2Rldmxpbmstc2VsZnRlc3RzLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCAwMDAwMDAwMDAwMDAuLjBlOTcyNzg5NTk4NwotLS0gL2Rldi9udWxsCisrKyBiL0RvY3VtZW50 YXRpb24vbmV0d29ya2luZy9kZXZsaW5rL2Rldmxpbmstc2VsZnRlc3RzLnJzdApAQCAtMCwwICsx LDM4IEBACisuLiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogKEdQTC0yLjAtb25seSBPUiBCU0Qt Mi1DbGF1c2UpCisKKz0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0z RD0zRD0zRAorRGV2bGluayBTZWxmdGVzdHMKKz0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0z RD0zRD0zRD0zRD0zRD0zRD0zRD0zRAorCitUaGUgYGBkZXZsaW5rLXNlbGZ0ZXN0c2BgIEFQSSBh bGxvd3MgZXhlY3V0aW5nIHNlbGZ0ZXN0cyBvbiB0aGUgZGV2aWNlLgorCitUZXN0cyBNYXNrCis9 M0Q9M0Q9M0Q9M0Q9M0Q9M0Q9M0Q9M0Q9M0Q9M0QKK1RoZSBgYGRldmxpbmstc2VsZnRlc3RzYGAg Y29tbWFuZCBzaG91bGQgYmUgcnVuIHdpdGggYSBtYXNrIGluZGljYXRpbmcKK3RoZSB0ZXN0cyB0 byBiZSBleGVjdXRlZC4KKworVGVzdHMgRGVzY3JpcHRpb24KKz0zRD0zRD0zRD0zRD0zRD0zRD0z RD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRAorVGhlIGZvbGxvd2luZyBpcyBhIGxpc3Qg b2YgdGVzdHMgdGhhdCBkcml2ZXJzIG1heSBleGVjdXRlLgorCisuLiBsaXN0LXRhYmxlOjogTGlz dCBvZiB0ZXN0cworICAgOndpZHRoczogNSA5MAorCisgICAqIC0gTmFtZQorICAgICAtIERlc2Ny aXB0aW9uCisgICAqIC0gYGBERVZMSU5LX1NFTEZURVNUX0ZMQVNIYGAKKyAgICAgLSBEZXZpY2Vz IG1heSBoYXZlIHRoZSBmaXJtd2FyZSBvbiBub24tdm9sYXRpbGUgbWVtb3J5IG9uIHRoZSBib2Fy ZCwgPQplLmcuCisgICAgICAgZmxhc2guIFRoaXMgcGFydGljdWxhciB0ZXN0IGhlbHBzIHRvIHJ1 biBhIGZsYXNoIHNlbGZ0ZXN0IG9uIHRoZSBkZT0KdmljZS4KKyAgICAgICBJbXBsZW1lbnRhdGlv biBvZiB0aGUgdGVzdCBpcyBsZWZ0IHRvIHRoZSBkcml2ZXIvZmlybXdhcmUuCisKK2V4YW1wbGUg dXNhZ2UKKy0tLS0tLS0tLS0tLS0KKworLi4gY29kZTo6IHNoZWxsCisKKyAgICAjIFF1ZXJ5IHNl bGZ0ZXN0cyBzdXBwb3J0ZWQgb24gdGhlIGRldmxpbmsgZGV2aWNlCisgICAgJCBkZXZsaW5rIGRl diBzZWxmdGVzdHMgc2hvdyBERVYKKyAgICAjIFF1ZXJ5IHNlbGZ0ZXN0cyBzdXBwb3J0ZWQgb24g YWxsIGRldmxpbmsgZGV2aWNlcworICAgICQgZGV2bGluayBkZXYgc2VsZnRlc3RzIHNob3cKKyAg ICAjIEV4ZWN1dGVzIHNlbGZ0ZXN0cyBvbiB0aGUgZGV2aWNlCisgICAgJCBkZXZsaW5rIGRldiBz ZWxmdGVzdHMgcnVuIERFViB0ZXN0IGZsYXNoCmRpZmYgLS1naXQgYS9pbmNsdWRlL25ldC9kZXZs aW5rLmggYi9pbmNsdWRlL25ldC9kZXZsaW5rLmgKaW5kZXggODhjNzAxYjM3NWEyLi45ZDhmYzA5 ZjJjMzkgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvbmV0L2RldmxpbmsuaAorKysgYi9pbmNsdWRlL25l dC9kZXZsaW5rLmgKQEAgLTE1MDksNiArMTUwOSwyNiBAQCBzdHJ1Y3QgZGV2bGlua19vcHMgewog CQkJCSAgICBzdHJ1Y3QgZGV2bGlua19yYXRlICpwYXJlbnQsCiAJCQkJICAgIHZvaWQgKnByaXZf Y2hpbGQsIHZvaWQgKnByaXZfcGFyZW50LAogCQkJCSAgICBzdHJ1Y3QgbmV0bGlua19leHRfYWNr ICpleHRhY2spOworCS8qKgorCSAqIHNlbGZ0ZXN0c19jaGVjaygpIC0gcXVlcmllcyBpZiBzZWxm dGVzdCBpcyBzdXBwb3J0ZWQKKwkgKiBAZGV2bGluazogRGV2bGluayBpbnN0YW5jZQorCSAqIEB0 ZXN0X2lkOiB0ZXN0IGluZGV4CisJICogQGV4dGFjazogZXh0YWNrIGZvciByZXBvcnRpbmcgZXJy b3IgbWVzc2FnZXMKKwkgKgorCSAqIFJldHVybjogVHJ1ZSBpZiB0ZXN0IGlzIHN1cHBvcnRlZCBi eSB0aGUgZHJpdmVyCisJICovCisJYm9vbCAoKnNlbGZ0ZXN0X2NoZWNrKShzdHJ1Y3QgZGV2bGlu ayAqZGV2bGluaywgaW50IHRlc3RfaWQsCisJCQkgICAgICAgc3RydWN0IG5ldGxpbmtfZXh0X2Fj ayAqZXh0YWNrKTsKKwkvKioKKwkgKiBzZWxmdGVzdF9ydW4oKSAtIFJ1bnMgYSBzZWxmdGVzdAor CSAqIEBkZXZsaW5rOiBEZXZsaW5rIGluc3RhbmNlCisJICogQHRlc3RfaWQ6IHRlc3QgaW5kZXgK KwkgKiBAZXh0YWNrOiBleHRhY2sgZm9yIHJlcG9ydGluZyBlcnJvciBtZXNzYWdlcworCSAqCisJ ICogUmV0dXJuOiBSZXN1bHQgb2YgdGhlIHRlc3QKKwkgKi8KKwl1OCAoKnNlbGZ0ZXN0X3J1biko c3RydWN0IGRldmxpbmsgKmRldmxpbmssIGludCB0ZXN0X2lkLAorCQkJICAgc3RydWN0IG5ldGxp bmtfZXh0X2FjayAqZXh0YWNrKTsKIH07Cj0yMAogdm9pZCAqZGV2bGlua19wcml2KHN0cnVjdCBk ZXZsaW5rICpkZXZsaW5rKTsKZGlmZiAtLWdpdCBhL2luY2x1ZGUvdWFwaS9saW51eC9kZXZsaW5r LmggYi9pbmNsdWRlL3VhcGkvbGludXgvZGV2bGluay5oCmluZGV4IGIzZDQwYTVkNzJmZi4uNDY5 ODQ2ZjQwZTZkIDEwMDY0NAotLS0gYS9pbmNsdWRlL3VhcGkvbGludXgvZGV2bGluay5oCisrKyBi L2luY2x1ZGUvdWFwaS9saW51eC9kZXZsaW5rLmgKQEAgLTEzNiw2ICsxMzYsOSBAQCBlbnVtIGRl dmxpbmtfY29tbWFuZCB7CiAJREVWTElOS19DTURfTElORUNBUkRfTkVXLAogCURFVkxJTktfQ01E X0xJTkVDQVJEX0RFTCwKPTIwCisJREVWTElOS19DTURfU0VMRlRFU1RTX0xJU1QsCS8qIGNhbiBk dW1wICovCisJREVWTElOS19DTURfU0VMRlRFU1RTX1JVTiwKKwogCS8qIGFkZCBuZXcgY29tbWFu ZHMgYWJvdmUgaGVyZSAqLwogCV9fREVWTElOS19DTURfTUFYLAogCURFVkxJTktfQ01EX01BWCA9 M0QgX19ERVZMSU5LX0NNRF9NQVggLSAxCkBAIC0yNzYsNiArMjc5LDMxIEBAIGVudW0gewogI2Rl ZmluZSBERVZMSU5LX1NVUFBPUlRFRF9GTEFTSF9PVkVSV1JJVEVfU0VDVElPTlMgXAogCShfQklU VUwoX19ERVZMSU5LX0ZMQVNIX09WRVJXUklURV9NQVhfQklUKSAtIDEpCj0yMAorLyogQ29tbW9u bHkgdXNlZCB0ZXN0IGNhc2VzICovCitlbnVtIGRldmxpbmtfc2VsZnRlc3RfYXR0ciB7CisJREVW TElOS19TRUxGVEVTVF9BVFRSX1VOU1BFQywKKwlERVZMSU5LX1NFTEZURVNUX0FUVFJfRkxBU0gs CQkvKiBmbGFnICovCisKKwlfX0RFVkxJTktfU0VMRlRFU1RfQVRUUl9NQVgsCisJREVWTElOS19T RUxGVEVTVF9BVFRSX01BWCA9M0QgX19ERVZMSU5LX1NFTEZURVNUX0FUVFJfTUFYIC0gMQorfTsK KworZW51bSBkZXZsaW5rX3NlbGZ0ZXN0X3Jlc3VsdCB7CisJREVWTElOS19TRUxGVEVTVF9TS0lQ LAorCURFVkxJTktfU0VMRlRFU1RfUEFTUywKKwlERVZMSU5LX1NFTEZURVNUX0ZBSUwKK307CisK K2VudW0gZGV2bGlua19zZWxmdGVzdF9yZXN1bHRfYXR0ciB7CisJREVWTElOS19TRUxGVEVTVF9B VFRSX1JFU1VMVF9VTlNQRUMsCisJREVWTElOS19TRUxGVEVTVF9BVFRSX1JFU1VMVCwJCS8qIG5l c3RlZCAqLworCURFVkxJTktfU0VMRlRFU1RfQVRUUl9URVNUX0lELAkJLyogdTMyLCBkZXZsaW5r X3NlbGZ0ZXN0X2F0dHIgKi8KKwlERVZMSU5LX1NFTEZURVNUX0FUVFJfVEVTVF9TVEFUVVMsCS8q IHU4LCBkZXZsaW5rX3NlbGZ0ZXN0X3Jlc3VsdCAqLworCisJX19ERVZMSU5LX1NFTEZURVNUX0FU VFJfUkVTX01BWCwKKwlERVZMSU5LX1NFTEZURVNUX0FUVFJfUkVTX01BWCA9M0QgX19ERVZMSU5L X1NFTEZURVNUX0FUVFJfUkVTX01BWCAtIDEKK307CisKIC8qKgogICogZW51bSBkZXZsaW5rX3Ry YXBfYWN0aW9uIC0gUGFja2V0IHRyYXAgYWN0aW9uLgogICogQERFVkxJTktfVFJBUF9BQ1RJT05f RFJPUDogUGFja2V0IGlzIGRyb3BwZWQgYnkgdGhlIGRldmljZSBhbmQgYSBjb3B5IGk9CnMgbm90 CkBAIC01NzYsNiArNjA0LDcgQEAgZW51bSBkZXZsaW5rX2F0dHIgewogCURFVkxJTktfQVRUUl9M SU5FQ0FSRF9UWVBFLAkJLyogc3RyaW5nICovCiAJREVWTElOS19BVFRSX0xJTkVDQVJEX1NVUFBP UlRFRF9UWVBFUywJLyogbmVzdGVkICovCj0yMAorCURFVkxJTktfQVRUUl9TRUxGVEVTVFNfSU5G TywJCS8qIG5lc3RlZCAqLwogCS8qIGFkZCBuZXcgYXR0cmlidXRlcyBhYm92ZSBoZXJlLCB1cGRh dGUgdGhlIHBvbGljeSBpbiBkZXZsaW5rLmMgKi8KPTIwCiAJX19ERVZMSU5LX0FUVFJfTUFYLApk aWZmIC0tZ2l0IGEvbmV0L2NvcmUvZGV2bGluay5jIGIvbmV0L2NvcmUvZGV2bGluay5jCmluZGV4 IGE5Nzc2ZWE5MjNhZS4uNTdhOWExODNlMWQxIDEwMDY0NAotLS0gYS9uZXQvY29yZS9kZXZsaW5r LmMKKysrIGIvbmV0L2NvcmUvZGV2bGluay5jCkBAIC0xOTgsNiArMTk4LDEwIEBAIHN0YXRpYyBj b25zdCBzdHJ1Y3QgbmxhX3BvbGljeSBkZXZsaW5rX2Z1bmN0aW9uX25sX3BvbD0KaWN5W0RFVkxJ TktfUE9SVF9GVU5DVElPTl8KIAkJCQkgREVWTElOS19QT1JUX0ZOX1NUQVRFX0FDVElWRSksCiB9 Owo9MjAKK3N0YXRpYyBjb25zdCBzdHJ1Y3QgbmxhX3BvbGljeSBkZXZsaW5rX3NlbGZ0ZXN0X25s X3BvbGljeVtERVZMSU5LX1NFTEZURVNUPQpfQVRUUl9NQVggKyAxXSA9M0QgeworCVtERVZMSU5L X1NFTEZURVNUX0FUVFJfRkxBU0hdID0zRCB7IC50eXBlID0zRCBOTEFfRkxBRyB9LAorfTsKKwog c3RhdGljIERFRklORV9YQVJSQVlfRkxBR1MoZGV2bGlua3MsIFhBX0ZMQUdTX0FMTE9DKTsKICNk ZWZpbmUgREVWTElOS19SRUdJU1RFUkVEIFhBX01BUktfMQo9MjAKQEAgLTQ3OTEsNiArNDc5NSwy MDYgQEAgc3RhdGljIGludCBkZXZsaW5rX25sX2NtZF9mbGFzaF91cGRhdGUoc3RydWN0IHNrX2J1 PQpmZiAqc2tiLAogCXJldHVybiByZXQ7CiB9Cj0yMAorc3RhdGljIGludAorZGV2bGlua19ubF9z ZWxmdGVzdHNfZmlsbChzdHJ1Y3Qgc2tfYnVmZiAqbXNnLCBzdHJ1Y3QgZGV2bGluayAqZGV2bGlu aywKKwkJCSAgdTMyIHBvcnRpZCwgdTMyIHNlcSwgaW50IGZsYWdzLAorCQkJICBzdHJ1Y3QgbmV0 bGlua19leHRfYWNrICpleHRhY2spCit7CisJc3RydWN0IG5sYXR0ciAqc2VsZnRlc3RzX2xpc3Q7 CisJdm9pZCAqaGRyOworCWludCBlcnI7CisJaW50IGk7CisKKwloZHIgPTNEIGdlbmxtc2dfcHV0 KG1zZywgcG9ydGlkLCBzZXEsICZkZXZsaW5rX25sX2ZhbWlseSwgZmxhZ3MsCisJCQkgIERFVkxJ TktfQ01EX1NFTEZURVNUU19MSVNUKTsKKwlpZiAoIWhkcikKKwkJcmV0dXJuIC1FTVNHU0laRTsK KworCWVyciA9M0QgLUVNU0dTSVpFOworCWlmIChkZXZsaW5rX25sX3B1dF9oYW5kbGUobXNnLCBk ZXZsaW5rKSkKKwkJZ290byBlcnJfY2FuY2VsX21zZzsKKworCXNlbGZ0ZXN0c19saXN0ID0zRCBu bGFfbmVzdF9zdGFydChtc2csIERFVkxJTktfQVRUUl9TRUxGVEVTVFNfSU5GTyk7CisJaWYgKCFz ZWxmdGVzdHNfbGlzdCkKKwkJZ290byBlcnJfY2FuY2VsX21zZzsKKworCWZvciAoaSA9M0QgMTsg aSA8IERFVkxJTktfU0VMRlRFU1RfQVRUUl9NQVggKyAxOyBpKyspIHsKKwkJaWYgKGRldmxpbmst Pm9wcy0+c2VsZnRlc3RfY2hlY2soZGV2bGluaywgaSwgZXh0YWNrKSkgeworCQkJZXJyID0zRCBu bGFfcHV0X2ZsYWcobXNnLCBpKTsKKwkJCWlmIChlcnIpCisJCQkJZ290byBlcnJfY2FuY2VsX21z ZzsKKwkJfQorCX0KKworCW5sYV9uZXN0X2VuZChtc2csIHNlbGZ0ZXN0c19saXN0KTsKKworCWdl bmxtc2dfZW5kKG1zZywgaGRyKTsKKworCXJldHVybiAwOworCitlcnJfY2FuY2VsX21zZzoKKwln ZW5sbXNnX2NhbmNlbChtc2csIGhkcik7CisJcmV0dXJuIGVycjsKK30KKworc3RhdGljIGludCBk ZXZsaW5rX25sX2NtZF9zZWxmdGVzdHNfbGlzdF9kb2l0KHN0cnVjdCBza19idWZmICpza2IsCisJ CQkJCSAgICAgIHN0cnVjdCBnZW5sX2luZm8gKmluZm8pCit7CisJc3RydWN0IGRldmxpbmsgKmRl dmxpbmsgPTNEIGluZm8tPnVzZXJfcHRyWzBdOworCXN0cnVjdCBza19idWZmICptc2c7CisJaW50 IGVycjsKKworCWlmICghZGV2bGluay0+b3BzLT5zZWxmdGVzdF9jaGVjaykKKwkJcmV0dXJuIC1F T1BOT1RTVVBQOworCisJbXNnID0zRCBubG1zZ19uZXcoTkxNU0dfREVGQVVMVF9TSVpFLCBHRlBf S0VSTkVMKTsKKwlpZiAoIW1zZykKKwkJcmV0dXJuIC1FTk9NRU07CisKKwllcnIgPTNEIGRldmxp bmtfbmxfc2VsZnRlc3RzX2ZpbGwobXNnLCBkZXZsaW5rLCBpbmZvLT5zbmRfcG9ydGlkLAorCQkJ CQlpbmZvLT5zbmRfc2VxLCAwLCBpbmZvLT5leHRhY2spOworCWlmIChlcnIpIHsKKwkJbmxtc2df ZnJlZShtc2cpOworCQlyZXR1cm4gZXJyOworCX0KKworCXJldHVybiBnZW5sbXNnX3JlcGx5KG1z ZywgaW5mbyk7Cit9CisKK3N0YXRpYyBpbnQgZGV2bGlua19ubF9jbWRfc2VsZnRlc3RzX2xpc3Rf ZHVtcGl0KHN0cnVjdCBza19idWZmICptc2csCisJCQkJCQlzdHJ1Y3QgbmV0bGlua19jYWxsYmFj ayAqY2IpCit7CisJc3RydWN0IGRldmxpbmsgKmRldmxpbms7CisJaW50IHN0YXJ0ID0zRCBjYi0+ YXJnc1swXTsKKwl1bnNpZ25lZCBsb25nIGluZGV4OworCWludCBpZHggPTNEIDA7CisJaW50IGVy ciA9M0QgMDsKKworCW11dGV4X2xvY2soJmRldmxpbmtfbXV0ZXgpOworCXhhX2Zvcl9lYWNoX21h cmtlZCgmZGV2bGlua3MsIGluZGV4LCBkZXZsaW5rLCBERVZMSU5LX1JFR0lTVEVSRUQpIHsKKwkJ aWYgKCFkZXZsaW5rX3RyeV9nZXQoZGV2bGluaykpCisJCQljb250aW51ZTsKKworCQlpZiAoIW5l dF9lcShkZXZsaW5rX25ldChkZXZsaW5rKSwgc29ja19uZXQobXNnLT5zaykpKQorCQkJZ290byBy ZXRyeTsKKworCQlpZiAoaWR4IDwgc3RhcnQgfHwgIWRldmxpbmstPm9wcy0+c2VsZnRlc3RfY2hl Y2spCisJCQlnb3RvIGluYzsKKworCQltdXRleF9sb2NrKCZkZXZsaW5rLT5sb2NrKTsKKwkJZXJy ID0zRCBkZXZsaW5rX25sX3NlbGZ0ZXN0c19maWxsKG1zZywgZGV2bGluaywKKwkJCQkJCU5FVExJ TktfQ0IoY2ItPnNrYikucG9ydGlkLAorCQkJCQkJY2ItPm5saC0+bmxtc2dfc2VxLCBOTE1fRl9N VUxUSSwKKwkJCQkJCWNiLT5leHRhY2spOworCQltdXRleF91bmxvY2soJmRldmxpbmstPmxvY2sp OworCQlpZiAoZXJyKSB7CisJCQlkZXZsaW5rX3B1dChkZXZsaW5rKTsKKwkJCWJyZWFrOworCQl9 CitpbmM6CisJCWlkeCsrOworcmV0cnk6CisJCWRldmxpbmtfcHV0KGRldmxpbmspOworCX0KKwlt dXRleF91bmxvY2soJmRldmxpbmtfbXV0ZXgpOworCisJaWYgKGVyciAhPTNEIC1FTVNHU0laRSkK KwkJcmV0dXJuIGVycjsKKworCWNiLT5hcmdzWzBdID0zRCBpZHg7CisJcmV0dXJuIG1zZy0+bGVu OworfQorCitzdGF0aWMgaW50IGRldmxpbmtfc2VsZnRlc3RfcmVzdWx0X3B1dChzdHJ1Y3Qgc2tf YnVmZiAqc2tiLCBpbnQgdGVzdF9pZCwKKwkJCQkgICAgICAgdTggcmVzdWx0KQoreworCXN0cnVj dCBubGF0dHIgKnJlc3VsdF9hdHRyOworCisJcmVzdWx0X2F0dHIgPTNEIG5sYV9uZXN0X3N0YXJ0 KHNrYiwgREVWTElOS19TRUxGVEVTVF9BVFRSX1JFU1VMVCk7CisJaWYgKCFyZXN1bHRfYXR0cikK KwkJcmV0dXJuIC1FTVNHU0laRTsKKworCWlmIChubGFfcHV0X3UzMihza2IsIERFVkxJTktfU0VM RlRFU1RfQVRUUl9URVNUX0lELCB0ZXN0X2lkKSB8fAorCSAgICBubGFfcHV0X3U4KHNrYiwgREVW TElOS19TRUxGVEVTVF9BVFRSX1RFU1RfU1RBVFVTLCByZXN1bHQpKQorCQlnb3RvIG5sYV9wdXRf ZmFpbHVyZTsKKworCW5sYV9uZXN0X2VuZChza2IsIHJlc3VsdF9hdHRyKTsKKworCXJldHVybiAw OworCitubGFfcHV0X2ZhaWx1cmU6CisJbmxhX25lc3RfY2FuY2VsKHNrYiwgcmVzdWx0X2F0dHIp OworCXJldHVybiAtRU1TR1NJWkU7Cit9CisKK3N0YXRpYyBpbnQgZGV2bGlua19ubF9jbWRfc2Vs ZnRlc3RzX3J1bihzdHJ1Y3Qgc2tfYnVmZiAqc2tiLAorCQkJCQlzdHJ1Y3QgZ2VubF9pbmZvICpp bmZvKQoreworCXN0cnVjdCBubGF0dHIgKnRiW0RFVkxJTktfU0VMRlRFU1RfQVRUUl9NQVggKyAx XTsKKwlzdHJ1Y3QgZGV2bGluayAqZGV2bGluayA9M0QgaW5mby0+dXNlcl9wdHJbMF07CisJc3Ry dWN0IG5sYXR0ciAqYXR0cnMsICp0ZXN0c19pbmZvOworCXN0cnVjdCBza19idWZmICptc2c7CisJ dm9pZCAqaGRyOworCWludCBlcnI7CisJaW50IGk7CisKKwlpZiAoIWRldmxpbmstPm9wcy0+c2Vs ZnRlc3RfcnVuKQorCQlyZXR1cm4gLUVPUE5PVFNVUFA7CisKKwlpZiAoIWluZm8tPmF0dHJzW0RF VkxJTktfQVRUUl9TRUxGVEVTVFNfSU5GT10pCisJCXJldHVybiAtRUlOVkFMOworCisJYXR0cnMg PTNEIGluZm8tPmF0dHJzW0RFVkxJTktfQVRUUl9TRUxGVEVTVFNfSU5GT107CisKKwllcnIgPTNE IG5sYV9wYXJzZV9uZXN0ZWQodGIsIERFVkxJTktfU0VMRlRFU1RfQVRUUl9NQVgsIGF0dHJzLAor CQkJICAgICAgIGRldmxpbmtfc2VsZnRlc3RfbmxfcG9saWN5LCBpbmZvLT5leHRhY2spOworCWlm IChlcnIgPCAwKQorCQlyZXR1cm4gZXJyOworCisJbXNnID0zRCBubG1zZ19uZXcoTkxNU0dfREVG QVVMVF9TSVpFLCBHRlBfS0VSTkVMKTsKKwlpZiAoIW1zZykKKwkJcmV0dXJuIC1FTk9NRU07CisK KwllcnIgPTNEIC1FTVNHU0laRTsKKwloZHIgPTNEIGdlbmxtc2dfcHV0KG1zZywgaW5mby0+c25k X3BvcnRpZCwgaW5mby0+c25kX3NlcSwKKwkJCSAgJmRldmxpbmtfbmxfZmFtaWx5LCAwLCBERVZM SU5LX0NNRF9TRUxGVEVTVFNfUlVOKTsKKwlpZiAoIWhkcikKKwkJZ290byBmcmVlX21zZzsKKwor CWlmIChkZXZsaW5rX25sX3B1dF9oYW5kbGUobXNnLCBkZXZsaW5rKSkKKwkJZ290byBnZW5sbXNn X2NhbmNlbDsKKworCXRlc3RzX2luZm8gPTNEIG5sYV9uZXN0X3N0YXJ0KG1zZywgREVWTElOS19B VFRSX1NFTEZURVNUU19JTkZPKTsKKwlpZiAoIXRlc3RzX2luZm8pCisJCWdvdG8gZ2VubG1zZ19j YW5jZWw7CisKKwlmb3IgKGkgPTNEIDE7IGkgPCBERVZMSU5LX1NFTEZURVNUX0FUVFJfTUFYICsg MTsgaSsrKSB7CisJCXU4IHJlczsKKworCQlpZiAobmxhX2dldF9mbGFnKHRiW2ldKSkgeworCQkJ cmVzID0zRCBkZXZsaW5rLT5vcHMtPnNlbGZ0ZXN0X3J1bihkZXZsaW5rLCBpLAorCQkJCQkJCSBp bmZvLT5leHRhY2spOworCQkJZXJyID0zRCBkZXZsaW5rX3NlbGZ0ZXN0X3Jlc3VsdF9wdXQobXNn LCBpLCByZXMpOworCQkJaWYgKGVycikKKwkJCQlnb3RvIHNlbGZ0ZXN0c19saXN0X25lc3RfY2Fu Y2VsOworCQl9CisJfQorCisJbmxhX25lc3RfZW5kKG1zZywgdGVzdHNfaW5mbyk7CisKKwlnZW5s bXNnX2VuZChtc2csIGhkcik7CisKKwlyZXR1cm4gZ2VubG1zZ19yZXBseShtc2csIGluZm8pOwor CitzZWxmdGVzdHNfbGlzdF9uZXN0X2NhbmNlbDoKKwlubGFfbmVzdF9jYW5jZWwobXNnLCB0ZXN0 c19pbmZvKTsKK2dlbmxtc2dfY2FuY2VsOgorCWdlbmxtc2dfY2FuY2VsKG1zZywgaGRyKTsKK2Zy ZWVfbXNnOgorCW5sbXNnX2ZyZWUobXNnKTsKKwlyZXR1cm4gZXJyOworfQorCiBzdGF0aWMgY29u c3Qgc3RydWN0IGRldmxpbmtfcGFyYW0gZGV2bGlua19wYXJhbV9nZW5lcmljW10gPTNEIHsKIAl7 CiAJCS5pZCA9M0QgREVWTElOS19QQVJBTV9HRU5FUklDX0lEX0lOVF9FUlJfUkVTRVQsCkBAIC04 OTk3LDYgKzkyMDEsNyBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IG5sYV9wb2xpY3kgZGV2bGlua19u bF9wb2xpY3lbREVWTD0KSU5LX0FUVFJfTUFYICsgMV0gPTNEIHsKIAlbREVWTElOS19BVFRSX1JB VEVfUEFSRU5UX05PREVfTkFNRV0gPTNEIHsgLnR5cGUgPTNEIE5MQV9OVUxfU1RSSU5HIH0sCiAJ W0RFVkxJTktfQVRUUl9MSU5FQ0FSRF9JTkRFWF0gPTNEIHsgLnR5cGUgPTNEIE5MQV9VMzIgfSwK IAlbREVWTElOS19BVFRSX0xJTkVDQVJEX1RZUEVdID0zRCB7IC50eXBlID0zRCBOTEFfTlVMX1NU UklORyB9LAorCVtERVZMSU5LX0FUVFJfU0VMRlRFU1RTX0lORk9dID0zRCB7IC50eXBlID0zRCBO TEFfTkVTVEVEIH0sCiB9Owo9MjAKIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZ2VubF9zbWFsbF9vcHMg ZGV2bGlua19ubF9vcHNbXSA9M0QgewpAQCAtOTM1Niw2ICs5NTYxLDE3IEBAIHN0YXRpYyBjb25z dCBzdHJ1Y3QgZ2VubF9zbWFsbF9vcHMgZGV2bGlua19ubF9vcHNbXSA9Cj0zRCB7CiAJCS5kb2l0 ID0zRCBkZXZsaW5rX25sX2NtZF90cmFwX3BvbGljZXJfc2V0X2RvaXQsCiAJCS5mbGFncyA9M0Qg R0VOTF9BRE1JTl9QRVJNLAogCX0sCisJeworCQkuY21kID0zRCBERVZMSU5LX0NNRF9TRUxGVEVT VFNfTElTVCwKKwkJLmRvaXQgPTNEIGRldmxpbmtfbmxfY21kX3NlbGZ0ZXN0c19saXN0X2RvaXQs CisJCS5kdW1waXQgPTNEIGRldmxpbmtfbmxfY21kX3NlbGZ0ZXN0c19saXN0X2R1bXBpdAorCQkv KiBjYW4gYmUgcmV0cmlldmVkIGJ5IHVucHJpdmlsZWdlZCB1c2VycyAqLworCX0sCisJeworCQku Y21kID0zRCBERVZMSU5LX0NNRF9TRUxGVEVTVFNfUlVOLAorCQkuZG9pdCA9M0QgZGV2bGlua19u bF9jbWRfc2VsZnRlc3RzX3J1biwKKwkJLmZsYWdzID0zRCBHRU5MX0FETUlOX1BFUk0sCisJfSwK IH07Cj0yMAogc3RhdGljIHN0cnVjdCBnZW5sX2ZhbWlseSBkZXZsaW5rX25sX2ZhbWlseSBfX3Jv X2FmdGVyX2luaXQgPTNEIHsKLS09MjAKMi4zMS4xCg== --00000000000061657905e40e5f6c 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 YIZIAWUDBAIBBQCggdQwLwYJKoZIhvcNAQkEMSIEIFhdaoaOu6xw+f307lAjwlQSVNHQqFWkaAsg fe9bjDqsMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTIyMDcxODA2 MjEwNFowaQYJKoZIhvcNAQkPMVwwWjALBglghkgBZQMEASowCwYJYIZIAWUDBAEWMAsGCWCGSAFl AwQBAjAKBggqhkiG9w0DBzALBgkqhkiG9w0BAQowCwYJKoZIhvcNAQEHMAsGCWCGSAFlAwQCATAN BgkqhkiG9w0BAQEFAASCAQByLR8zupYKCb4weGcvs2ArLpOtF9EF1Qs8GcAJMJaLRIYq/wUpTCVz mjPxrQnT1mJeuF6tPGOOO4/e8EzfiIalQrMDiRBfFyGYV/753m1K5xskiGtVoyATLVTIrBJYq+iY uOE/BIjqF9BpS7UtrDpoEUGooGTADnT+DyPwSZnfpbds6sWmJ1hqZFBZICyg/o0o/KNXEDy6Gxxg e5sy3P5eeI1mXhxsCQU/zlAb2h49tChMpnnmp1n8I4ivWTYV6DaGbYTiA52GuaBrVp/L7sCBEQEs AlhtdDZBIqGa6aKsGmExcxxJWj9tM48sSKK94O9AhWXUwQQb/dY6V+fE22Bb --00000000000061657905e40e5f6c-- From nobody Sat Apr 18 04:19:36 2026 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 68F6FCCA48A for ; Mon, 18 Jul 2022 06:22:04 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233296AbiGRGVb (ORCPT ); Mon, 18 Jul 2022 02:21:31 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42016 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233111AbiGRGVK (ORCPT ); Mon, 18 Jul 2022 02:21:10 -0400 Received: from mail-pg1-x52f.google.com (mail-pg1-x52f.google.com [IPv6:2607:f8b0:4864:20::52f]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id F201614033 for ; Sun, 17 Jul 2022 23:21:08 -0700 (PDT) Received: by mail-pg1-x52f.google.com with SMTP id bh13so9719933pgb.4 for ; Sun, 17 Jul 2022 23:21:08 -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=o/17OgvqZViAVdBXvur8oyp4CedPbLwqnpAwjuVIjWc=; b=cUiEpIfQPaSpACdZLRjFUOOdpJi7DZBsgCXMd284T7zR0Wycao2/VrAttylg2AyCCz Ejpy/f59BnibNuqs+0+vSxjLw/+ZY/IbICTREUkCj6APsAeubex1aUdJuGYUrqz6wVPy EZ9DqalxCxPnmPI1JrP2ZrccAngFv9QZYIbqU= 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=o/17OgvqZViAVdBXvur8oyp4CedPbLwqnpAwjuVIjWc=; b=q0dUKh23flxYTDAFUbmz+0koPf5XqVQ0kcnmEgHpQbPwzJf9qR0KrKWG5DGVMdxFT3 ysF2/tpJk5J3LKBW9oO6W71i/ooaBZLUWcmSpHODGfgdtmXMctqo7/f2YJiGVgjggkpy xuBqG5QIJlpNN1IU8hFvyxoNegZ7yH3HQbS56LKyhXLmxPIlk8dO7jWBsL4yj9UzGxw8 hhqkCykH9ivBc51vppEN14aEAPZRg5Udt7wup75q7GNr1ht5U6Ctb1ta38F72zYbxyRD p0c9P2r33r4GaB87b+dnRf+YDgL6T92IzRtam54k/jzUrkROuFv48pCoWeE5he0z/pjA 6KgQ== X-Gm-Message-State: AJIora9+G69yptC20q8u+4Bo5VNzQk8ssLwU96kxaNLAjSIDcrbY2ofO xzmzp9Ja8SsKhT41IAzK5yGzCw== X-Google-Smtp-Source: AGRyM1sf2TWvTyYwA6Oq0WNCY/E8ZStJyRJz4ad93C/PpKO4eL5sUE67KWj34iO989WpsKlqIfvIWw== X-Received: by 2002:a63:91c1:0:b0:419:ae66:c6b5 with SMTP id l184-20020a6391c1000000b00419ae66c6b5mr19555966pge.377.1658125268531; Sun, 17 Jul 2022 23:21:08 -0700 (PDT) Received: from rahul_yocto_ubuntu18.ibn.broadcom.net ([192.19.234.250]) by smtp.gmail.com with ESMTPSA id h22-20020a170902f7d600b0016c4fe627eesm8360164plw.241.2022.07.17.23.21.04 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 17 Jul 2022 23:21:07 -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 v3 2/3] bnxt_en: refactor NVM APIs Date: Mon, 18 Jul 2022 11:50:31 +0530 Message-Id: <20220718062032.22426-3-vikas.gupta@broadcom.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20220718062032.22426-1-vikas.gupta@broadcom.com> References: <0220707182950.29348-1-vikas.gupta@broadcom.com> <20220718062032.22426-1-vikas.gupta@broadcom.com> Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-256; boundary="000000000000a5d45605e40e5f74" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: quoted-printable --000000000000a5d45605e40e5f74 MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 bW9kaWZ5IGRlY2xhcmF0aW9uIGZvciBOVk0gQVBJcyBzbyB0aGF0IHRoZXkgY2FuIGJlCnVzZWQg d2l0aCBkZXZsaW5rIGFuZCBldGh0b29sIGJvdGguCgpTaWduZWQtb2ZmLWJ5OiBWaWthcyBHdXB0 YSA8dmlrYXMuZ3VwdGFAYnJvYWRjb20uY29tPgpSZXZpZXdlZC1ieTogTWljaGFlbCBDaGFuIDxt aWNoYWVsLmNoYW5AYnJvYWRjb20uY29tPgpSZXZpZXdlZC1ieTogQW5keSBHb3Nwb2RhcmVrIDxh bmRyZXcuZ29zcG9kYXJla0Bicm9hZGNvbS5jb20+Ci0tLQogLi4uL25ldC9ldGhlcm5ldC9icm9h ZGNvbS9ibnh0L2JueHRfZXRodG9vbC5jIHwgMjQgKysrKysrKysrLS0tLS0tLS0tLQogLi4uL25l dC9ldGhlcm5ldC9icm9hZGNvbS9ibnh0L2JueHRfZXRodG9vbC5oIHwgMTIgKysrKysrKysrKwog MiBmaWxlcyBjaGFuZ2VkLCAyNCBpbnNlcnRpb25zKCspLCAxMiBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9icm9hZGNvbS9ibnh0L2JueHRfZXRodG9vbC5j IGIvZHJpdmVycy9uZT0KdC9ldGhlcm5ldC9icm9hZGNvbS9ibnh0L2JueHRfZXRodG9vbC5jCmlu ZGV4IDcxOTFlNWQ3NDIwOC4uODdlYjUzNjJhZDcwIDEwMDY0NAotLS0gYS9kcml2ZXJzL25ldC9l dGhlcm5ldC9icm9hZGNvbS9ibnh0L2JueHRfZXRodG9vbC5jCisrKyBiL2RyaXZlcnMvbmV0L2V0 aGVybmV0L2Jyb2FkY29tL2JueHQvYm54dF9ldGh0b29sLmMKQEAgLTIxNzYsMTQgKzIxNzYsMTQg QEAgc3RhdGljIHZvaWQgYm54dF9wcmludF9hZG1pbl9lcnIoc3RydWN0IGJueHQgKmJwKQogCW5l dGRldl9pbmZvKGJwLT5kZXYsICJQRiBkb2VzIG5vdCBoYXZlIGFkbWluIHByaXZpbGVnZXMgdG8g Zmxhc2ggb3IgcmVzZXQ9CiB0aGUgZGV2aWNlXG4iKTsKIH0KPTIwCi1zdGF0aWMgaW50IGJueHRf ZmluZF9udnJhbV9pdGVtKHN0cnVjdCBuZXRfZGV2aWNlICpkZXYsIHUxNiB0eXBlLCB1MTYgb3Jk aT0KbmFsLAotCQkJCXUxNiBleHQsIHUxNiAqaW5kZXgsIHUzMiAqaXRlbV9sZW5ndGgsCi0JCQkJ dTMyICpkYXRhX2xlbmd0aCk7CitpbnQgYm54dF9maW5kX252cmFtX2l0ZW0oc3RydWN0IG5ldF9k ZXZpY2UgKmRldiwgdTE2IHR5cGUsIHUxNiBvcmRpbmFsLAorCQkJIHUxNiBleHQsIHUxNiAqaW5k ZXgsIHUzMiAqaXRlbV9sZW5ndGgsCisJCQkgdTMyICpkYXRhX2xlbmd0aCk7Cj0yMAotc3RhdGlj IGludCBibnh0X2ZsYXNoX252cmFtKHN0cnVjdCBuZXRfZGV2aWNlICpkZXYsIHUxNiBkaXJfdHlw ZSwKLQkJCSAgICB1MTYgZGlyX29yZGluYWwsIHUxNiBkaXJfZXh0LCB1MTYgZGlyX2F0dHIsCi0J CQkgICAgdTMyIGRpcl9pdGVtX2xlbiwgY29uc3QgdTggKmRhdGEsCi0JCQkgICAgc2l6ZV90IGRh dGFfbGVuKQoraW50IGJueHRfZmxhc2hfbnZyYW0oc3RydWN0IG5ldF9kZXZpY2UgKmRldiwgdTE2 IGRpcl90eXBlLAorCQkgICAgIHUxNiBkaXJfb3JkaW5hbCwgdTE2IGRpcl9leHQsIHUxNiBkaXJf YXR0ciwKKwkJICAgICB1MzIgZGlyX2l0ZW1fbGVuLCBjb25zdCB1OCAqZGF0YSwKKwkJICAgICBz aXplX3QgZGF0YV9sZW4pCiB7CiAJc3RydWN0IGJueHQgKmJwID0zRCBuZXRkZXZfcHJpdihkZXYp OwogCXN0cnVjdCBod3JtX252bV93cml0ZV9pbnB1dCAqcmVxOwpAQCAtMjgzNiw4ICsyODM2LDgg QEAgc3RhdGljIGludCBibnh0X2dldF9udnJhbV9kaXJlY3Rvcnkoc3RydWN0IG5ldF9kZXZpY2U9 CiAqZGV2LCB1MzIgbGVuLCB1OCAqZGF0YSkKIAlyZXR1cm4gcmM7CiB9Cj0yMAotc3RhdGljIGlu dCBibnh0X2dldF9udnJhbV9pdGVtKHN0cnVjdCBuZXRfZGV2aWNlICpkZXYsIHUzMiBpbmRleCwg dTMyIG9mZnM9CmV0LAotCQkJICAgICAgIHUzMiBsZW5ndGgsIHU4ICpkYXRhKQoraW50IGJueHRf Z2V0X252cmFtX2l0ZW0oc3RydWN0IG5ldF9kZXZpY2UgKmRldiwgdTMyIGluZGV4LCB1MzIgb2Zm c2V0LAorCQkJdTMyIGxlbmd0aCwgdTggKmRhdGEpCiB7CiAJc3RydWN0IGJueHQgKmJwID0zRCBu ZXRkZXZfcHJpdihkZXYpOwogCWludCByYzsKQEAgLTI4NzEsOSArMjg3MSw5IEBAIHN0YXRpYyBp bnQgYm54dF9nZXRfbnZyYW1faXRlbShzdHJ1Y3QgbmV0X2RldmljZSAqZGV2PQosIHUzMiBpbmRl eCwgdTMyIG9mZnNldCwKIAlyZXR1cm4gcmM7CiB9Cj0yMAotc3RhdGljIGludCBibnh0X2ZpbmRf bnZyYW1faXRlbShzdHJ1Y3QgbmV0X2RldmljZSAqZGV2LCB1MTYgdHlwZSwgdTE2IG9yZGk9Cm5h bCwKLQkJCQl1MTYgZXh0LCB1MTYgKmluZGV4LCB1MzIgKml0ZW1fbGVuZ3RoLAotCQkJCXUzMiAq ZGF0YV9sZW5ndGgpCitpbnQgYm54dF9maW5kX252cmFtX2l0ZW0oc3RydWN0IG5ldF9kZXZpY2Ug KmRldiwgdTE2IHR5cGUsIHUxNiBvcmRpbmFsLAorCQkJIHUxNiBleHQsIHUxNiAqaW5kZXgsIHUz MiAqaXRlbV9sZW5ndGgsCisJCQkgdTMyICpkYXRhX2xlbmd0aCkKIHsKIAlzdHJ1Y3QgaHdybV9u dm1fZmluZF9kaXJfZW50cnlfb3V0cHV0ICpvdXRwdXQ7CiAJc3RydWN0IGh3cm1fbnZtX2ZpbmRf ZGlyX2VudHJ5X2lucHV0ICpyZXE7CmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9i cm9hZGNvbS9ibnh0L2JueHRfZXRodG9vbC5oIGIvZHJpdmVycy9uZT0KdC9ldGhlcm5ldC9icm9h ZGNvbS9ibnh0L2JueHRfZXRodG9vbC5oCmluZGV4IGE1OTI4NDIxNWU3OC4uYThlY2VmOGFiODJj IDEwMDY0NAotLS0gYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9icm9hZGNvbS9ibnh0L2JueHRfZXRo dG9vbC5oCisrKyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L2Jyb2FkY29tL2JueHQvYm54dF9ldGh0 b29sLmgKQEAgLTU4LDUgKzU4LDE3IEBAIGludCBibnh0X2ZsYXNoX3BhY2thZ2VfZnJvbV9md19v Ymooc3RydWN0IG5ldF9kZXZpY2UgKmRlPQp2LCBjb25zdCBzdHJ1Y3QgZmlybXdhcmUKIGludCBi bnh0X2dldF9wa2dpbmZvKHN0cnVjdCBuZXRfZGV2aWNlICpkZXYsIGNoYXIgKnZlciwgaW50IHNp emUpOwogdm9pZCBibnh0X2V0aHRvb2xfaW5pdChzdHJ1Y3QgYm54dCAqYnApOwogdm9pZCBibnh0 X2V0aHRvb2xfZnJlZShzdHJ1Y3QgYm54dCAqYnApOworaW50IGJueHRfZmluZF9udnJhbV9pdGVt KHN0cnVjdCBuZXRfZGV2aWNlICpkZXYsIHUxNiB0eXBlLCB1MTYgb3JkaW5hbCwKKwkJCSB1MTYg ZXh0LCB1MTYgKmluZGV4LCB1MzIgKml0ZW1fbGVuZ3RoLAorCQkJIHUzMiAqZGF0YV9sZW5ndGgp OworaW50IGJueHRfZmluZF9udnJhbV9pdGVtKHN0cnVjdCBuZXRfZGV2aWNlICpkZXYsIHUxNiB0 eXBlLCB1MTYgb3JkaW5hbCwKKwkJCSB1MTYgZXh0LCB1MTYgKmluZGV4LCB1MzIgKml0ZW1fbGVu Z3RoLAorCQkJIHUzMiAqZGF0YV9sZW5ndGgpOworaW50IGJueHRfZmxhc2hfbnZyYW0oc3RydWN0 IG5ldF9kZXZpY2UgKmRldiwgdTE2IGRpcl90eXBlLAorCQkgICAgIHUxNiBkaXJfb3JkaW5hbCwg dTE2IGRpcl9leHQsIHUxNiBkaXJfYXR0ciwKKwkJICAgICB1MzIgZGlyX2l0ZW1fbGVuLCBjb25z dCB1OCAqZGF0YSwKKwkJICAgICBzaXplX3QgZGF0YV9sZW4pOworaW50IGJueHRfZ2V0X252cmFt X2l0ZW0oc3RydWN0IG5ldF9kZXZpY2UgKmRldiwgdTMyIGluZGV4LCB1MzIgb2Zmc2V0LAorCQkJ dTMyIGxlbmd0aCwgdTggKmRhdGEpOwo9MjAKICNlbmRpZgotLT0yMAoyLjMxLjEK --000000000000a5d45605e40e5f74 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 YIZIAWUDBAIBBQCggdQwLwYJKoZIhvcNAQkEMSIEIChy1m/MG2rd7tLtfQn0MOUiEkdR32mZmp/r aCubfblkMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTIyMDcxODA2 MjEwOFowaQYJKoZIhvcNAQkPMVwwWjALBglghkgBZQMEASowCwYJYIZIAWUDBAEWMAsGCWCGSAFl AwQBAjAKBggqhkiG9w0DBzALBgkqhkiG9w0BAQowCwYJKoZIhvcNAQEHMAsGCWCGSAFlAwQCATAN BgkqhkiG9w0BAQEFAASCAQB8V3iNRpOBB/HLyMBWk4x2rswXnALQ44DJudrGo/TubrbgjmjSUi0I yO7HihKVKPlyWgFzEoRNBphoZijrXrBlKJ2ysiWQAYm0L3gcqj0DJUPD4tyyK8+DLlu1jrVrEwLn drCAsvEl76XdcEXDxj400yanvx0q/nGkF+GXx62IbacUOpJN67G1DQbnG0YJ2pEbmtqu/aLCFKpB Yr+tan87Zlept/PKfZsJUz7xk7qPzTv4q/jVhWNKOyMfv7TGfM688qKKYCEBqvbUxCXSTAoC6qN7 WhI/GkSMir+FbLRFp2u59detyXBCHKhBkux3VKehK2LpUNWmraBH2oaXtEt1 --000000000000a5d45605e40e5f74-- From nobody Sat Apr 18 04:19:36 2026 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 7BD27CCA48D for ; Mon, 18 Jul 2022 06:22:04 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233424AbiGRGVd (ORCPT ); Mon, 18 Jul 2022 02:21:33 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42058 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233287AbiGRGVO (ORCPT ); Mon, 18 Jul 2022 02:21:14 -0400 Received: from mail-pl1-x633.google.com (mail-pl1-x633.google.com [IPv6:2607:f8b0:4864:20::633]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0C0DE13F06 for ; Sun, 17 Jul 2022 23:21:14 -0700 (PDT) Received: by mail-pl1-x633.google.com with SMTP id x21so8154344plb.3 for ; Sun, 17 Jul 2022 23:21:14 -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=1Mu+ZpEwkOkeXdv+j6KMllsqW6m0gdvp9ssqFzX4P6Q=; b=BSLz/RQRx1xTSORq5E3X49zdL5e41Es2doRKA2dpGBKemY3Yq33I2RMAoxICad+08g U2nB77PEv1d3/wUEnzZzYRvnhr8VLfMxmVtZn1SuJuptjfRRKd9XXsYBylJkmtyqkteK rLImFtIafzQW8I3mFSOR4kL/Z5LodF3AM0epo= 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=1Mu+ZpEwkOkeXdv+j6KMllsqW6m0gdvp9ssqFzX4P6Q=; b=a+qIkFXBHaSW8tKTJh6G2mqAo0tsSDarWseLXWhZPSIjfRjgiYF3qDJYrKtZznidhW FkDakFZSZ7AnfYz2kIbSD+SHyLeR/76nkTjt4LsAc00/IczzOxqj9d9B2gSuSAiLYSWd RL1Ax3sSUr0ASS7/pSoBsZBDWOYbg+Oeg30LrAEP1+Z3M20CkK0Qd45eOj8kPwYFLsTB xQkhttR0dvtnTC//uh7RiLfvVMnhc89Gmer16tYRycuslyBEdY7Q/nTypziJ3+0Zf9Im Mryf8aySnpXZomEagtl//WMhdNAAo3VUry3A7hoetndTgI/Z1t/iPB3u0WoBpwYoWcVw xMAA== X-Gm-Message-State: AJIora+5G6lBCNxslY5nvmvGBSTlrCaO+HLTSkJhj9zBUjmPY/u/yMEe mkyrlDCYzXvA2zJ7e9HEGRCvog== X-Google-Smtp-Source: AGRyM1tFH8gRwx2TENSO+/lHYipZeB/ObN8QCw5ZygwkTjP8pO52wmkBDoJVMpfOC6oJS/hXw4nrgw== X-Received: by 2002:a17:903:2483:b0:16c:dfcf:38e8 with SMTP id p3-20020a170903248300b0016cdfcf38e8mr9767888plw.43.1658125273214; Sun, 17 Jul 2022 23:21:13 -0700 (PDT) Received: from rahul_yocto_ubuntu18.ibn.broadcom.net ([192.19.234.250]) by smtp.gmail.com with ESMTPSA id h22-20020a170902f7d600b0016c4fe627eesm8360164plw.241.2022.07.17.23.21.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 17 Jul 2022 23:21:12 -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 v3 3/3] bnxt_en: implement callbacks for devlink selftests Date: Mon, 18 Jul 2022 11:50:32 +0530 Message-Id: <20220718062032.22426-4-vikas.gupta@broadcom.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20220718062032.22426-1-vikas.gupta@broadcom.com> References: <0220707182950.29348-1-vikas.gupta@broadcom.com> <20220718062032.22426-1-vikas.gupta@broadcom.com> Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-256; boundary="000000000000f039d805e40e5fe5" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: quoted-printable --000000000000f039d805e40e5fe5 MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 QWRkIGNhbGxiYWNrcwo9M0Q9M0Q9M0Q9M0Q9M0Q9M0Q9M0Q9M0Q9M0Q9M0Q9M0Q9M0Q9M0QKLnNl bGZ0ZXN0X2NoZWNrOiByZXR1cm5zIHRydWUgZm9yIGZsYXNoIHNlbGZ0ZXN0Lgouc2VsZnRlc3Rf cnVuOiBydW5zIGEgZmxhc2ggc2VsZnRlc3QuCgpTaWduZWQtb2ZmLWJ5OiBWaWthcyBHdXB0YSA8 dmlrYXMuZ3VwdGFAYnJvYWRjb20uY29tPgpSZXZpZXdlZC1ieTogTWljaGFlbCBDaGFuIDxtaWNo YWVsLmNoYW5AYnJvYWRjb20uY29tPgpSZXZpZXdlZC1ieTogQW5keSBHb3Nwb2RhcmVrIDxhbmRy ZXcuZ29zcG9kYXJla0Bicm9hZGNvbS5jb20+Ci0tLQogLi4uL25ldC9ldGhlcm5ldC9icm9hZGNv bS9ibnh0L2JueHRfZGV2bGluay5jIHwgNjAgKysrKysrKysrKysrKysrKysrKwogMSBmaWxlIGNo YW5nZWQsIDYwIGluc2VydGlvbnMoKykKCmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9ldGhlcm5l dC9icm9hZGNvbS9ibnh0L2JueHRfZGV2bGluay5jIGIvZHJpdmVycy9uZT0KdC9ldGhlcm5ldC9i cm9hZGNvbS9ibnh0L2JueHRfZGV2bGluay5jCmluZGV4IDZiM2Q0ZjRjMmE3NS4uOTI3Y2YzNjhk ODU2IDEwMDY0NAotLS0gYS9kcml2ZXJzL25ldC9ldGhlcm5ldC9icm9hZGNvbS9ibnh0L2JueHRf ZGV2bGluay5jCisrKyBiL2RyaXZlcnMvbmV0L2V0aGVybmV0L2Jyb2FkY29tL2JueHQvYm54dF9k ZXZsaW5rLmMKQEAgLTIwLDYgKzIwLDggQEAKICNpbmNsdWRlICJibnh0X3VscC5oIgogI2luY2x1 ZGUgImJueHRfcHRwLmgiCiAjaW5jbHVkZSAiYm54dF9jb3JlZHVtcC5oIgorI2luY2x1ZGUgImJu eHRfbnZtX2RlZnMuaCIKKyNpbmNsdWRlICJibnh0X2V0aHRvb2wuaCIKPTIwCiBzdGF0aWMgdm9p ZCBfX2JueHRfZndfcmVjb3ZlcihzdHJ1Y3QgYm54dCAqYnApCiB7CkBAIC02MTAsNiArNjEyLDYy IEBAIHN0YXRpYyBpbnQgYm54dF9kbF9yZWxvYWRfdXAoc3RydWN0IGRldmxpbmsgKmRsLCBlbnVt ID0KZGV2bGlua19yZWxvYWRfYWN0aW9uIGFjdGkKIAlyZXR1cm4gcmM7CiB9Cj0yMAorc3RhdGlj IGJvb2wgYm54dF9udm1fdGVzdChzdHJ1Y3QgYm54dCAqYnAsIHN0cnVjdCBuZXRsaW5rX2V4dF9h Y2sgKmV4dGFjaykKK3sKKwl1MzIgZGF0YWxlbjsKKwl1MTYgaW5kZXg7CisJdTggKmJ1ZjsKKwor CWlmIChibnh0X2ZpbmRfbnZyYW1faXRlbShicC0+ZGV2LCBCTlhfRElSX1RZUEVfVlBELAorCQkJ CSBCTlhfRElSX09SRElOQUxfRklSU1QsIEJOWF9ESVJfRVhUX05PTkUsCisJCQkJICZpbmRleCwg TlVMTCwgJmRhdGFsZW4pIHx8ICFkYXRhbGVuKSB7CisJCU5MX1NFVF9FUlJfTVNHX01PRChleHRh Y2ssICJudm0gdGVzdCB2cGQgZW50cnkgZXJyb3IiKTsKKwkJcmV0dXJuIGZhbHNlOworCX0KKwor CWJ1ZiA9M0Qga3phbGxvYyhkYXRhbGVuLCBHRlBfS0VSTkVMKTsKKwlpZiAoIWJ1ZikgeworCQlO TF9TRVRfRVJSX01TR19NT0QoZXh0YWNrLCAiaW5zdWZmaWNpZW50IG1lbW9yeSBmb3IgbnZtIHRl c3QiKTsKKwkJcmV0dXJuIGZhbHNlOworCX0KKworCWlmIChibnh0X2dldF9udnJhbV9pdGVtKGJw LT5kZXYsIGluZGV4LCAwLCBkYXRhbGVuLCBidWYpKSB7CisJCU5MX1NFVF9FUlJfTVNHX01PRChl eHRhY2ssICJudm0gdGVzdCB2cGQgcmVhZCBlcnJvciIpOworCQlnb3RvIGVycjsKKwl9CisKKwlp ZiAoYm54dF9mbGFzaF9udnJhbShicC0+ZGV2LCBCTlhfRElSX1RZUEVfVlBELCBCTlhfRElSX09S RElOQUxfRklSU1QsCisJCQkgICAgIEJOWF9ESVJfRVhUX05PTkUsIDAsIDAsIGJ1ZiwgZGF0YWxl bikpIHsKKwkJTkxfU0VUX0VSUl9NU0dfTU9EKGV4dGFjaywgIm52bSB0ZXN0IHZwZCB3cml0ZSBl cnJvciIpOworCQlnb3RvIGVycjsKKwl9CisKKwlyZXR1cm4gdHJ1ZTsKKworZXJyOgorCWtmcmVl KGJ1Zik7CisJcmV0dXJuIGZhbHNlOworfQorCitzdGF0aWMgYm9vbCBibnh0X2RsX3NlbGZ0ZXN0 X2NoZWNrKHN0cnVjdCBkZXZsaW5rICpkbCwgaW50IHRlc3RfaWQsCisJCQkJICAgc3RydWN0IG5l dGxpbmtfZXh0X2FjayAqZXh0YWNrKQoreworCXJldHVybiAodGVzdF9pZCA9M0Q9M0QgREVWTElO S19TRUxGVEVTVF9BVFRSX0ZMQVNIKTsKK30KKworc3RhdGljIHU4IGJueHRfZGxfc2VsZnRlc3Rf cnVuKHN0cnVjdCBkZXZsaW5rICpkbCwgaW50IHRlc3RfaWQsCisJCQkgICAgICAgc3RydWN0IG5l dGxpbmtfZXh0X2FjayAqZXh0YWNrKQoreworCXN0cnVjdCBibnh0ICpicCA9M0QgYm54dF9nZXRf YnBfZnJvbV9kbChkbCk7CisKKwlpZiAodGVzdF9pZCA9M0Q9M0QgREVWTElOS19TRUxGVEVTVF9B VFRSX0ZMQVNIKSB7CisJCXJldHVybiAoYm54dF9udm1fdGVzdChicCwgZXh0YWNrKSA/IERFVkxJ TktfU0VMRlRFU1RfUEFTUyA6CisJCQkJCQkgICAgREVWTElOS19TRUxGVEVTVF9GQUlMKTsKKwl9 CisKKwlyZXR1cm4gREVWTElOS19TRUxGVEVTVF9TS0lQOworfQorCiBzdGF0aWMgY29uc3Qgc3Ry dWN0IGRldmxpbmtfb3BzIGJueHRfZGxfb3BzID0zRCB7CiAjaWZkZWYgQ09ORklHX0JOWFRfU1JJ T1YKIAkuZXN3aXRjaF9tb2RlX3NldCA9M0QgYm54dF9kbF9lc3dpdGNoX21vZGVfc2V0LApAQCAt NjIyLDYgKzY4MCw4IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZGV2bGlua19vcHMgYm54dF9kbF9v cHMgPTNEIHsKIAkucmVsb2FkX2xpbWl0cwkgID0zRCBCSVQoREVWTElOS19SRUxPQURfTElNSVRf Tk9fUkVTRVQpLAogCS5yZWxvYWRfZG93bgkgID0zRCBibnh0X2RsX3JlbG9hZF9kb3duLAogCS5y ZWxvYWRfdXAJICA9M0QgYm54dF9kbF9yZWxvYWRfdXAsCisJLnNlbGZ0ZXN0X2NoZWNrCSAgPTNE IGJueHRfZGxfc2VsZnRlc3RfY2hlY2ssCisJLnNlbGZ0ZXN0X3J1bgkgID0zRCBibnh0X2RsX3Nl bGZ0ZXN0X3J1biwKIH07Cj0yMAogc3RhdGljIGNvbnN0IHN0cnVjdCBkZXZsaW5rX29wcyBibnh0 X3ZmX2RsX29wczsKLS09MjAKMi4zMS4xCg== --000000000000f039d805e40e5fe5 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 YIZIAWUDBAIBBQCggdQwLwYJKoZIhvcNAQkEMSIEILnF94BrX4QbDy6JoUKYQyT1p/qvWlu0d27U I5aBpvTbMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTIyMDcxODA2 MjExM1owaQYJKoZIhvcNAQkPMVwwWjALBglghkgBZQMEASowCwYJYIZIAWUDBAEWMAsGCWCGSAFl AwQBAjAKBggqhkiG9w0DBzALBgkqhkiG9w0BAQowCwYJKoZIhvcNAQEHMAsGCWCGSAFlAwQCATAN BgkqhkiG9w0BAQEFAASCAQBD043xUqB+3lFhSbnprB4Bk5PIxCZFmyx+hzdNb7iVFtuTeIzk857A HJ88LFfQSEuA1kPF0vHmSLiIJHW5ntaOAM/b44QZMT77x0WgXc7jSC0oRDZURH/bvao/peI1CK3H Nr11OhotZDqVx6TTIWtXkRWC4pB6RhuOZLVwSyEOPXQrJ2vGcjYAJOqLIm7laDciHZqHSDj9Fuey SkkkZ1VIreApvnc3lnUPD+hxD7AHWLwSxBuDrk2yihXQvwg70fx2gaHkevORJE9qpM0rX5VjnkeY VFv7O2277Iy+/4FbjJTK4zlMpOGiKDgv6RhC5O8TEz9TqfDxD2WJDmEsVHtD --000000000000f039d805e40e5fe5--