From nobody Sun Apr 19 02:12:12 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 3D78ECCA47F for ; Thu, 7 Jul 2022 18:32:47 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236219AbiGGScq (ORCPT ); Thu, 7 Jul 2022 14:32:46 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57212 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236715AbiGGScc (ORCPT ); Thu, 7 Jul 2022 14:32:32 -0400 Received: from mail-pg1-x529.google.com (mail-pg1-x529.google.com [IPv6:2607:f8b0:4864:20::529]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DCF1A73587 for ; Thu, 7 Jul 2022 11:30:23 -0700 (PDT) Received: by mail-pg1-x529.google.com with SMTP id 145so20007262pga.12 for ; Thu, 07 Jul 2022 11:30:23 -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=EcaR7sUyYFP2OmusRM8Gf5Bz7jjDf0GWRUDsDTZ0oxM=; b=WPhGXbw4V0ZxkVpnmSE+5tFzsUusYUqm+4lVRhwHobGFm6D1g1b4+uJzbMSrpeVPZ8 z8+mOzxyTKxqGh5LAPSIuPpK3t2tu3CfAQgpPn8KhlRUHbI2KuoUAdmZzuqVjYMoBUz8 RSxp1X9xlR3+zanxGkFDPbRw0l61ZDhCE0mQ4= 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=EcaR7sUyYFP2OmusRM8Gf5Bz7jjDf0GWRUDsDTZ0oxM=; b=DadHav0x/XG/LrXvJKiBQh0l6qkpBLuzfQC+5KTOv6bSrAWWvY5nlQtUEc3k6nmGPB 2xDMyfSbR97ZVKf6ID6q/tejI8rfMwOX70U0xFqz2YAmNej3Vp0DW9ghGv8C3ZCBmy+R X/AjPWOIFi5XiB7binlolV40QtfO6+dcY/vv0dX4WuODl6FuaiGrzR6qegSVJmrcqSG1 EdlVAb33d2qkxhelk+DJFTAq8WbY09Z114ooV4OpsL/PNrONCjjPfFunx2h0a6kRqiGR /hOuVQLZUIxgdTbO5GGlsxQ6jHAJVxTG0nJWFclK/Nz3iwmWdZO/WRSsg0CH6rm0Yuu4 6lcQ== X-Gm-Message-State: AJIora/TYaRhLllUfJ7+wLQpI1Hth7zVaaRuFXkY9l91xHZCqflwM/9M iUEjFOcGtHuM9cGqam8BXNLgLA== X-Google-Smtp-Source: AGRyM1sIipm971ZqE89vxyMR6A9r0jRVO+ByhiVDOSeV0G11NXpRaleySzrZb3j/tFPOUKz2DeefPQ== X-Received: by 2002:a17:90b:507:b0:1ee:de8c:6aa2 with SMTP id r7-20020a17090b050700b001eede8c6aa2mr6879982pjz.105.1657218621336; Thu, 07 Jul 2022 11:30:21 -0700 (PDT) Received: from rahul_yocto_ubuntu18.ibn.broadcom.net ([192.19.252.250]) by smtp.gmail.com with ESMTPSA id pj9-20020a17090b4f4900b001ef92e0e7c1sm7132234pjb.10.2022.07.07.11.30.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 07 Jul 2022 11:30:20 -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 v2 1/3] devlink: introduce framework for selftests Date: Thu, 7 Jul 2022 23:59:48 +0530 Message-Id: <20220707182950.29348-2-vikas.gupta@broadcom.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20220707182950.29348-1-vikas.gupta@broadcom.com> References: <20220628164241.44360-1-vikas.gupta@broadcom.com> <20220707182950.29348-1-vikas.gupta@broadcom.com> Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-256; boundary="00000000000045a54e05e33b47ab" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: quoted-printable --00000000000045a54e05e33b47ab MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 QWRkIGEgZnJhbWV3b3JrIGZvciBydW5uaW5nIHNlbGZ0ZXN0cy4KRnJhbWV3b3JrIGV4cG9zZXMg ZGV2bGluayBjb21tYW5kcyBhbmQgdGVzdCBzdWl0ZShzKSB0byB0aGUgdXNlcgp0byBleGVjdXRl IGFuZCBxdWVyeSB0aGUgc3VwcG9ydGVkIHRlc3RzIGJ5IHRoZSBkcml2ZXIuCgpCZWxvdyBhcmUg bmV3IGVudHJpZXMgaW4gZGV2bGlua19ubF9vcHMKZGV2bGlua19ubF9jbWRfc2VsZnRlc3RzX3No b3c6IFRvIHF1ZXJ5IHRoZSBzdXBwb3J0ZWQgc2VsZnRlc3RzCmJ5IHRoZSBkcml2ZXIuCmRldmxp bmtfbmxfY21kX3NlbGZ0ZXN0c19ydW46IFRvIGV4ZWN1dGUgc2VsZnRlc3RzLiBVc2VycyBjYW4K cHJvdmlkZSBhIHRlc3QgbWFzayBmb3IgZXhlY3V0aW5nIGdyb3VwIHRlc3RzIG9yIHN0YW5kYWxv bmUgdGVzdHMuCgpEb2N1bWVudGF0aW9uL25ldHdvcmtpbmcvZGV2bGluay8gcGF0aCBpcyBhbHJl YWR5IHBhcnQgb2YgTUFJTlRBSU5FUlMgJgp0aGUgbmV3IGZpbGVzIGNvbWUgdW5kZXIgdGhpcyBw YXRoLiBIZW5jZSBubyB1cGRhdGUgbmVlZGVkIHRvIHRoZQpNQUlOVEFJTkVSUwoKU2lnbmVkLW9m Zi1ieTogVmlrYXMgR3VwdGEgPHZpa2FzLmd1cHRhQGJyb2FkY29tLmNvbT4KUmV2aWV3ZWQtYnk6 IE1pY2hhZWwgQ2hhbiA8bWljaGFlbC5jaGFuQGJyb2FkY29tLmNvbT4KUmV2aWV3ZWQtYnk6IEFu ZHkgR29zcG9kYXJlayA8YW5kcmV3Lmdvc3BvZGFyZWtAYnJvYWRjb20uY29tPgpSZXBvcnRlZC1i eToga2VybmVsIHRlc3Qgcm9ib3QgPGxrcEBpbnRlbC5jb20+Ci0tLQogLi4uL25ldHdvcmtpbmcv ZGV2bGluay9kZXZsaW5rLXNlbGZ0ZXN0cy5yc3QgIHwgIDM0ICsrKysrCiBpbmNsdWRlL25ldC9k ZXZsaW5rLmggICAgICAgICAgICAgICAgICAgICAgICAgfCAgMzAgKysrKwogaW5jbHVkZS91YXBp L2xpbnV4L2RldmxpbmsuaCAgICAgICAgICAgICAgICAgIHwgIDI2ICsrKysKIG5ldC9jb3JlL2Rl dmxpbmsuYyAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDE0NCArKysrKysrKysrKysrKysr KysKIDQgZmlsZXMgY2hhbmdlZCwgMjM0IGluc2VydGlvbnMoKykKIGNyZWF0ZSBtb2RlIDEwMDY0 NCBEb2N1bWVudGF0aW9uL25ldHdvcmtpbmcvZGV2bGluay9kZXZsaW5rLXNlbGZ0ZXN0cy5yc3QK CmRpZmYgLS1naXQgYS9Eb2N1bWVudGF0aW9uL25ldHdvcmtpbmcvZGV2bGluay9kZXZsaW5rLXNl bGZ0ZXN0cy5yc3QgYi9Eb2N1bT0KZW50YXRpb24vbmV0d29ya2luZy9kZXZsaW5rL2Rldmxpbmst c2VsZnRlc3RzLnJzdApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLjc5 NmQzOGY3NzAzOAotLS0gL2Rldi9udWxsCisrKyBiL0RvY3VtZW50YXRpb24vbmV0d29ya2luZy9k ZXZsaW5rL2Rldmxpbmstc2VsZnRlc3RzLnJzdApAQCAtMCwwICsxLDM0IEBACisuLiBTUERYLUxp Y2Vuc2UtSWRlbnRpZmllcjogKEdQTC0yLjAtb25seSBPUiBCU0QtMi1DbGF1c2UpCisKKz0zRD0z RD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRAorRGV2bGluayBT ZWxmdGVzdHMKKz0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0z RD0zRAorCitUaGUgYGBkZXZsaW5rLXNlbGZ0ZXN0c2BgIEFQSSBhbGxvd3MgZXhlY3V0aW5nIHNl bGZ0ZXN0cyBvbiB0aGUgZGV2aWNlLgorCitUZXN0cyBNYXNrCis9M0Q9M0Q9M0Q9M0Q9M0Q9M0Q9 M0Q9M0Q9M0Q9M0QKK1RoZSBgYGRldmxpbmstc2VsZnRlc3RzYGAgY29tbWFuZCBzaG91bGQgYmUg cnVuIHdpdGggYSBtYXNrIGluZGljYXRpbmcKK3RoZSB0ZXN0cyB0byBiZSBleGVjdXRlZC4KKwor VGVzdHMgRGVzY3JpcHRpb24KKz0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0zRD0z RD0zRD0zRD0zRD0zRAorVGhlIGZvbGxvd2luZyBpcyBhIGxpc3Qgb2YgdGVzdHMgdGhhdCBkcml2 ZXJzIG1heSBleGVjdXRlLgorCisuLiBsaXN0LXRhYmxlOjogTGlzdCBvZiB0ZXN0cworICAgOndp ZHRoczogNSA5MAorCisgICAqIC0gTmFtZQorICAgICAtIERlc2NyaXB0aW9uCisgICAqIC0gYGBE RVZMSU5LX1NFTEZURVNUX0ZMQVNIYGAKKyAgICAgLSBSdW5zIGEgZmxhc2ggdGVzdCBvbiB0aGUg ZGV2aWNlLgorCitleGFtcGxlIHVzYWdlCistLS0tLS0tLS0tLS0tCisKKy4uIGNvZGU6OiBzaGVs bAorCisgICAgIyBRdWVyeSBzZWxmdGVzdHMgc3VwcG9ydGVkIG9uIHRoZSBkZXZpY2UKKyAgICAk IGRldmxpbmsgZGV2IHNlbGZ0ZXN0cyBzaG93IERFVgorICAgICMgRXhlY3V0ZXMgc2VsZnRlc3Rz IG9uIHRoZSBkZXZpY2UKKyAgICAkIGRldmxpbmsgZGV2IHNlbGZ0ZXN0cyBydW4gREVWIHRlc3Qg e2ZsYXNoIHwgYWxsfQpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9uZXQvZGV2bGluay5oIGIvaW5jbHVk ZS9uZXQvZGV2bGluay5oCmluZGV4IDJhMmEyYTBjOTNmNy4uY2I3YzM3OGNmNzIwIDEwMDY0NAot LS0gYS9pbmNsdWRlL25ldC9kZXZsaW5rLmgKKysrIGIvaW5jbHVkZS9uZXQvZGV2bGluay5oCkBA IC0xMjE1LDYgKzEyMTUsMTggQEAgZW51bSB7CiAJREVWTElOS19GX1JFTE9BRCA9M0QgMVVMIDw8 IDAsCiB9Owo9MjAKKyNkZWZpbmUgREVWTElOS19TRUxGVEVTVF9GTEFTSF9URVNUX05BTUUgImZs YXNoIgorCitzdGF0aWMgaW5saW5lIGNvbnN0IGNoYXIgKmRldmxpbmtfc2VsZnRlc3RfbmFtZShp bnQgdGVzdCkKK3sKKwlzd2l0Y2ggKHRlc3QpIHsKKwljYXNlIERFVkxJTktfU0VMRlRFU1RfRkxB U0hfQklUOgorCQlyZXR1cm4gREVWTElOS19TRUxGVEVTVF9GTEFTSF9URVNUX05BTUU7CisJZGVm YXVsdDoKKwkJcmV0dXJuICJ1bmtub3duIjsKKwl9Cit9CisKIHN0cnVjdCBkZXZsaW5rX29wcyB7 CiAJLyoqCiAJICogQHN1cHBvcnRlZF9mbGFzaF91cGRhdGVfcGFyYW1zOgpAQCAtMTUwOSw2ICsx NTIxLDI0IEBAIHN0cnVjdCBkZXZsaW5rX29wcyB7CiAJCQkJICAgIHN0cnVjdCBkZXZsaW5rX3Jh dGUgKnBhcmVudCwKIAkJCQkgICAgdm9pZCAqcHJpdl9jaGlsZCwgdm9pZCAqcHJpdl9wYXJlbnQs CiAJCQkJICAgIHN0cnVjdCBuZXRsaW5rX2V4dF9hY2sgKmV4dGFjayk7CisJLyoqCisJICogc2Vs ZnRlc3RzX3Nob3coKSAtIFNob3dzIHNlbGZ0ZXN0cyBzdXBwb3J0ZWQgYnkgZGV2aWNlCisJICog QGRldmxpbms6IERldmxpbmsgaW5zdGFuY2UKKwkgKiBAZXh0YWNrOiBleHRhY2sgZm9yIHJlcG9y dGluZyBlcnJvciBtZXNzYWdlcworCSAqCisJICogUmV0dXJuOiB0ZXN0IG1hc2sgc3VwcG9ydGVk IGJ5IGRyaXZlcgorCSAqLworCXUzMiAoKnNlbGZ0ZXN0c19zaG93KShzdHJ1Y3QgZGV2bGluayAq ZGV2bGluaywKKwkJCSAgICAgIHN0cnVjdCBuZXRsaW5rX2V4dF9hY2sgKmV4dGFjayk7CisJLyoq CisJICogc2VsZnRlc3RzX3J1bigpIC0gUnVucyBzZWxmdGVzdHMKKwkgKiBAZGV2bGluazogRGV2 bGluayBpbnN0YW5jZQorCSAqIEB0ZXN0c19tYXNrOiB0ZXN0cyB0byBiZSBydW4gYnkgZHJpdmVy CisJICogQHJlc3VsdHM6IHRlc3QgcmVzdWx0cyBieSBkcml2ZXIKKwkgKiBAZXh0YWNrOiBleHRh Y2sgZm9yIHJlcG9ydGluZyBlcnJvciBtZXNzYWdlcworCSAqLworCXZvaWQgKCpzZWxmdGVzdHNf cnVuKShzdHJ1Y3QgZGV2bGluayAqZGV2bGluaywgdTMyIHRlc3RzX21hc2ssCisJCQkgICAgICB1 OCAqcmVzdWx0cywgc3RydWN0IG5ldGxpbmtfZXh0X2FjayAqZXh0YWNrKTsKIH07Cj0yMAogdm9p ZCAqZGV2bGlua19wcml2KHN0cnVjdCBkZXZsaW5rICpkZXZsaW5rKTsKZGlmZiAtLWdpdCBhL2lu Y2x1ZGUvdWFwaS9saW51eC9kZXZsaW5rLmggYi9pbmNsdWRlL3VhcGkvbGludXgvZGV2bGluay5o CmluZGV4IGIzZDQwYTVkNzJmZi4uMWRiYTI2MjMyOGI5IDEwMDY0NAotLS0gYS9pbmNsdWRlL3Vh cGkvbGludXgvZGV2bGluay5oCisrKyBiL2luY2x1ZGUvdWFwaS9saW51eC9kZXZsaW5rLmgKQEAg LTEzNiw2ICsxMzYsOSBAQCBlbnVtIGRldmxpbmtfY29tbWFuZCB7CiAJREVWTElOS19DTURfTElO RUNBUkRfTkVXLAogCURFVkxJTktfQ01EX0xJTkVDQVJEX0RFTCwKPTIwCisJREVWTElOS19DTURf U0VMRlRFU1RTX1NIT1csCisJREVWTElOS19DTURfU0VMRlRFU1RTX1JVTiwKKwogCS8qIGFkZCBu ZXcgY29tbWFuZHMgYWJvdmUgaGVyZSAqLwogCV9fREVWTElOS19DTURfTUFYLAogCURFVkxJTktf Q01EX01BWCA9M0QgX19ERVZMSU5LX0NNRF9NQVggLSAxCkBAIC0yNzYsNiArMjc5LDI1IEBAIGVu dW0gewogI2RlZmluZSBERVZMSU5LX1NVUFBPUlRFRF9GTEFTSF9PVkVSV1JJVEVfU0VDVElPTlMg XAogCShfQklUVUwoX19ERVZMSU5LX0ZMQVNIX09WRVJXUklURV9NQVhfQklUKSAtIDEpCj0yMAor LyogQ29tbW9ubHkgdXNlZCB0ZXN0IGNhc2VzICovCitlbnVtIHsKKwlERVZMSU5LX1NFTEZURVNU X0ZMQVNIX0JJVCwKKworCV9fREVWTElOS19TRUxGVEVTVF9NQVhfQklULAorCURFVkxJTktfU0VM RlRFU1RfTUFYX0JJVCA9M0QgX19ERVZMSU5LX1NFTEZURVNUX01BWF9CSVQgLSAxCit9OworCisj ZGVmaW5lIERFVkxJTktfU0VMRlRFU1RfRkxBU0ggX0JJVFVMKERFVkxJTktfU0VMRlRFU1RfRkxB U0hfQklUKQorCisjZGVmaW5lIERFVkxJTktfU0VMRlRFU1RTX01BU0sgXAorCShfQklUVUwoX19E RVZMSU5LX1NFTEZURVNUX01BWF9CSVQpIC0gMSkKKworZW51bSB7CisJREVWTElOS19TRUxGVEVT VF9TS0lQLAorCURFVkxJTktfU0VMRlRFU1RfUEFTUywKKwlERVZMSU5LX1NFTEZURVNUX0ZBSUwK K307CisKIC8qKgogICogZW51bSBkZXZsaW5rX3RyYXBfYWN0aW9uIC0gUGFja2V0IHRyYXAgYWN0 aW9uLgogICogQERFVkxJTktfVFJBUF9BQ1RJT05fRFJPUDogUGFja2V0IGlzIGRyb3BwZWQgYnkg dGhlIGRldmljZSBhbmQgYSBjb3B5IGk9CnMgbm90CkBAIC01NzYsNiArNTk4LDEwIEBAIGVudW0g ZGV2bGlua19hdHRyIHsKIAlERVZMSU5LX0FUVFJfTElORUNBUkRfVFlQRSwJCS8qIHN0cmluZyAq LwogCURFVkxJTktfQVRUUl9MSU5FQ0FSRF9TVVBQT1JURURfVFlQRVMsCS8qIG5lc3RlZCAqLwo9 MjAKKwlERVZMSU5LX0FUVFJfU0VMRlRFU1RTX01BU0ssCQkvKiB1MzIgKi8KKwlERVZMSU5LX0FU VFJfVEVTVF9SRVNVTFQsCQkvKiBuZXN0ZWQgKi8KKwlERVZMSU5LX0FUVFJfVEVTVF9OQU1FLAkJ CS8qIHN0cmluZyAqLworCURFVkxJTktfQVRUUl9URVNUX1JFU1VMVF9WQUwsCQkvKiB1OCAqLwog CS8qIGFkZCBuZXcgYXR0cmlidXRlcyBhYm92ZSBoZXJlLCB1cGRhdGUgdGhlIHBvbGljeSBpbiBk ZXZsaW5rLmMgKi8KPTIwCiAJX19ERVZMSU5LX0FUVFJfTUFYLApkaWZmIC0tZ2l0IGEvbmV0L2Nv cmUvZGV2bGluay5jIGIvbmV0L2NvcmUvZGV2bGluay5jCmluZGV4IGRiNjFmM2EzNDFjYi4uMGI3 MzQxYWI2Mzc5IDEwMDY0NAotLS0gYS9uZXQvY29yZS9kZXZsaW5rLmMKKysrIGIvbmV0L2NvcmUv ZGV2bGluay5jCkBAIC00Nzk0LDYgKzQ3OTQsMTM2IEBAIHN0YXRpYyBpbnQgZGV2bGlua19ubF9j bWRfZmxhc2hfdXBkYXRlKHN0cnVjdCBza19idT0KZmYgKnNrYiwKIAlyZXR1cm4gcmV0OwogfQo9 MjAKK3N0YXRpYyBpbnQgZGV2bGlua19zZWxmdGVzdF9uYW1lX3B1dChzdHJ1Y3Qgc2tfYnVmZiAq c2tiLCBpbnQgdGVzdCkKK3sKKwljb25zdCBjaGFyICpuYW1lID0zRCBkZXZsaW5rX3NlbGZ0ZXN0 X25hbWUodGVzdCk7CisJaWYgKG5sYV9wdXRfc3RyaW5nKHNrYiwgREVWTElOS19BVFRSX1RFU1Rf TkFNRSwgbmFtZSkpCisJCXJldHVybiAtRU1TR1NJWkU7CisKKwlyZXR1cm4gMDsKK30KKworc3Rh dGljIGludCBkZXZsaW5rX25sX2NtZF9zZWxmdGVzdHNfc2hvdyhzdHJ1Y3Qgc2tfYnVmZiAqc2ti LAorCQkJCQkgc3RydWN0IGdlbmxfaW5mbyAqaW5mbykKK3sKKwlzdHJ1Y3QgZGV2bGluayAqZGV2 bGluayA9M0QgaW5mby0+dXNlcl9wdHJbMF07CisJc3RydWN0IHNrX2J1ZmYgKm1zZzsKKwl1bnNp Z25lZCBsb25nIHRlc3RzOworCWludCBlcnIgPTNEIDA7CisJdm9pZCAqaGRyOworCWludCB0ZXN0 OworCisJaWYgKCFkZXZsaW5rLT5vcHMtPnNlbGZ0ZXN0c19zaG93KQorCQlyZXR1cm4gLUVPUE5P VFNVUFA7CisKKwltc2cgPTNEIG5sbXNnX25ldyhOTE1TR19ERUZBVUxUX1NJWkUsIEdGUF9LRVJO RUwpOworCWlmICghbXNnKQorCQlyZXR1cm4gLUVOT01FTTsKKworCWhkciA9M0QgZ2VubG1zZ19w dXQobXNnLCBpbmZvLT5zbmRfcG9ydGlkLCBpbmZvLT5zbmRfc2VxLAorCQkJICAmZGV2bGlua19u bF9mYW1pbHksIDAsIERFVkxJTktfQ01EX1NFTEZURVNUU19TSE9XKTsKKwlpZiAoIWhkcikKKwkJ Z290byBmcmVlX21zZzsKKworCWlmIChkZXZsaW5rX25sX3B1dF9oYW5kbGUobXNnLCBkZXZsaW5r KSkKKwkJZ290byBnZW5sbXNnX2NhbmNlbDsKKworCXRlc3RzID0zRCBkZXZsaW5rLT5vcHMtPnNl bGZ0ZXN0c19zaG93KGRldmxpbmssIGluZm8tPmV4dGFjayk7CisKKwlmb3JfZWFjaF9zZXRfYml0 KHRlc3QsICZ0ZXN0cywgX19ERVZMSU5LX1NFTEZURVNUX01BWF9CSVQpIHsKKwkJZXJyID0zRCBk ZXZsaW5rX3NlbGZ0ZXN0X25hbWVfcHV0KG1zZywgdGVzdCk7CisJCWlmIChlcnIpCisJCQlnb3Rv IGdlbmxtc2dfY2FuY2VsOworCX0KKworCWdlbmxtc2dfZW5kKG1zZywgaGRyKTsKKworCXJldHVy biBnZW5sbXNnX3JlcGx5KG1zZywgaW5mbyk7CisKK2dlbmxtc2dfY2FuY2VsOgorCWdlbmxtc2df Y2FuY2VsKG1zZywgaGRyKTsKK2ZyZWVfbXNnOgorCW5sbXNnX2ZyZWUobXNnKTsKKwlyZXR1cm4g ZXJyOworfQorCitzdGF0aWMgaW50IGRldmxpbmtfc2VsZnRlc3RfcmVzdWx0X3B1dChzdHJ1Y3Qg c2tfYnVmZiAqc2tiLCBpbnQgdGVzdCwKKwkJCQkgICAgICAgdTggcmVzdWx0KQoreworCWNvbnN0 IGNoYXIgKm5hbWUgPTNEIGRldmxpbmtfc2VsZnRlc3RfbmFtZSh0ZXN0KTsKKwlzdHJ1Y3Qgbmxh dHRyICpyZXN1bHRfYXR0cjsKKworCXJlc3VsdF9hdHRyID0zRCBubGFfbmVzdF9zdGFydF9ub2Zs YWcoc2tiLCBERVZMSU5LX0FUVFJfVEVTVF9SRVNVTFQpOworCWlmICghcmVzdWx0X2F0dHIpCisJ CXJldHVybiAtRU1TR1NJWkU7CisKKwlpZiAobmxhX3B1dF9zdHJpbmcoc2tiLCBERVZMSU5LX0FU VFJfVEVTVF9OQU1FLCBuYW1lKSB8fAorCSAgICBubGFfcHV0X3U4KHNrYiwgREVWTElOS19BVFRS X1RFU1RfUkVTVUxUX1ZBTCwgcmVzdWx0KSkKKwkJZ290byBubGFfcHV0X2ZhaWx1cmU7CisKKwlu bGFfbmVzdF9lbmQoc2tiLCByZXN1bHRfYXR0cik7CisKKwlyZXR1cm4gMDsKKworbmxhX3B1dF9m YWlsdXJlOgorCW5sYV9uZXN0X2NhbmNlbChza2IsIHJlc3VsdF9hdHRyKTsKKwlyZXR1cm4gLUVN U0dTSVpFOworfQorCitzdGF0aWMgaW50IGRldmxpbmtfbmxfY21kX3NlbGZ0ZXN0c19ydW4oc3Ry dWN0IHNrX2J1ZmYgKnNrYiwKKwkJCQkJc3RydWN0IGdlbmxfaW5mbyAqaW5mbykKK3sKKwl1OCB0 ZXN0X3Jlc3VsdHNbREVWTElOS19TRUxGVEVTVF9NQVhfQklUICsgMV0gPTNEIHt9OworCXN0cnVj dCBkZXZsaW5rICpkZXZsaW5rID0zRCBpbmZvLT51c2VyX3B0clswXTsKKwl1bnNpZ25lZCBsb25n IHRlc3RzOworCXN0cnVjdCBza19idWZmICptc2c7CisJdTMyIHRlc3RzX21hc2s7CisJdm9pZCAq aGRyOworCWludCBlcnIgPTNEIDA7CisJaW50IHRlc3Q7CisKKwlpZiAoIWRldmxpbmstPm9wcy0+ c2VsZnRlc3RzX3J1bikKKwkJcmV0dXJuIC1FT1BOT1RTVVBQOworCisJaWYgKCFpbmZvLT5hdHRy c1tERVZMSU5LX0FUVFJfU0VMRlRFU1RTX01BU0tdKQorCQlyZXR1cm4gLUVJTlZBTDsKKworCW1z ZyA9M0Qgbmxtc2dfbmV3KE5MTVNHX0RFRkFVTFRfU0laRSwgR0ZQX0tFUk5FTCk7CisJaWYgKCFt c2cpCisJCXJldHVybiAtRU5PTUVNOworCisJaGRyID0zRCBnZW5sbXNnX3B1dChtc2csIGluZm8t PnNuZF9wb3J0aWQsIGluZm8tPnNuZF9zZXEsCisJCQkgICZkZXZsaW5rX25sX2ZhbWlseSwgMCwg REVWTElOS19DTURfU0VMRlRFU1RTX1JVTik7CisJaWYgKCFoZHIpCisJCWdvdG8gZnJlZV9tc2c7 CisKKwlpZiAoZGV2bGlua19ubF9wdXRfaGFuZGxlKG1zZywgZGV2bGluaykpCisJCWdvdG8gZ2Vu bG1zZ19jYW5jZWw7CisKKwl0ZXN0c19tYXNrID0zRCBubGFfZ2V0X3UzMihpbmZvLT5hdHRyc1tE RVZMSU5LX0FUVFJfU0VMRlRFU1RTX01BU0tdKTsKKworCWRldmxpbmstPm9wcy0+c2VsZnRlc3Rz X3J1bihkZXZsaW5rLCB0ZXN0c19tYXNrLCB0ZXN0X3Jlc3VsdHMsCisJCQkJICAgIGluZm8tPmV4 dGFjayk7CisJdGVzdHMgPTNEIHRlc3RzX21hc2s7CisKKwlmb3JfZWFjaF9zZXRfYml0KHRlc3Qs ICZ0ZXN0cywgX19ERVZMSU5LX1NFTEZURVNUX01BWF9CSVQpIHsKKwkJZXJyID0zRCBkZXZsaW5r X3NlbGZ0ZXN0X3Jlc3VsdF9wdXQobXNnLCB0ZXN0LAorCQkJCQkJICB0ZXN0X3Jlc3VsdHNbdGVz dF0pOworCQlpZiAoZXJyKQorCQkJZ290byBnZW5sbXNnX2NhbmNlbDsKKwl9CisKKwlnZW5sbXNn X2VuZChtc2csIGhkcik7CisKKwlyZXR1cm4gZ2VubG1zZ19yZXBseShtc2csIGluZm8pOworCitn ZW5sbXNnX2NhbmNlbDoKKwlnZW5sbXNnX2NhbmNlbChtc2csIGhkcik7CitmcmVlX21zZzoKKwlu bG1zZ19mcmVlKG1zZyk7CisJcmV0dXJuIGVycjsKK30KKwogc3RhdGljIGNvbnN0IHN0cnVjdCBk ZXZsaW5rX3BhcmFtIGRldmxpbmtfcGFyYW1fZ2VuZXJpY1tdID0zRCB7CiAJewogCQkuaWQgPTNE IERFVkxJTktfUEFSQU1fR0VORVJJQ19JRF9JTlRfRVJSX1JFU0VULApAQCAtOTAwMCw2ICs5MTMw LDggQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBubGFfcG9saWN5IGRldmxpbmtfbmxfcG9saWN5W0RF Vkw9CklOS19BVFRSX01BWCArIDFdID0zRCB7CiAJW0RFVkxJTktfQVRUUl9SQVRFX1BBUkVOVF9O T0RFX05BTUVdID0zRCB7IC50eXBlID0zRCBOTEFfTlVMX1NUUklORyB9LAogCVtERVZMSU5LX0FU VFJfTElORUNBUkRfSU5ERVhdID0zRCB7IC50eXBlID0zRCBOTEFfVTMyIH0sCiAJW0RFVkxJTktf QVRUUl9MSU5FQ0FSRF9UWVBFXSA9M0QgeyAudHlwZSA9M0QgTkxBX05VTF9TVFJJTkcgfSwKKwlb REVWTElOS19BVFRSX1NFTEZURVNUU19NQVNLXSA9M0QgTkxBX1BPTElDWV9NQVNLKE5MQV9VMzIs CisJCQkJCQkJREVWTElOS19TRUxGVEVTVFNfTUFTSyksCiB9Owo9MjAKIHN0YXRpYyBjb25zdCBz dHJ1Y3QgZ2VubF9zbWFsbF9vcHMgZGV2bGlua19ubF9vcHNbXSA9M0QgewpAQCAtOTM2MSw2ICs5 NDkzLDE4IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZ2VubF9zbWFsbF9vcHMgZGV2bGlua19ubF9v cHNbXSA9Cj0zRCB7CiAJCS5kb2l0ID0zRCBkZXZsaW5rX25sX2NtZF90cmFwX3BvbGljZXJfc2V0 X2RvaXQsCiAJCS5mbGFncyA9M0QgR0VOTF9BRE1JTl9QRVJNLAogCX0sCisJeworCQkuY21kID0z RCBERVZMSU5LX0NNRF9TRUxGVEVTVFNfU0hPVywKKwkJLnZhbGlkYXRlID0zRCBHRU5MX0RPTlRf VkFMSURBVEVfU1RSSUNUIHwgR0VOTF9ET05UX1ZBTElEQVRFX0RVTVAsCisJCS5kb2l0ID0zRCBk ZXZsaW5rX25sX2NtZF9zZWxmdGVzdHNfc2hvdywKKwkJLmZsYWdzID0zRCBHRU5MX0FETUlOX1BF Uk0sCisJfSwKKwl7CisJCS5jbWQgPTNEIERFVkxJTktfQ01EX1NFTEZURVNUU19SVU4sCisJCS52 YWxpZGF0ZSA9M0QgR0VOTF9ET05UX1ZBTElEQVRFX1NUUklDVCB8IEdFTkxfRE9OVF9WQUxJREFU RV9EVU1QLAorCQkuZG9pdCA9M0QgZGV2bGlua19ubF9jbWRfc2VsZnRlc3RzX3J1biwKKwkJLmZs YWdzID0zRCBHRU5MX0FETUlOX1BFUk0sCisJfSwKIH07Cj0yMAogc3RhdGljIHN0cnVjdCBnZW5s X2ZhbWlseSBkZXZsaW5rX25sX2ZhbWlseSBfX3JvX2FmdGVyX2luaXQgPTNEIHsKLS09MjAKMi4z MS4xCg== --00000000000045a54e05e33b47ab 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 YIZIAWUDBAIBBQCggdQwLwYJKoZIhvcNAQkEMSIEIJV01h7Gy2UuXF9PkKzqyEGAOHy4qs5VXWaD wqyHRAKkMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTIyMDcwNzE4 MzAyMVowaQYJKoZIhvcNAQkPMVwwWjALBglghkgBZQMEASowCwYJYIZIAWUDBAEWMAsGCWCGSAFl AwQBAjAKBggqhkiG9w0DBzALBgkqhkiG9w0BAQowCwYJKoZIhvcNAQEHMAsGCWCGSAFlAwQCATAN BgkqhkiG9w0BAQEFAASCAQAT9oreYTotqPdWrS3swhb1fvUIU5IiUIyXgTP4/sdQy8ACTkdTdTyh nh983ZKqbbIQRrLw5OSbwDTi0MnQ2iyZxA0H6eZAITflbfp8H7ka2z3WScQMOlJDs5iOsv94SiJT NWe3V2y4oYgcoJhcZOlAZR8NR+b0NursKwUP9+Qdoj2NdbXFetHgWWBGXdurqrr8K3Loied29Lut bCS+VSdg6EWnhHH5DqJak5TPqSHG/z4Nb1qIu/CW06Et3BNI+J0SC0Bvk/wannac/P0hi9bYtiX6 p1yE0K6cgvOdjSjCCrj7oGC8zlzclZpTw+CKJONQ3tYjez/HnY+u1RTn+kdI --00000000000045a54e05e33b47ab-- From nobody Sun Apr 19 02:12:12 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 5BFF3C433EF for ; Thu, 7 Jul 2022 18:33:09 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236556AbiGGSdI (ORCPT ); Thu, 7 Jul 2022 14:33:08 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54636 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236786AbiGGSci (ORCPT ); Thu, 7 Jul 2022 14:32:38 -0400 Received: from mail-pg1-x532.google.com (mail-pg1-x532.google.com [IPv6:2607:f8b0:4864:20::532]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E03CB73914 for ; Thu, 7 Jul 2022 11:30:29 -0700 (PDT) Received: by mail-pg1-x532.google.com with SMTP id z14so20088146pgh.0 for ; Thu, 07 Jul 2022 11:30:29 -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=bCcs6fy665vhXkfGWajhVpgSnC3JGaSjdnseyG4f8T8=; b=aZTkqrJ0Sj4ObLcntyuXIDTQOn++fs6msJTWnXINM/XD2XesUw75n8F2YJjy+yVYMU r2fysBuyNbsaXGi0JNbnjT46QQAuZZNX9rtGE44KGhO9JEJWWQ8zqkRZByhKM90gKdrF kxFpeFwPrQ52tLBiizumSKaBNqwAL3bwMfAYc= 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=bCcs6fy665vhXkfGWajhVpgSnC3JGaSjdnseyG4f8T8=; b=dlk1DUZtykNWRT7iPL1f275t5drd46VD2fAjVjV1s7pAbyd0lIzohW8XXbqtuCdc6w iR7GKSKXrMjHVrqFmYtliFHgrpR8Kei8UqB3A7Usem7srg8IRB2vFiPBBGbr0ko/VFfN FctUVWr6WZ/m2QveOLbJUFXnYVPY1azFUzVzEAm6pbKHgGDZMj3jTS7Fm0BlB7h3WqWg 8kch7tFHxTJlFlNXwYFsaUNGvxgJoCydfwaiNx21Rjm2g4ppEWNkmfpuSnqKym70W8BJ 7Y0C71TJ06LPtb+MJt5b06Zu1mhBsV5l+lvqFop2EPtM8YvhKBC4Yx9pqsZl8qWFBp83 gW1g== X-Gm-Message-State: AJIora/U8q7vTcYcpGG7hMP6w7mdhFczsCj8JQkqY/RsP3kNmBt0tjKt w8Fng/X+cwwL+kyUZIecE2hRWw== X-Google-Smtp-Source: AGRyM1tr2rckdiQhpNFCnKhsqFufKLKyd9E6n0dOtWltUlZ2Mde1QjlqFc6GuJOwghapQVXYvgcCnA== X-Received: by 2002:a05:6a00:24c1:b0:50d:33cf:811f with SMTP id d1-20020a056a0024c100b0050d33cf811fmr54220336pfv.78.1657218626129; Thu, 07 Jul 2022 11:30:26 -0700 (PDT) Received: from rahul_yocto_ubuntu18.ibn.broadcom.net ([192.19.252.250]) by smtp.gmail.com with ESMTPSA id pj9-20020a17090b4f4900b001ef92e0e7c1sm7132234pjb.10.2022.07.07.11.30.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 07 Jul 2022 11:30:25 -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 v2 2/3] bnxt_en: refactor NVM APIs Date: Thu, 7 Jul 2022 23:59:49 +0530 Message-Id: <20220707182950.29348-3-vikas.gupta@broadcom.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20220707182950.29348-1-vikas.gupta@broadcom.com> References: <20220628164241.44360-1-vikas.gupta@broadcom.com> <20220707182950.29348-1-vikas.gupta@broadcom.com> Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-256; boundary="0000000000008f946c05e33b477e" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: quoted-printable --0000000000008f946c05e33b477e 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 --0000000000008f946c05e33b477e 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 aCubfblkMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTIyMDcwNzE4 MzAyNlowaQYJKoZIhvcNAQkPMVwwWjALBglghkgBZQMEASowCwYJYIZIAWUDBAEWMAsGCWCGSAFl AwQBAjAKBggqhkiG9w0DBzALBgkqhkiG9w0BAQowCwYJKoZIhvcNAQEHMAsGCWCGSAFlAwQCATAN BgkqhkiG9w0BAQEFAASCAQCH2h5+SgDR5Qe7iGSDzuxvzhQlDNmRmrOgS8Dli4u2I1yv4InflWKR pjKHfqCWPWKjJFM6YTrCwHS1BESDF9LlG3pD/dsPK5ILvuAXLYIrXz/ry4L9nU9gdIHeZAkr7sTS NhGH+lJBdU+7sEQko3vaRBrOY3g21N6nZ0IuOTkED2utq9LqEwJQCo3CF8djKwBHpZsRtRD7Lg+z ibgG7BfIjBD7n9gpM/d8E1RbMP4Cb6TPbHhVjJOpbVv1dsJ9wRLb+1GFdrGqd6L0uC0ezqzyCZHn 3xDkoSV3kWP/Gs/pXZeVK8jLsonG9z9Vi3wukMawNMXJFD0+56umn4I8fuej --0000000000008f946c05e33b477e-- From nobody Sun Apr 19 02:12:12 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 7FD8BCCA47F for ; Thu, 7 Jul 2022 18:33:16 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236649AbiGGSdO (ORCPT ); Thu, 7 Jul 2022 14:33:14 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54940 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236813AbiGGScl (ORCPT ); Thu, 7 Jul 2022 14:32:41 -0400 Received: from mail-pf1-x435.google.com (mail-pf1-x435.google.com [IPv6:2607:f8b0:4864:20::435]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7EC945C954 for ; Thu, 7 Jul 2022 11:30:32 -0700 (PDT) Received: by mail-pf1-x435.google.com with SMTP id n12so21135203pfq.0 for ; Thu, 07 Jul 2022 11:30:32 -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=wMRHJF0T/fCycPHtXqV9dOYsYiXupPRSxklrtqmSdGQ=; b=T+XB45XbwjrtEr+l24OzuY1QRNf3YoOt+iLwQJX/R01DqlLusd+uhM7ckiWIhDrfp1 8Q8ifzZJgZ+v08LGFdAnGWiPZ3nztmY8rAd91EuPnrF2XxYvDnr3GBdOMv5e80YvB+/f Mt0MYvPX4UjD7+tv06aaQ5efsiGTDbgq4HJbk= 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=wMRHJF0T/fCycPHtXqV9dOYsYiXupPRSxklrtqmSdGQ=; b=EeuDgus9Uzp/Sg7wWqEDE8+MNPxCLiw/OFewDk176mxSGToj2G0f9TBFG+AGBeVFS9 w1TWzpQ4IzLaaqTLH6Lovtz5iqx3jaKfsORLpCxkOxO077oqhLfRQZHozdMOXdl0XvPa hgyHnyHj3TcCHUeEJ368yVgmTpGV/m0mCFlg5+HqHa5/GtjtqHSKOUxeQOAmfjawfa62 onvEhsk0Fjda44Tzsdz+B7m/Xo4BOkomXoILSHvJ2crTWPnbwsMfEU67pGfyQKbz+6Wa LaSAYkOcYtsZlfttHxHL4rNA1zjONdJ/NXU282CXDfcsmaZV7Bm+kEnUWQsr8cRUMqhk 5RPA== X-Gm-Message-State: AJIora91A2XbEqxFPFLZu1QLja4zcwbXKwK8b5E15EMuADVvjE+eaRR7 /sUF4kOzsOzaQo5arWU+vpn3HA== X-Google-Smtp-Source: AGRyM1vkImAooEgYbw8Eu/32MDbRgX997w9QO1uZusEoQdHWIbEae5g2OIk1B7ZF3UUJf88LfmDvmA== X-Received: by 2002:a17:903:40c9:b0:16a:2d26:5553 with SMTP id t9-20020a17090340c900b0016a2d265553mr53925758pld.31.1657218630885; Thu, 07 Jul 2022 11:30:30 -0700 (PDT) Received: from rahul_yocto_ubuntu18.ibn.broadcom.net ([192.19.252.250]) by smtp.gmail.com with ESMTPSA id pj9-20020a17090b4f4900b001ef92e0e7c1sm7132234pjb.10.2022.07.07.11.30.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 07 Jul 2022 11:30:30 -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 v2 3/3] bnxt_en: implement callbacks for devlink selftests Date: Thu, 7 Jul 2022 23:59:50 +0530 Message-Id: <20220707182950.29348-4-vikas.gupta@broadcom.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20220707182950.29348-1-vikas.gupta@broadcom.com> References: <20220628164241.44360-1-vikas.gupta@broadcom.com> <20220707182950.29348-1-vikas.gupta@broadcom.com> Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg=sha-256; boundary="000000000000d7a15e05e33b473a" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: quoted-printable --000000000000d7a15e05e33b473a MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 QWRkIGNhbGxiYWNrcwo9M0Q9M0Q9M0Q9M0Q9M0Q9M0Q9M0Q9M0Q9M0Q9M0Q9M0Q9M0Q9M0QKLnNl bGZ0ZXN0c19zaG93OiBwb3B1bGF0ZXMgZmxhc2ggdGVzdCBuYW1lLgouc2VsZnRlc3RzX3J1bjog aW1wbGVtZW50cyBhIGZsYXNoIHNlbGZ0ZXN0LgoKU2lnbmVkLW9mZi1ieTogVmlrYXMgR3VwdGEg PHZpa2FzLmd1cHRhQGJyb2FkY29tLmNvbT4KUmV2aWV3ZWQtYnk6IE1pY2hhZWwgQ2hhbiA8bWlj aGFlbC5jaGFuQGJyb2FkY29tLmNvbT4KUmV2aWV3ZWQtYnk6IEFuZHkgR29zcG9kYXJlayA8YW5k cmV3Lmdvc3BvZGFyZWtAYnJvYWRjb20uY29tPgotLS0KIC4uLi9uZXQvZXRoZXJuZXQvYnJvYWRj b20vYm54dC9ibnh0X2RldmxpbmsuYyB8IDYxICsrKysrKysrKysrKysrKysrKysKIDEgZmlsZSBj aGFuZ2VkLCA2MSBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvZXRoZXJu ZXQvYnJvYWRjb20vYm54dC9ibnh0X2RldmxpbmsuYyBiL2RyaXZlcnMvbmU9CnQvZXRoZXJuZXQv YnJvYWRjb20vYm54dC9ibnh0X2RldmxpbmsuYwppbmRleCAzNTI4Y2U5ODQ5ZTYuLjc1MDAzNGI0 NTA0OSAxMDA2NDQKLS0tIGEvZHJpdmVycy9uZXQvZXRoZXJuZXQvYnJvYWRjb20vYm54dC9ibnh0 X2RldmxpbmsuYworKysgYi9kcml2ZXJzL25ldC9ldGhlcm5ldC9icm9hZGNvbS9ibnh0L2JueHRf ZGV2bGluay5jCkBAIC0yMCw2ICsyMCw4IEBACiAjaW5jbHVkZSAiYm54dF91bHAuaCIKICNpbmNs dWRlICJibnh0X3B0cC5oIgogI2luY2x1ZGUgImJueHRfY29yZWR1bXAuaCIKKyNpbmNsdWRlICJi bnh0X252bV9kZWZzLmgiCisjaW5jbHVkZSAiYm54dF9ldGh0b29sLmgiCj0yMAogc3RhdGljIHZv aWQgX19ibnh0X2Z3X3JlY292ZXIoc3RydWN0IGJueHQgKmJwKQogewpAQCAtNjEwLDYgKzYxMiw2 MyBAQCBzdGF0aWMgaW50IGJueHRfZGxfcmVsb2FkX3VwKHN0cnVjdCBkZXZsaW5rICpkbCwgZW51 bSA9CmRldmxpbmtfcmVsb2FkX2FjdGlvbiBhY3RpCiAJcmV0dXJuIHJjOwogfQo9MjAKK3N0YXRp YyBib29sIGJueHRfbnZtX3Rlc3Qoc3RydWN0IGJueHQgKmJwLCBzdHJ1Y3QgbmV0bGlua19leHRf YWNrICpleHRhY2spCit7CisJdTMyIGRhdGFsZW47CisJdTE2IGluZGV4OworCXU4ICpidWY7CisK KwlpZiAoYm54dF9maW5kX252cmFtX2l0ZW0oYnAtPmRldiwgQk5YX0RJUl9UWVBFX1ZQRCwKKwkJ CQkgQk5YX0RJUl9PUkRJTkFMX0ZJUlNULCBCTlhfRElSX0VYVF9OT05FLAorCQkJCSAmaW5kZXgs IE5VTEwsICZkYXRhbGVuKSB8fCAhZGF0YWxlbikgeworCQlOTF9TRVRfRVJSX01TR19NT0QoZXh0 YWNrLCAibnZtIHRlc3QgdnBkIGVudHJ5IGVycm9yIik7CisJCXJldHVybiBmYWxzZTsKKwl9CisK KwlidWYgPTNEIGt6YWxsb2MoZGF0YWxlbiwgR0ZQX0tFUk5FTCk7CisJaWYgKCFidWYpIHsKKwkJ TkxfU0VUX0VSUl9NU0dfTU9EKGV4dGFjaywgImluc3VmZmljaWVudCBtZW1vcnkgZm9yIG52bSB0 ZXN0Iik7CisJCXJldHVybiBmYWxzZTsKKwl9CisKKwlpZiAoYm54dF9nZXRfbnZyYW1faXRlbShi cC0+ZGV2LCBpbmRleCwgMCwgZGF0YWxlbiwgYnVmKSkgeworCQlOTF9TRVRfRVJSX01TR19NT0Qo ZXh0YWNrLCAibnZtIHRlc3QgdnBkIHJlYWQgZXJyb3IiKTsKKwkJZ290byBlcnI7CisJfQorCisJ aWYgKGJueHRfZmxhc2hfbnZyYW0oYnAtPmRldiwgQk5YX0RJUl9UWVBFX1ZQRCwgQk5YX0RJUl9P UkRJTkFMX0ZJUlNULAorCQkJICAgICBCTlhfRElSX0VYVF9OT05FLCAwLCAwLCBidWYsIGRhdGFs ZW4pKSB7CisJCU5MX1NFVF9FUlJfTVNHX01PRChleHRhY2ssICJudm0gdGVzdCB2cGQgd3JpdGUg ZXJyb3IiKTsKKwkJZ290byBlcnI7CisJfQorCisJcmV0dXJuIHRydWU7CisKK2VycjoKKwlrZnJl ZShidWYpOworCXJldHVybiBmYWxzZTsKK30KKworc3RhdGljIHUzMiBibnh0X2RsX3NlbGZ0ZXN0 c19zaG93KHN0cnVjdCBkZXZsaW5rICpkbCwKKwkJCQkgIHN0cnVjdCBuZXRsaW5rX2V4dF9hY2sg KmV4dGFjaykKK3sKKwlyZXR1cm4gREVWTElOS19TRUxGVEVTVF9GTEFTSDsKK30KKworc3RhdGlj IHZvaWQgYm54dF9kbF9zZWxmdGVzdHNfcnVuKHN0cnVjdCBkZXZsaW5rICpkbCwgdTMyIHRlc3Rf bWFzaywKKwkJCQkgIHU4ICpyZXN1bHRzLCBzdHJ1Y3QgbmV0bGlua19leHRfYWNrICpleHRhY2sp Cit7CisJc3RydWN0IGJueHQgKmJwID0zRCBibnh0X2dldF9icF9mcm9tX2RsKGRsKTsKKwlib29s IHJlczsKKworCWlmICh0ZXN0X21hc2sgJiBERVZMSU5LX1NFTEZURVNUX0ZMQVNIKSB7CisJCXJl cyA9M0QgYm54dF9udm1fdGVzdChicCwgZXh0YWNrKTsKKwkJcmVzdWx0c1tERVZMSU5LX1NFTEZU RVNUX0ZMQVNIX0JJVF0gPTNEIHJlcyA/CisJCQkJCQkJREVWTElOS19TRUxGVEVTVF9QQVNTIDoK KwkJCQkJCQlERVZMSU5LX1NFTEZURVNUX0ZBSUw7CisJfQorfQorCiBzdGF0aWMgY29uc3Qgc3Ry dWN0IGRldmxpbmtfb3BzIGJueHRfZGxfb3BzID0zRCB7CiAjaWZkZWYgQ09ORklHX0JOWFRfU1JJ T1YKIAkuZXN3aXRjaF9tb2RlX3NldCA9M0QgYm54dF9kbF9lc3dpdGNoX21vZGVfc2V0LApAQCAt NjIyLDYgKzY4MSw4IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgZGV2bGlua19vcHMgYm54dF9kbF9v cHMgPTNEIHsKIAkucmVsb2FkX2xpbWl0cwkgID0zRCBCSVQoREVWTElOS19SRUxPQURfTElNSVRf Tk9fUkVTRVQpLAogCS5yZWxvYWRfZG93bgkgID0zRCBibnh0X2RsX3JlbG9hZF9kb3duLAogCS5y ZWxvYWRfdXAJICA9M0QgYm54dF9kbF9yZWxvYWRfdXAsCisJLnNlbGZ0ZXN0c19zaG93CSAgPTNE IGJueHRfZGxfc2VsZnRlc3RzX3Nob3csCisJLnNlbGZ0ZXN0c19ydW4JICA9M0QgYm54dF9kbF9z ZWxmdGVzdHNfcnVuLAogfTsKPTIwCiBzdGF0aWMgY29uc3Qgc3RydWN0IGRldmxpbmtfb3BzIGJu eHRfdmZfZGxfb3BzOwotLT0yMAoyLjMxLjEK --000000000000d7a15e05e33b473a 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 YIZIAWUDBAIBBQCggdQwLwYJKoZIhvcNAQkEMSIEIHyBkzoPN7j5YV8UC6iTUWfjRlZQcYpD8qUW ZhpazALGMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTIyMDcwNzE4 MzAzMVowaQYJKoZIhvcNAQkPMVwwWjALBglghkgBZQMEASowCwYJYIZIAWUDBAEWMAsGCWCGSAFl AwQBAjAKBggqhkiG9w0DBzALBgkqhkiG9w0BAQowCwYJKoZIhvcNAQEHMAsGCWCGSAFlAwQCATAN BgkqhkiG9w0BAQEFAASCAQC5JgJr6KR7l5gepCsZXHNFaVoCAXaZ/7tAekc+teIQsOZLp0vDmv/P ZQyqUIMTIslr8L81FuqREJVd0cAcl2HF7UDOpEDtNluj75fksVY5wdQbkYYtRTvlFgcZUnJ8RXwR KiIqg3zZ6pXkap5shRWZuXDIcp7p6Tcfe55WLLlYTfMIwpwfMMYgA7Tk1mYu9Wu4Wmi6U+Dm4ujm PZHrLsTlJXZ03fEH+nB5ajXf/mCpSLXiiyXGa1thrbAtSriI/x31R4dLsWATg7Qt+/L6SNhlL1oF U/fiw+8FeYjv35plr1SF9ethI10oXxG8teEL7a6ZplxdVHfdXiRkiblggwn1 --000000000000d7a15e05e33b473a--