Message ID | 20231018135423.14111-1-syalavarthi@marvell.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 765344319A; Wed, 18 Oct 2023 15:54:34 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id EBEB7402CD; Wed, 18 Oct 2023 15:54:33 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by mails.dpdk.org (Postfix) with ESMTP id 0F15440261 for <dev@dpdk.org>; Wed, 18 Oct 2023 15:54:32 +0200 (CEST) Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 39I7okBp009779 for <dev@dpdk.org>; Wed, 18 Oct 2023 06:54:31 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-transfer-encoding : content-type; s=pfpt0220; bh=SWVadOuBLFsB3QWKgWS31kAkKJ0Qc1atCpJkSh69IW4=; b=ZIT2bR5obPEeoV+VBHBE2CfJZ8TipvlqeXbINjHrETebZhhZHKzJAfKvNtRZFd63qFgG UTAeucr/cZAVXklFwOruPXOjSuu+KgFTFYzzTLUrkpxWHyVsQk6M+6Uhyi3IkChfvv8B cDY5FQ8Xoj3KlO8cI+ZVaCoAJLc1/3EuLTsWmFgNRZW1meDMSd7tqcpLXVW9uQhICYRd epfb1gVHqVCt6qHsXEJA57Y6DO8xN8Jv7D9w3HDn00QecbiIgYtU+mMDOzIoIOnP5Ph3 S87bdU+GiJn3wlTWTT4HFVEj4wcCUTflq3ilkuY67koUWRis3PIGCBcCf7ymSQ9npxoz MQ== Received: from dc5-exch02.marvell.com ([199.233.59.182]) by mx0a-0016f401.pphosted.com (PPS) with ESMTPS id 3tt148348f-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT) for <dev@dpdk.org>; Wed, 18 Oct 2023 06:54:31 -0700 Received: from DC5-EXCH02.marvell.com (10.69.176.39) by DC5-EXCH02.marvell.com (10.69.176.39) with Microsoft SMTP Server (TLS) id 15.0.1497.48; Wed, 18 Oct 2023 06:54:30 -0700 Received: from maili.marvell.com (10.69.176.80) by DC5-EXCH02.marvell.com (10.69.176.39) with Microsoft SMTP Server id 15.0.1497.48 via Frontend Transport; Wed, 18 Oct 2023 06:54:30 -0700 Received: from ml-host-33.caveonetworks.com (unknown [10.110.143.233]) by maili.marvell.com (Postfix) with ESMTP id 8AEB33F7048; Wed, 18 Oct 2023 06:54:29 -0700 (PDT) From: Srikanth Yalavarthi <syalavarthi@marvell.com> To: CC: <dev@dpdk.org>, <syalavarthi@marvell.com>, <sshankarnara@marvell.com>, <aprabhu@marvell.com>, <ptakkar@marvell.com> Subject: [PATCH v6 00/34] Implementation of revised ml/cnxk driver Date: Wed, 18 Oct 2023 06:53:45 -0700 Message-ID: <20231018135423.14111-1-syalavarthi@marvell.com> X-Mailer: git-send-email 2.42.0 In-Reply-To: <20230830155927.3566-1-syalavarthi@marvell.com> References: <20230830155927.3566-1-syalavarthi@marvell.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Proofpoint-GUID: vTSHVu9Fcb3Mp1Vhov7_i0luLvLmyCCQ X-Proofpoint-ORIG-GUID: vTSHVu9Fcb3Mp1Vhov7_i0luLvLmyCCQ X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.980,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2023-10-18_12,2023-10-18_01,2023-05-22_02 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org |
Series |
Implementation of revised ml/cnxk driver
|
|
Message
Srikanth Yalavarthi
Oct. 18, 2023, 1:53 p.m. UTC
This patch series is an implementation of revised ml/cnxk driver to support models compiled with TVM compiler framework. TVM models use a hybrid mode for execution, with regions of the model executing on the ML accelerator and the rest executing on CPU cores. This series of commits reorganizes the ml/cnxk driver and adds support to execute multiple regions with-in a TVM model. v6: - Added depends info for series. This series depends on patch-132887 - Fix merge conflicts with dpdk-23.11-rc1 - Fix issues with ml/cnxk driver release notes - Added build dependency information for dlpack headers v5: - Fix build failures for individual patches in the series - Finished build testing with devtools/test-meson-builds.sh script v4: - Squashed release notes - Updated external build dependency info in documentation v3: - Reduced use of RTE_MLDEV_CNXK_ENABLE_MVTVM macro - Added stubs file with dummy functions to use when TVM is disabled - Dropped patch with internal function to read firmware - Updated ML CNXK PMD documentation - Added external library dependency info in documentation - Added release notes for 23.11 v2: - Fix xstats reporting - Fix issues reported by klocwork static analysis tool - Update external header inclusions v1: - Initial changes Anup Prabhu (2): ml/cnxk: enable OCM check for multilayer TVM model ml/cnxk: enable fast-path ops for TVM models Prince Takkar (2): ml/cnxk: update internal TVM model info structure ml/cnxk: support quantize and dequantize callback Srikanth Yalavarthi (30): ml/cnxk: drop support for register polling ml/cnxk: add generic cnxk device structure ml/cnxk: add generic model and layer structures ml/cnxk: add generic cnxk request structure ml/cnxk: add generic cnxk xstats structures ml/cnxk: rename cnxk ops function pointers struct ml/cnxk: update device handling functions ml/cnxk: update queue-pair handling functions ml/cnxk: update model load and unload functions ml/cnxk: update model start and stop functions ml/cnxk: update model utility functions ml/cnxk: update data quantization functions ml/cnxk: update device debug functions ml/cnxk: update device stats functions ml/cnxk: update device and model xstats functions ml/cnxk: update fast path functions ml/cnxk: move error handling to cnxk layer ml/cnxk: support config and close of tvmdp library ml/cnxk: add structures to support TVM model type ml/cnxk: add support for identify model type ml/cnxk: add support to parse TVM model objects ml/cnxk: fetch layer info and load TVM model ml/cnxk: update internal info for TVM model ml/cnxk: enable model unload in tvmdp library ml/cnxk: support start and stop for TVM models ml/cnxk: support device dump for TVM models ml/cnxk: enable reporting model runtime as xstats ml/cnxk: implement I/O alloc and free callbacks ml/cnxk: add generic ML malloc and free callback ml/cnxk: enable creation of mvtvm virtual device doc/guides/mldevs/cnxk.rst | 131 +- doc/guides/rel_notes/release_23_11.rst | 3 + drivers/ml/cnxk/cn10k_ml_dev.c | 416 ++-- drivers/ml/cnxk/cn10k_ml_dev.h | 457 +--- drivers/ml/cnxk/cn10k_ml_model.c | 401 ++-- drivers/ml/cnxk/cn10k_ml_model.h | 151 +- drivers/ml/cnxk/cn10k_ml_ocm.c | 111 +- drivers/ml/cnxk/cn10k_ml_ocm.h | 15 +- drivers/ml/cnxk/cn10k_ml_ops.c | 2828 ++++++++---------------- drivers/ml/cnxk/cn10k_ml_ops.h | 358 ++- drivers/ml/cnxk/cnxk_ml_dev.c | 22 + drivers/ml/cnxk/cnxk_ml_dev.h | 120 + drivers/ml/cnxk/cnxk_ml_io.c | 95 + drivers/ml/cnxk/cnxk_ml_io.h | 88 + drivers/ml/cnxk/cnxk_ml_model.c | 94 + drivers/ml/cnxk/cnxk_ml_model.h | 192 ++ drivers/ml/cnxk/cnxk_ml_ops.c | 1690 ++++++++++++++ drivers/ml/cnxk/cnxk_ml_ops.h | 87 + drivers/ml/cnxk/cnxk_ml_utils.c | 15 + drivers/ml/cnxk/cnxk_ml_utils.h | 17 + drivers/ml/cnxk/cnxk_ml_xstats.h | 152 ++ drivers/ml/cnxk/meson.build | 73 + drivers/ml/cnxk/mvtvm_ml_dev.c | 196 ++ drivers/ml/cnxk/mvtvm_ml_dev.h | 40 + drivers/ml/cnxk/mvtvm_ml_model.c | 392 ++++ drivers/ml/cnxk/mvtvm_ml_model.h | 90 + drivers/ml/cnxk/mvtvm_ml_ops.c | 652 ++++++ drivers/ml/cnxk/mvtvm_ml_ops.h | 82 + drivers/ml/cnxk/mvtvm_ml_stubs.c | 141 ++ drivers/ml/cnxk/mvtvm_ml_stubs.h | 36 + 30 files changed, 6186 insertions(+), 2959 deletions(-) create mode 100644 drivers/ml/cnxk/cnxk_ml_dev.c create mode 100644 drivers/ml/cnxk/cnxk_ml_dev.h create mode 100644 drivers/ml/cnxk/cnxk_ml_io.c create mode 100644 drivers/ml/cnxk/cnxk_ml_io.h create mode 100644 drivers/ml/cnxk/cnxk_ml_model.c create mode 100644 drivers/ml/cnxk/cnxk_ml_model.h create mode 100644 drivers/ml/cnxk/cnxk_ml_ops.c create mode 100644 drivers/ml/cnxk/cnxk_ml_ops.h create mode 100644 drivers/ml/cnxk/cnxk_ml_utils.c create mode 100644 drivers/ml/cnxk/cnxk_ml_utils.h create mode 100644 drivers/ml/cnxk/cnxk_ml_xstats.h create mode 100644 drivers/ml/cnxk/mvtvm_ml_dev.c create mode 100644 drivers/ml/cnxk/mvtvm_ml_dev.h create mode 100644 drivers/ml/cnxk/mvtvm_ml_model.c create mode 100644 drivers/ml/cnxk/mvtvm_ml_model.h create mode 100644 drivers/ml/cnxk/mvtvm_ml_ops.c create mode 100644 drivers/ml/cnxk/mvtvm_ml_ops.h create mode 100644 drivers/ml/cnxk/mvtvm_ml_stubs.c create mode 100644 drivers/ml/cnxk/mvtvm_ml_stubs.h
Comments
On Wed, Oct 18, 2023 at 7:24 PM Srikanth Yalavarthi <syalavarthi@marvell.com> wrote: > > This patch series is an implementation of revised ml/cnxk driver > to support models compiled with TVM compiler framework. TVM models > use a hybrid mode for execution, with regions of the model executing > on the ML accelerator and the rest executing on CPU cores. > > This series of commits reorganizes the ml/cnxk driver and adds support > to execute multiple regions with-in a TVM model. > Fix this warning ### [PATCH] ml/cnxk: enable creation of mvtvm virtual device Warning in drivers/ml/cnxk/cn10k_ml_dev.c: Using rte_panic/rte_exit Fix as needed which is relevent ### [PATCH] ml/cnxk: add generic cnxk device structure WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over strncpy - see: https://github.com/KSPP/linux/issues/90 #1778: FILE: drivers/ml/cnxk/cn10k_ml_ops.c:1316: + strncpy(xstats_map[idx].name, cn10k_mldev->xstats.entries[i].map.name, total: 0 errors, 1 warnings, 2276 lines checked ### [PATCH] ml/cnxk: add generic model and layer structures WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over strncpy - see: https://github.com/KSPP/linux/issues/90 #117: FILE: drivers/ml/cnxk/cn10k_ml_model.c:379: + strncpy(layer->info.input[i].name, (char *)metadata->input1[i].input_name, WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over strncpy - see: https://github.com/KSPP/linux/issues/90 #166: FILE: drivers/ml/cnxk/cn10k_ml_model.c:411: + strncpy(layer->info.input[i].name, (char *)metadata->input2[j].input_name, WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over strncpy - see: https://github.com/KSPP/linux/issues/90 #221: FILE: drivers/ml/cnxk/cn10k_ml_model.c:449: + strncpy(layer->info.output[i].name, WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over strncpy - see: https://github.com/KSPP/linux/issues/90 #255: FILE: drivers/ml/cnxk/cn10k_ml_model.c:472: + strncpy(layer->info.output[i].name, total: 0 errors, 4 warnings, 1905 lines checked ### [PATCH] ml/cnxk: update model load and unload functions WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over strncpy - see: https://github.com/KSPP/linux/issues/90 #83: FILE: drivers/ml/cnxk/cn10k_ml_model.c:367: + strncpy(io_info->input[i].name, (char *)metadata->input1[i].input_name, WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over strncpy - see: https://github.com/KSPP/linux/issues/90 #135: FILE: drivers/ml/cnxk/cn10k_ml_model.c:399: + strncpy(io_info->input[i].name, (char *)metadata->input2[j].input_name, WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over strncpy - see: https://github.com/KSPP/linux/issues/90 #204: FILE: drivers/ml/cnxk/cn10k_ml_model.c:437: + strncpy(io_info->output[i].name, (char *)metadata->output1[i].output_name, WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over strncpy - see: https://github.com/KSPP/linux/issues/90 #244: FILE: drivers/ml/cnxk/cn10k_ml_model.c:461: + strncpy(io_info->output[i].name, (char *)metadata->output2[j].output_name, total: 0 errors, 4 warnings, 1094 lines checked ### [PATCH] ml/cnxk: update device and model xstats functions WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over strncpy - see: https://github.com/KSPP/linux/issues/90 #1100: FILE: drivers/ml/cnxk/cnxk_ml_ops.c:856: WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over strncpy - see: https://github.com/KSPP/linux/issues/90 #1100: FILE: drivers/ml/cnxk/cnxk_ml_ops.c:856: + strncpy(xstats_map[idx].name, xs->map.name, RTE_ML_STR_MAX); total: 0 errors, 1 warnings, 1248 lines checked ### [PATCH] ml/cnxk: fetch layer info and load TVM model WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over strncpy - see: https://github.com/KSPP/linux/issues/90 #172: FILE: drivers/ml/cnxk/mvtvm_ml_ops.c:125: + strncpy(model->layer[layer_id].name, total: 0 errors, 1 warnings, 207 lines checked ### [PATCH] ml/cnxk: update internal info for TVM model WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over strncpy - see: https://github.com/KSPP/linux/issues/90 #85: FILE: drivers/ml/cnxk/mvtvm_ml_model.c:175: + strncpy(model->mvtvm.info.input[i].name, metadata->input[i].name, WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over strncpy - see: https://github.com/KSPP/linux/issues/90 #118: FILE: drivers/ml/cnxk/mvtvm_ml_model.c:208: + strncpy(model->mvtvm.info.output[i].name, metadata->output[i].name, total: 0 errors, 2 warnings, 173 lines checked ### [PATCH] ml/cnxk: enable reporting model runtime as xstats WARNING:STRCPY: Prefer strscpy over strcpy - see: https://github.com/KSPP/linux/issues/88 #113: FILE: drivers/ml/cnxk/cnxk_ml_ops.c:243: + strcpy(suffix, "cycles"); WARNING:STRCPY: Prefer strscpy over strcpy - see: https://github.com/KSPP/linux/issues/88 #115: FILE: drivers/ml/cnxk/cnxk_ml_ops.c:245: + strcpy(suffix, "ns"); total: 0 errors, 2 warnings, 477 lines checked
> -----Original Message----- > From: Jerin Jacob <jerinjacobk@gmail.com> > Sent: 18 October 2023 19:50 > To: Srikanth Yalavarthi <syalavarthi@marvell.com> > Cc: dev@dpdk.org; Shivah Shankar Shankar Narayan Rao > <sshankarnara@marvell.com>; Anup Prabhu <aprabhu@marvell.com>; > Prince Takkar <ptakkar@marvell.com>; Srikanth Yalavarthi > <syalavarthi@marvell.com> > Subject: [EXT] Re: [PATCH v6 00/34] Implementation of revised ml/cnxk > driver > > External Email > > ---------------------------------------------------------------------- > On Wed, Oct 18, 2023 at 7:24 PM Srikanth Yalavarthi > <syalavarthi@marvell.com> wrote: > > > > This patch series is an implementation of revised ml/cnxk driver to > > support models compiled with TVM compiler framework. TVM models use > a > > hybrid mode for execution, with regions of the model executing on the > > ML accelerator and the rest executing on CPU cores. > > > > This series of commits reorganizes the ml/cnxk driver and adds support > > to execute multiple regions with-in a TVM model. > > > > Fix this warning > > ### [PATCH] ml/cnxk: enable creation of mvtvm virtual device > > Warning in drivers/ml/cnxk/cn10k_ml_dev.c: > Using rte_panic/rte_exit Updated the driver patches to avoid using rte_panic/rte_exit. Changes part of v7. > > Fix as needed which is relevent > ### [PATCH] ml/cnxk: add generic cnxk device structure > > WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over > strncpy - see: https://urldefense.proofpoint.com/v2/url?u=https- > 3A__github.com_KSPP_linux_issues_90&d=DwIFaQ&c=nKjWec2b6R0mOyPa > z7xtfQ&r=SNPqUkGl0n_Ms1iJa_6wD6LBwX8efL_NOyXvAX-iCMI&m=Wc- > 9LbDLV9eZtdFI_acMCdshpvh76LPngspZk3yJrdWbVO8NUnmS3ywndxRTEuAI > &s=rCRq1CQlxbyMlcn4Bf-vfXpQbosVe-pT3EtatPXlKmg&e= > #1778: FILE: drivers/ml/cnxk/cn10k_ml_ops.c:1316: > + strncpy(xstats_map[idx].name, > cn10k_mldev->xstats.entries[i].map.name, > > total: 0 errors, 1 warnings, 2276 lines checked > > ### [PATCH] ml/cnxk: add generic model and layer structures > > WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over > strncpy - see: https://urldefense.proofpoint.com/v2/url?u=https- > 3A__github.com_KSPP_linux_issues_90&d=DwIFaQ&c=nKjWec2b6R0mOyPa > z7xtfQ&r=SNPqUkGl0n_Ms1iJa_6wD6LBwX8efL_NOyXvAX-iCMI&m=Wc- > 9LbDLV9eZtdFI_acMCdshpvh76LPngspZk3yJrdWbVO8NUnmS3ywndxRTEuAI > &s=rCRq1CQlxbyMlcn4Bf-vfXpQbosVe-pT3EtatPXlKmg&e= > #117: FILE: drivers/ml/cnxk/cn10k_ml_model.c:379: > + strncpy(layer->info.input[i].name, (char > *)metadata->input1[i].input_name, > > WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over > strncpy - see: https://urldefense.proofpoint.com/v2/url?u=https- > 3A__github.com_KSPP_linux_issues_90&d=DwIFaQ&c=nKjWec2b6R0mOyPa > z7xtfQ&r=SNPqUkGl0n_Ms1iJa_6wD6LBwX8efL_NOyXvAX-iCMI&m=Wc- > 9LbDLV9eZtdFI_acMCdshpvh76LPngspZk3yJrdWbVO8NUnmS3ywndxRTEuAI > &s=rCRq1CQlxbyMlcn4Bf-vfXpQbosVe-pT3EtatPXlKmg&e= > #166: FILE: drivers/ml/cnxk/cn10k_ml_model.c:411: > + strncpy(layer->info.input[i].name, (char > *)metadata->input2[j].input_name, > > WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over > strncpy - see: https://urldefense.proofpoint.com/v2/url?u=https- > 3A__github.com_KSPP_linux_issues_90&d=DwIFaQ&c=nKjWec2b6R0mOyPa > z7xtfQ&r=SNPqUkGl0n_Ms1iJa_6wD6LBwX8efL_NOyXvAX-iCMI&m=Wc- > 9LbDLV9eZtdFI_acMCdshpvh76LPngspZk3yJrdWbVO8NUnmS3ywndxRTEuAI > &s=rCRq1CQlxbyMlcn4Bf-vfXpQbosVe-pT3EtatPXlKmg&e= > #221: FILE: drivers/ml/cnxk/cn10k_ml_model.c:449: > + strncpy(layer->info.output[i].name, > > WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over > strncpy - see: https://urldefense.proofpoint.com/v2/url?u=https- > 3A__github.com_KSPP_linux_issues_90&d=DwIFaQ&c=nKjWec2b6R0mOyPa > z7xtfQ&r=SNPqUkGl0n_Ms1iJa_6wD6LBwX8efL_NOyXvAX-iCMI&m=Wc- > 9LbDLV9eZtdFI_acMCdshpvh76LPngspZk3yJrdWbVO8NUnmS3ywndxRTEuAI > &s=rCRq1CQlxbyMlcn4Bf-vfXpQbosVe-pT3EtatPXlKmg&e= > #255: FILE: drivers/ml/cnxk/cn10k_ml_model.c:472: > + strncpy(layer->info.output[i].name, > > total: 0 errors, 4 warnings, 1905 lines checked > > ### [PATCH] ml/cnxk: update model load and unload functions > > WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over > strncpy - see: https://urldefense.proofpoint.com/v2/url?u=https- > 3A__github.com_KSPP_linux_issues_90&d=DwIFaQ&c=nKjWec2b6R0mOyPa > z7xtfQ&r=SNPqUkGl0n_Ms1iJa_6wD6LBwX8efL_NOyXvAX-iCMI&m=Wc- > 9LbDLV9eZtdFI_acMCdshpvh76LPngspZk3yJrdWbVO8NUnmS3ywndxRTEuAI > &s=rCRq1CQlxbyMlcn4Bf-vfXpQbosVe-pT3EtatPXlKmg&e= > #83: FILE: drivers/ml/cnxk/cn10k_ml_model.c:367: > + strncpy(io_info->input[i].name, (char > *)metadata->input1[i].input_name, > > WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over > strncpy - see: https://urldefense.proofpoint.com/v2/url?u=https- > 3A__github.com_KSPP_linux_issues_90&d=DwIFaQ&c=nKjWec2b6R0mOyPa > z7xtfQ&r=SNPqUkGl0n_Ms1iJa_6wD6LBwX8efL_NOyXvAX-iCMI&m=Wc- > 9LbDLV9eZtdFI_acMCdshpvh76LPngspZk3yJrdWbVO8NUnmS3ywndxRTEuAI > &s=rCRq1CQlxbyMlcn4Bf-vfXpQbosVe-pT3EtatPXlKmg&e= > #135: FILE: drivers/ml/cnxk/cn10k_ml_model.c:399: > + strncpy(io_info->input[i].name, (char > *)metadata->input2[j].input_name, > > WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over > strncpy - see: https://urldefense.proofpoint.com/v2/url?u=https- > 3A__github.com_KSPP_linux_issues_90&d=DwIFaQ&c=nKjWec2b6R0mOyPa > z7xtfQ&r=SNPqUkGl0n_Ms1iJa_6wD6LBwX8efL_NOyXvAX-iCMI&m=Wc- > 9LbDLV9eZtdFI_acMCdshpvh76LPngspZk3yJrdWbVO8NUnmS3ywndxRTEuAI > &s=rCRq1CQlxbyMlcn4Bf-vfXpQbosVe-pT3EtatPXlKmg&e= > #204: FILE: drivers/ml/cnxk/cn10k_ml_model.c:437: > + strncpy(io_info->output[i].name, (char > *)metadata->output1[i].output_name, > > WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over > strncpy - see: https://urldefense.proofpoint.com/v2/url?u=https- > 3A__github.com_KSPP_linux_issues_90&d=DwIFaQ&c=nKjWec2b6R0mOyPa > z7xtfQ&r=SNPqUkGl0n_Ms1iJa_6wD6LBwX8efL_NOyXvAX-iCMI&m=Wc- > 9LbDLV9eZtdFI_acMCdshpvh76LPngspZk3yJrdWbVO8NUnmS3ywndxRTEuAI > &s=rCRq1CQlxbyMlcn4Bf-vfXpQbosVe-pT3EtatPXlKmg&e= > #244: FILE: drivers/ml/cnxk/cn10k_ml_model.c:461: > + strncpy(io_info->output[i].name, (char > *)metadata->output2[j].output_name, > > total: 0 errors, 4 warnings, 1094 lines checked > > ### [PATCH] ml/cnxk: update device and model xstats functions > > WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over > strncpy - see: https://urldefense.proofpoint.com/v2/url?u=https- > 3A__github.com_KSPP_linux_issues_90&d=DwIFaQ&c=nKjWec2b6R0mOyPa > z7xtfQ&r=SNPqUkGl0n_Ms1iJa_6wD6LBwX8efL_NOyXvAX-iCMI&m=Wc- > 9LbDLV9eZtdFI_acMCdshpvh76LPngspZk3yJrdWbVO8NUnmS3ywndxRTEuAI > &s=rCRq1CQlxbyMlcn4Bf-vfXpQbosVe-pT3EtatPXlKmg&e= > #1100: FILE: drivers/ml/cnxk/cnxk_ml_ops.c:856: > WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over > strncpy - see: https://urldefense.proofpoint.com/v2/url?u=https- > 3A__github.com_KSPP_linux_issues_90&d=DwIFaQ&c=nKjWec2b6R0mOyPa > z7xtfQ&r=SNPqUkGl0n_Ms1iJa_6wD6LBwX8efL_NOyXvAX-iCMI&m=Wc- > 9LbDLV9eZtdFI_acMCdshpvh76LPngspZk3yJrdWbVO8NUnmS3ywndxRTEuAI > &s=rCRq1CQlxbyMlcn4Bf-vfXpQbosVe-pT3EtatPXlKmg&e= > #1100: FILE: drivers/ml/cnxk/cnxk_ml_ops.c:856: > + strncpy(xstats_map[idx].name, xs->map.name, > RTE_ML_STR_MAX); > > total: 0 errors, 1 warnings, 1248 lines checked > > ### [PATCH] ml/cnxk: fetch layer info and load TVM model > > WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over > strncpy - see: https://urldefense.proofpoint.com/v2/url?u=https- > 3A__github.com_KSPP_linux_issues_90&d=DwIFaQ&c=nKjWec2b6R0mOyPa > z7xtfQ&r=SNPqUkGl0n_Ms1iJa_6wD6LBwX8efL_NOyXvAX-iCMI&m=Wc- > 9LbDLV9eZtdFI_acMCdshpvh76LPngspZk3yJrdWbVO8NUnmS3ywndxRTEuAI > &s=rCRq1CQlxbyMlcn4Bf-vfXpQbosVe-pT3EtatPXlKmg&e= > #172: FILE: drivers/ml/cnxk/mvtvm_ml_ops.c:125: > + strncpy(model->layer[layer_id].name, > > total: 0 errors, 1 warnings, 207 lines checked > > ### [PATCH] ml/cnxk: update internal info for TVM model > > WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over > strncpy - see: https://urldefense.proofpoint.com/v2/url?u=https- > 3A__github.com_KSPP_linux_issues_90&d=DwIFaQ&c=nKjWec2b6R0mOyPa > z7xtfQ&r=SNPqUkGl0n_Ms1iJa_6wD6LBwX8efL_NOyXvAX-iCMI&m=Wc- > 9LbDLV9eZtdFI_acMCdshpvh76LPngspZk3yJrdWbVO8NUnmS3ywndxRTEuAI > &s=rCRq1CQlxbyMlcn4Bf-vfXpQbosVe-pT3EtatPXlKmg&e= > #85: FILE: drivers/ml/cnxk/mvtvm_ml_model.c:175: > + strncpy(model->mvtvm.info.input[i].name, > metadata->input[i].name, > > WARNING:STRNCPY: Prefer strscpy, strscpy_pad, or __nonstring over > strncpy - see: https://urldefense.proofpoint.com/v2/url?u=https- > 3A__github.com_KSPP_linux_issues_90&d=DwIFaQ&c=nKjWec2b6R0mOyPa > z7xtfQ&r=SNPqUkGl0n_Ms1iJa_6wD6LBwX8efL_NOyXvAX-iCMI&m=Wc- > 9LbDLV9eZtdFI_acMCdshpvh76LPngspZk3yJrdWbVO8NUnmS3ywndxRTEuAI > &s=rCRq1CQlxbyMlcn4Bf-vfXpQbosVe-pT3EtatPXlKmg&e= > #118: FILE: drivers/ml/cnxk/mvtvm_ml_model.c:208: > + strncpy(model->mvtvm.info.output[i].name, > metadata->output[i].name, > > total: 0 errors, 2 warnings, 173 lines checked > > ### [PATCH] ml/cnxk: enable reporting model runtime as xstats > > WARNING:STRCPY: Prefer strscpy over strcpy - see: > https://urldefense.proofpoint.com/v2/url?u=https- > 3A__github.com_KSPP_linux_issues_88&d=DwIFaQ&c=nKjWec2b6R0mOyPa > z7xtfQ&r=SNPqUkGl0n_Ms1iJa_6wD6LBwX8efL_NOyXvAX-iCMI&m=Wc- > 9LbDLV9eZtdFI_acMCdshpvh76LPngspZk3yJrdWbVO8NUnmS3ywndxRTEuAI > &s=mUyWaXNokXAr7ebegeCamaauO7XAu7W5GqbaP20g-i8&e= > #113: FILE: drivers/ml/cnxk/cnxk_ml_ops.c:243: > + strcpy(suffix, "cycles"); > > WARNING:STRCPY: Prefer strscpy over strcpy - see: > https://urldefense.proofpoint.com/v2/url?u=https- > 3A__github.com_KSPP_linux_issues_88&d=DwIFaQ&c=nKjWec2b6R0mOyPa > z7xtfQ&r=SNPqUkGl0n_Ms1iJa_6wD6LBwX8efL_NOyXvAX-iCMI&m=Wc- > 9LbDLV9eZtdFI_acMCdshpvh76LPngspZk3yJrdWbVO8NUnmS3ywndxRTEuAI > &s=mUyWaXNokXAr7ebegeCamaauO7XAu7W5GqbaP20g-i8&e= > #115: FILE: drivers/ml/cnxk/cnxk_ml_ops.c:245: > + strcpy(suffix, "ns"); > Replaced all str* functions with rte_str* functions. Changes part of v7. > total: 0 errors, 2 warnings, 477 lines checked