From patchwork Tue Feb 11 17:35:21 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stephen Hemminger X-Patchwork-Id: 151356 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: 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 B7E44461F9; Tue, 11 Feb 2025 18:37:39 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 6AEB6409FA; Tue, 11 Feb 2025 18:37:35 +0100 (CET) Received: from mail-pj1-f53.google.com (mail-pj1-f53.google.com [209.85.216.53]) by mails.dpdk.org (Postfix) with ESMTP id 877D840662 for ; Tue, 11 Feb 2025 18:37:33 +0100 (CET) Received: by mail-pj1-f53.google.com with SMTP id 98e67ed59e1d1-2f9bac7699aso8657980a91.1 for ; Tue, 11 Feb 2025 09:37:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=networkplumber-org.20230601.gappssmtp.com; s=20230601; t=1739295452; x=1739900252; darn=dpdk.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=2vL0zrSN80vuagRVyMJeDhkCFPR6FmAGCCZ+phmJGzw=; b=uCgYv/W22xbAqxeb6g66QhJ+XtF87SOk78NDQX8sTu3mOCI7d3vf07YsZY8fBli9S6 OrPKMl8MOpHmLFy9lvCIx4dZ+gGva4ZGdjHXbtUZU0xFU87KVRNSFpswSHoI0uKMmzcD WJFUE7UqRpV2xCKUmLRTjQH9i2tYDS2ywR5JeZaVtzHeKbMFvvQsRBBvng5iQw0ocqbi Zv9oytuGnoWE/XXGfPWOoJq6hedytezcLSMcN1Jtk4OEqT/JP+ykD31027yOvYxV6b/X x+DrSCnwsmo9ER8XLc9NWCraw/Hfz126J6LdHcFvZTKfhC6blwnsu33vTfOG9/oNXrbw vQtQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739295452; x=1739900252; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=2vL0zrSN80vuagRVyMJeDhkCFPR6FmAGCCZ+phmJGzw=; b=wko6gX0cuLAbubNcxTTWd8iAIRfZqyy99uGAU6WYVvkQLOxH6H2uLGudqP9MVs1Lkf gAp9DqwcNjdjA4qjr92lxQ1ntlq4sB5XasKIpkKZQWi0Kc97GfFfivf3Pv4eogfEE01E LYK5rYnDN+C22F7R+/O9C9O/LquEEzQisGqvotlZwvtSuARCnHkXK/xKnZF2l5I96GYf hnOt2adSocOOxIdV2fXVLTbFq7VM4/A9do7NOyaq9gchXvzo+NzUEe9NlEkkik6EQ1ZX UJNEqcKQ/MbGZtEC7Dqr0JiAP22/1KjANdnKJW2KGhmpoRE/a3Dp9zPwsXiJ/bFlZF1X DmtQ== X-Gm-Message-State: AOJu0YwWSEAD9ajsEPk8cB4vxFQyOMtl1CsupNu7fhnpiF+DAJmrmLym S+9PjPP3GVhimwC8KxQ+lNq3SAEu4GHpOJZ3EPdWYiDfe4zUm+C/Pjh3cvUAGzj6nLsymKh+8K0 i X-Gm-Gg: ASbGncvbei2BscPNLz7mjm5uFIF1ixLwu6moSit9afzhMNIE6YYUoS+qcTEQCiu7HgW R2spMh6O/Hg6fJQvnXhfde0OR1zSMjrd1vm2eDObcjS9BZf73TpiSTEEL9V8N5KwzOOlDpCghPB p0IzYvFDS7QTL8JuD4o8MDIoYuRrNic9xHc3aZNpa1A7VyernxTgvN4JypYIqEIyaiwWkEJ8X8x lF9W2W1NUciDsf5PsTPWSWHBuAjmICeI+b9LJ6ag8EjBdh+oKI7zg3ErWcWhUaTXXSDwzYoQaT+ FPCYlBTHLWyZtbJEd9aLNR7Wyb8YkF/K8h5wcaeDbRLGSjOKrZG9LpjSeXkdfgCkc+6E X-Google-Smtp-Source: AGHT+IHKPiTYo+ZVykNtl33HmABkM5T31ju4Jjwqly+OY5leAZQSGyl1uK1UKDtvQf2R3EWHYALTsA== X-Received: by 2002:a17:90b:1f81:b0:2ee:d824:b559 with SMTP id 98e67ed59e1d1-2fa9ee19228mr6367951a91.28.1739295452583; Tue, 11 Feb 2025 09:37:32 -0800 (PST) Received: from hermes.local (204-195-96-226.wavecable.com. [204.195.96.226]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2fa4656bd27sm7131811a91.42.2025.02.11.09.37.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Feb 2025 09:37:32 -0800 (PST) From: Stephen Hemminger To: dev@dpdk.org Cc: Stephen Hemminger , Tyler Retzlaff Subject: [PATCH v5 01/11] eal: introduce new secure memory fill Date: Tue, 11 Feb 2025 09:35:21 -0800 Message-ID: <20250211173720.1188517-2-stephen@networkplumber.org> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250211173720.1188517-1-stephen@networkplumber.org> References: <20241114011129.451243-1-stephen@networkplumber.org> <20250211173720.1188517-1-stephen@networkplumber.org> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org When memset() is used before a release function such as free, the compiler if allowed to optimize the memset away under the as-if rules. This is normally ok, but in certain cases such as passwords or security keys it is problematic. Introduce a DPDK wrapper which is equivalent to the C++ memset_s function. Naming chosen to be similar to kernel. Signed-off-by: Stephen Hemminger Signed-off-by: Chengwen Feng --- lib/eal/include/rte_string_fns.h | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/lib/eal/include/rte_string_fns.h b/lib/eal/include/rte_string_fns.h index 702bd81251..4874703957 100644 --- a/lib/eal/include/rte_string_fns.h +++ b/lib/eal/include/rte_string_fns.h @@ -15,6 +15,7 @@ #include #include +#include #include #include @@ -149,6 +150,32 @@ rte_str_skip_leading_spaces(const char *src) return p; } +/** + * @warning + * @b EXPERIMENTAL: this API may change without prior notice. + * + * Fill memory with constant byte but can not be optimized away. + * Use as a replacement for memset() for sensitive information. + * + * @param dst + * target buffer + * @param ch + * byte to fill + * @param sz + * number of bytes to fill + * + * @return + * like memset() returns a pointer th the memory area dst. + */ +__rte_experimental +static inline void * +rte_memset_sensitive(void *dst, int ch, size_t sz) +{ + void *ret = memset(dst, ch, sz); + rte_compiler_barrier(); + return ret; +} + #ifdef __cplusplus } #endif From patchwork Tue Feb 11 17:35:22 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stephen Hemminger X-Patchwork-Id: 151357 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: 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 987DA461F9; Tue, 11 Feb 2025 18:37:45 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id CBCFE40A89; Tue, 11 Feb 2025 18:37:36 +0100 (CET) Received: from mail-pj1-f53.google.com (mail-pj1-f53.google.com [209.85.216.53]) by mails.dpdk.org (Postfix) with ESMTP id DD4AD4069F for ; Tue, 11 Feb 2025 18:37:34 +0100 (CET) Received: by mail-pj1-f53.google.com with SMTP id 98e67ed59e1d1-2fa7465baceso4728645a91.0 for ; Tue, 11 Feb 2025 09:37:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=networkplumber-org.20230601.gappssmtp.com; s=20230601; t=1739295454; x=1739900254; darn=dpdk.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=CKYjSR4pi38r6mJmyG4S3BECFAEkR6nV3M4PYe0T5po=; b=PoMzmlr05J4oyozI271404XtdRkzhwOSE6gAbbn0R2zfLsJDYt5bYQ+QOGPhZhPs35 9RV1qGAZvHjrtGIeNOwKI5Sex+xBprKcq8gjwgn3JKw+6UIfdCYEQYg1zHLGLqWMASZe Zy3KXvNPDQT+Y+JTG0ha6d7W/peK7yLFq1w6tTgI+Itb/z38C7Od9M5bDhhNJEsZCV8s q1x6Oani0sVEifZ3K/zE2PKKtbChBVNTWZJ4sjSWW9FT3yE033e6kiKeXJ/pkw9H9c6h SPt7idi3mh/5Dcvh/VfU+4dS7afCU53jmKa50RFeXOEqVVskMCrqW0jW9XjRmni33iMU 17Kg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739295454; x=1739900254; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=CKYjSR4pi38r6mJmyG4S3BECFAEkR6nV3M4PYe0T5po=; b=T78B7wj8B13jbPCVfmnp28kDGUmcRjg+ZU33Fyc5zlqhynj0YnK4p3V1QcyRXtNTBc Mf7uzsRtpesdsnNMMYt9xq0TSDwTa30n05aw00Bi5nSIUYdyD4tdG3NXc7cMK9GplqGN QU0vNyMd1RvVPaao/THgl4x5cS/drXjFdU0iX+v5WwVDvfDl3zIKGJoAVtxZ1Hl6qxAr buG0WkyEFbn4GMkII357aw/D2TFltHJNhYyVHi1UB1D03P8fdXhZ1teKPeFlJRvb2i2L jr5GJoUy2gtgRx6NO5m6WuwNiSvpV3KIjCtyUWtxZVrtVt5lURaaLQIuwlOpkXPUEAll IwAw== X-Gm-Message-State: AOJu0YxeSHFfYUvg6lvTwoEzqzAA4BBqEFEUrBU9PmBXl/5KT51GP6/3 xLRjdo2+EOhUlvzo72gdpIezc5Ee0vob00fa74ZSb1gwImUHPM8oed+YSEC8YYOra5KuJJycF2w q X-Gm-Gg: ASbGncsFsXVmTIxLQvgCNFEtU4yrYR+8WJKRWvtJ/qCaYqkOypZ2dTAKcsybEr8zu4j M+YZb+lJ6EV4iJlopXCXbU6ixpAMZsZt5gJI+PBei7Fe2ITJffJNesLpuHoUNwaAw3NCcKr1zM9 kciAh5ne6C3bi8rjM9iPSMH2d1Ya42SfzWMOU2TQcPnzDpIQTjLY51M5S8yvMclNiX8aZDqLrWf uSY0yiyZwPxZDjE7Ke2nBDHcQCN/PVGP3vmPi8MCC6U7/Qfu96SACr9l0BqDOAs6Oick847B+If NXNzfXo1gDP614kOcr/EK2cUnMAiXvJlEYKy7+Jvj4r8bDJWVxCqn3y6e9pI2vuPnF/x X-Google-Smtp-Source: AGHT+IG+u+vstDNJ2jJbFGHIZE3zFiNiUwmX+J6HjKnp1BtM8z/d3UOXfHKpzW6VSJvx8UbzAT898g== X-Received: by 2002:a17:90b:2346:b0:2f2:a664:df20 with SMTP id 98e67ed59e1d1-2fa23f55106mr28850541a91.7.1739295454098; Tue, 11 Feb 2025 09:37:34 -0800 (PST) Received: from hermes.local (204-195-96-226.wavecable.com. [204.195.96.226]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2fa4656bd27sm7131811a91.42.2025.02.11.09.37.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Feb 2025 09:37:33 -0800 (PST) From: Stephen Hemminger To: dev@dpdk.org Cc: Stephen Hemminger , Anatoly Burakov , Tyler Retzlaff Subject: [PATCH v5 02/11] eal: add new secure free function Date: Tue, 11 Feb 2025 09:35:22 -0800 Message-ID: <20250211173720.1188517-3-stephen@networkplumber.org> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250211173720.1188517-1-stephen@networkplumber.org> References: <20241114011129.451243-1-stephen@networkplumber.org> <20250211173720.1188517-1-stephen@networkplumber.org> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Although internally rte_free does poison the buffer in most cases, it is useful to have function that explicitly does this to avoid any security issues. Signed-off-by: Stephen Hemminger --- lib/eal/common/rte_malloc.c | 30 ++++++++++++++++++++++++------ lib/eal/include/rte_malloc.h | 18 ++++++++++++++++++ lib/eal/version.map | 3 +++ 3 files changed, 45 insertions(+), 6 deletions(-) diff --git a/lib/eal/common/rte_malloc.c b/lib/eal/common/rte_malloc.c index 3eed4d4be6..c9e0f4724f 100644 --- a/lib/eal/common/rte_malloc.c +++ b/lib/eal/common/rte_malloc.c @@ -15,6 +15,7 @@ #include #include #include +#include #include @@ -27,27 +28,44 @@ /* Free the memory space back to heap */ -static void -mem_free(void *addr, const bool trace_ena) +static inline void +mem_free(void *addr, const bool trace_ena, bool zero) { + struct malloc_elem *elem; + if (trace_ena) rte_eal_trace_mem_free(addr); - if (addr == NULL) return; - if (malloc_heap_free(malloc_elem_from_data(addr)) < 0) + if (addr == NULL) + return; + + elem = malloc_elem_from_data(addr); + if (zero) { + size_t data_len = elem->size - MALLOC_ELEM_OVERHEAD; + + rte_memset_sensitive(addr, 0, data_len); + } + + if (malloc_heap_free(elem) < 0) EAL_LOG(ERR, "Error: Invalid memory"); } void rte_free(void *addr) { - mem_free(addr, true); + mem_free(addr, true, false); +} + +void +rte_free_sensitive(void *addr) +{ + mem_free(addr, true, true); } void eal_free_no_trace(void *addr) { - mem_free(addr, false); + mem_free(addr, false, false); } static void * diff --git a/lib/eal/include/rte_malloc.h b/lib/eal/include/rte_malloc.h index c8836de67c..d472ebb7db 100644 --- a/lib/eal/include/rte_malloc.h +++ b/lib/eal/include/rte_malloc.h @@ -51,6 +51,24 @@ struct rte_malloc_socket_stats { void rte_free(void *ptr); + +/** + * Frees the memory space pointed to by the provided pointer + * and guarantees it will be zero'd before reuse. + * + * This pointer must have been returned by a previous call to + * rte_malloc(), rte_zmalloc(), rte_calloc() or rte_realloc(). The behaviour of + * rte_free() is undefined if the pointer does not match this requirement. + * + * If the pointer is NULL, the function does nothing. + * + * @param ptr + * The pointer to memory to be freed. + */ +__rte_experimental +void +rte_free_sensitive(void *ptr); + /** * This function allocates memory from the huge-page area of memory. The memory * is not cleared. In NUMA systems, the memory allocated resides on the same diff --git a/lib/eal/version.map b/lib/eal/version.map index a20c713eb1..fa67ff44d5 100644 --- a/lib/eal/version.map +++ b/lib/eal/version.map @@ -398,6 +398,9 @@ EXPERIMENTAL { # added in 24.11 rte_bitset_to_str; rte_lcore_var_alloc; + + # added in 25.03 + rte_free_sensitive; }; INTERNAL { From patchwork Tue Feb 11 17:35:23 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stephen Hemminger X-Patchwork-Id: 151358 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: 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 D0453461F9; Tue, 11 Feb 2025 18:37:53 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 8AE7B40DC9; Tue, 11 Feb 2025 18:37:38 +0100 (CET) Received: from mail-pj1-f53.google.com (mail-pj1-f53.google.com [209.85.216.53]) by mails.dpdk.org (Postfix) with ESMTP id D2A4C40A77 for ; Tue, 11 Feb 2025 18:37:35 +0100 (CET) Received: by mail-pj1-f53.google.com with SMTP id 98e67ed59e1d1-2f42992f608so8959226a91.0 for ; Tue, 11 Feb 2025 09:37:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=networkplumber-org.20230601.gappssmtp.com; s=20230601; t=1739295455; x=1739900255; darn=dpdk.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Rak0DAZty8x40YM3GMr0xefCf11aYKehi8ijiDm9mi4=; b=O6h6kyrGA6jlg9E+YRal2SBxBNwSLcvtUm9auyIA66A5Wa7UKfqb4CxNfVkLYHtAZ3 h1H8+C/xRCPltVmsy9iaK5/fAhGjMQba3SjCe3eRKFj9RBfjjLkXdJ5eQP884QSXA5uX 9gMSmYopqwgZsfoIGMZa5YyFFWqJk/CI3rer5C5s93akXfg1LqkKx9yXpQDssS9RGvJ0 EfDaS9aS+sEYLU1bfltfGBv0gHaB9IOq8dn9BfVYql9Ns2NwkWb58jdPPaDTyl25ln9r gnm8rIIgGsAzpc18I/XL5ctp0iJmU8PHRXbBrzLTITlLbMAPOlItGAe8kktgMXByaBp7 I+PQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739295455; x=1739900255; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Rak0DAZty8x40YM3GMr0xefCf11aYKehi8ijiDm9mi4=; b=pxWrQ5gUfuWarB7MvepEMHBrtUEOfyxaoFIsgRBU1akc3w/BCs5twhZS4xWGtnvYdI QZan8iUmITIiBkcYjq9Oy+XQygGSjLHP6lUxy9AmIachVWUXPCK6MjiDYAYxDfmBXFpo gHoMuBuLB5Ad/FfmUKtWSuvCUso6wdTmSHJBA4Cne+0qF3s7te3E9+RvKp1prmcEvfiO gi1V+yqmxTucrZK/IBOyQs7iavI77GEd4wthWyMtUFtPdWSDntHpf7QjBDuZAUxbIX5D jcRUE9XXPU2EvA3vWfo3C428ruADI2UaNkb8T6GnXLvBkUupGw8mOzM3fJafzhrMnR1w 60jA== X-Gm-Message-State: AOJu0YwJCfqHPE00ThJuDC+RVBVLhWkkppLzbarthTWtcWU8UbdUCesh MjNMQDi6YugFx5hYQbXbxnDjB6mRpmWQuzeIp1t6+U48qkpkOD1dYL+Uo2bRcBd2PgPHAF5R6r0 / X-Gm-Gg: ASbGncv4QOUoZYlSYsNCqc6Ahm1jAC/otlZvVrGoywPePUCKjOxBlafvoLSb2Cys3Hx UeO6g5YnP/vypqO5OC64Ib9V00hyojfYUnHtawcax7cXNUGflUe9OEvQYcpFZcOZaxz62d8A5es xKO0UFttL8PaRjKhIJA9x8e15XSLVorUrQ6JJxnW1q8TI+77+d0LJ262bHz2NaGX9zg9zltPBCf OpDvb1ZowqZ/kaALqLq5GyVEKHP+hwEoAWx4KcXSvKA635LaDR+zAliEDGjws9+/ZtFzfMZkBcJ Q5Aut38luUa124pUA5uQwzq1AkWwleqwAI+tA9tgMUO42Ayo+lPAJqph3vaTwDKS0e5n X-Google-Smtp-Source: AGHT+IGT9iK4S4w6DvupyvWd765qWIFJMI7yLOc99G9OFZyWdmpVE71Fe23epA+AMHauTh0FoGYj8g== X-Received: by 2002:a17:90b:3552:b0:2f6:be57:49cd with SMTP id 98e67ed59e1d1-2fa242d9f42mr27619089a91.25.1739295455029; Tue, 11 Feb 2025 09:37:35 -0800 (PST) Received: from hermes.local (204-195-96-226.wavecable.com. [204.195.96.226]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2fa4656bd27sm7131811a91.42.2025.02.11.09.37.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Feb 2025 09:37:34 -0800 (PST) From: Stephen Hemminger To: dev@dpdk.org Cc: Stephen Hemminger , Bruce Richardson , Kai Ji Subject: [PATCH v5 03/11] crypto/qat: force zero of keys Date: Tue, 11 Feb 2025 09:35:23 -0800 Message-ID: <20250211173720.1188517-4-stephen@networkplumber.org> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250211173720.1188517-1-stephen@networkplumber.org> References: <20241114011129.451243-1-stephen@networkplumber.org> <20250211173720.1188517-1-stephen@networkplumber.org> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Just doing memset() on keys is not enough, compiler can optimize it away. Need something with a barrier. Signed-off-by: Stephen Hemminger Acked-by: Bruce Richardson --- drivers/crypto/qat/qat_sym_session.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/drivers/crypto/qat/qat_sym_session.c b/drivers/crypto/qat/qat_sym_session.c index 50d687fd37..2fce8fcb16 100644 --- a/drivers/crypto/qat/qat_sym_session.c +++ b/drivers/crypto/qat/qat_sym_session.c @@ -26,6 +26,7 @@ #include #include #include +#include #include "qat_logs.h" #include "qat_sym_session.h" @@ -1633,7 +1634,7 @@ static int qat_sym_do_precomputes(enum icp_qat_hw_auth_algo hash_alg, aes_cmac_key_derive(k0, k1); aes_cmac_key_derive(k1, k2); - memset(k0, 0, ICP_QAT_HW_AES_128_KEY_SZ); + rte_memset_sensitive(k0, 0, ICP_QAT_HW_AES_128_KEY_SZ); *p_state_len = ICP_QAT_HW_AES_XCBC_MAC_STATE2_SZ; rte_free(in); goto out; @@ -1668,7 +1669,7 @@ static int qat_sym_do_precomputes(enum icp_qat_hw_auth_algo hash_alg, &enc_key) != 0) { rte_free(in - (x * ICP_QAT_HW_AES_XCBC_MAC_KEY_SZ)); - memset(out - + rte_memset_sensitive(out - (x * ICP_QAT_HW_AES_XCBC_MAC_KEY_SZ), 0, ICP_QAT_HW_AES_XCBC_MAC_STATE2_SZ); return -EFAULT; @@ -1698,7 +1699,7 @@ static int qat_sym_do_precomputes(enum icp_qat_hw_auth_algo hash_alg, return -ENOMEM; } - memset(in, 0, ICP_QAT_HW_GALOIS_H_SZ); + rte_memset_sensitive(in, 0, ICP_QAT_HW_GALOIS_H_SZ); if (AES_set_encrypt_key(auth_key, auth_keylen << 3, &enc_key) != 0) { return -EFAULT; @@ -1757,8 +1758,8 @@ static int qat_sym_do_precomputes(enum icp_qat_hw_auth_algo hash_alg, } /* don't leave data lying around */ - memset(ipad, 0, block_size); - memset(opad, 0, block_size); + rte_memset_sensitive(ipad, 0, block_size); + rte_memset_sensitive(opad, 0, block_size); out: return 0; } @@ -2006,8 +2007,8 @@ static int qat_sym_do_precomputes_ipsec_mb(enum icp_qat_hw_auth_algo hash_alg, out: /* don't leave data lying around */ - memset(ipad, 0, block_size); - memset(opad, 0, block_size); + rte_memset_sensitive(ipad, 0, block_size); + rte_memset_sensitive(opad, 0, block_size); free_mb_mgr(m); return ret; } @@ -3232,7 +3233,7 @@ qat_security_session_destroy(void *dev __rte_unused, if (s->mb_mgr) free_mb_mgr(s->mb_mgr); #endif - memset(s, 0, qat_sym_session_get_private_size(dev)); + rte_memset_sensitive(s, 0, qat_sym_session_get_private_size(dev)); } return 0; From patchwork Tue Feb 11 17:35:24 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stephen Hemminger X-Patchwork-Id: 151359 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: 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 B45B8461F9; Tue, 11 Feb 2025 18:37:59 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id AA5C840DD6; Tue, 11 Feb 2025 18:37:39 +0100 (CET) Received: from mail-pj1-f41.google.com (mail-pj1-f41.google.com [209.85.216.41]) by mails.dpdk.org (Postfix) with ESMTP id DE4F140B8C for ; Tue, 11 Feb 2025 18:37:36 +0100 (CET) Received: by mail-pj1-f41.google.com with SMTP id 98e67ed59e1d1-2fa2c1ab145so7945424a91.3 for ; Tue, 11 Feb 2025 09:37:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=networkplumber-org.20230601.gappssmtp.com; s=20230601; t=1739295456; x=1739900256; darn=dpdk.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Cw8QQxi332bXS0xVHGhoElGIpqGm/zjj9ys6WnoCM3s=; b=03lWgt0SRzZ4GSYGxtLYt3HmFqyHN4Xq2QhQQ8z8vuknJ0W0KfSDJ2uCjymrVdfrPh 6S64CDLs9rNKSHWLBPdFHELmR0lawmBhgXkz0r0nlIaCZcpoKr7F4kQSPn89I6TA1v1X SV5v1CmwWec6wJ2ZoRAwfvKTB7wMyLrDynPA2BtDL5OYK8Fcezkpi+0l2IGK4rcYZSLJ 7v6JArtKU7I+t0ghiJ8kmT1i0gtFYMehB6vUlaj0gZiqXoZleoWuSB1nCurJO+pWXCGV rUyE0GkBGEraG0z8i+VzvFPxfVQh+U+eu+Xt10zZrYMdCxkhOD1Zqlln9JsGkFG4JYvq Pmag== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739295456; x=1739900256; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Cw8QQxi332bXS0xVHGhoElGIpqGm/zjj9ys6WnoCM3s=; b=OGR8xs0PQqHu57S3lp4YHNe+Q2P0ANQzIKbBr8xhCCo6EHRm/1wptoG5dNK4KtShuc OMRqs5eCxJTjiSXGqTlIi/JLj30NfYScWnYY6Q172HWAiOicK9WslDV6J/FkJpD0pWtB jP8jiNZ5wZu0pIGIiZyra8DnAPxeCCBf3acoC1GKFQvlI/VpmHiBsyXNkr9q+QmIDOsJ Ab/8ZbKq6z145ZokGlHqPihgTY9LGj8IclaJTHkReS2LYOk5X9qaeW63GeKZqD0BA47E XD4tJnXTF9Qs624JYT5ahypjsYpJkwG2U0OZAoRKdCOApiiunjpN+6HxpmtSCrXE8+5L 4svw== X-Gm-Message-State: AOJu0YzXms6zWsdRo5SLpZU+gTFMrSRZYMCSu6q/itXrl6Zl12YdRIQ2 su1UxT7OEsGHDuPCrcV0bhOivsjQqADNuQalfsb5z3u3eFtiGl/Wcd2OSmkEyOMKcCPjrD8/qHQ x X-Gm-Gg: ASbGncs3vuiM5tLTiSy0TLe4VRWJ3wPj2LauDVr8ATjGoGqUEIGg0C0GM391f6P45JS cQaZIKBflDLvDIKpU6YrxJgaZ3EjBsHIe0cS8iZKSk9kEeshVONZ+B/g0WlKKuIx5bBvEEvJzz/ /rP3rselYFurGZNCTfFYof96hI5u2pW7jErfpK23ZYwWXbQhXCmMecao2j56ATkAntkZMyDfxHx tHqDaqBIVMvE38kN8DRyiKw6RZo3za8G6rdx5KNsUWq4QNdVrPuIjdqzjP6P0OGoMG3o2eNtAIR RirIj3/0HuHfG4/ExwA80UBk/u7+2iDHZn5yU+e6G3C9K9H4aQ8pdwenHJmcmbILZNcU X-Google-Smtp-Source: AGHT+IEjLFwpK1E/TSDalcxfNi4EsmIBCg1f0v0qbfM/KB80Xx1Vbc7MpjqjGU0ECrwX+5bRd7jE3Q== X-Received: by 2002:a17:90b:3f0b:b0:2ea:bf1c:1e3a with SMTP id 98e67ed59e1d1-2fb63d16644mr1164108a91.12.1739295456017; Tue, 11 Feb 2025 09:37:36 -0800 (PST) Received: from hermes.local (204-195-96-226.wavecable.com. [204.195.96.226]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2fa4656bd27sm7131811a91.42.2025.02.11.09.37.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Feb 2025 09:37:35 -0800 (PST) From: Stephen Hemminger To: dev@dpdk.org Cc: Stephen Hemminger , stable@dpdk.org, Bruce Richardson , Kai Ji , Fan Zhang , Ciara Power Subject: [PATCH v5 04/11] crypto/qat: fix size calculation for memset Date: Tue, 11 Feb 2025 09:35:24 -0800 Message-ID: <20250211173720.1188517-5-stephen@networkplumber.org> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250211173720.1188517-1-stephen@networkplumber.org> References: <20241114011129.451243-1-stephen@networkplumber.org> <20250211173720.1188517-1-stephen@networkplumber.org> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org The memset was always doing 0 bytes since size computed later. Link: https://pvs-studio.com/en/blog/posts/cpp/1179/ Fixes: 3a80d7fb2ecd ("crypto/qat: support SHA3 plain hash") Cc: stable@dpdk.org Signed-off-by: Stephen Hemminger Acked-by: Bruce Richardson --- drivers/crypto/qat/qat_sym_session.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/crypto/qat/qat_sym_session.c b/drivers/crypto/qat/qat_sym_session.c index 2fce8fcb16..6f3eacaf43 100644 --- a/drivers/crypto/qat/qat_sym_session.c +++ b/drivers/crypto/qat/qat_sym_session.c @@ -2347,7 +2347,7 @@ int qat_sym_cd_cipher_set(struct qat_sym_session *cdesc, return 0; } -int qat_sym_cd_auth_set(struct qat_sym_session *cdesc, +static int qat_sym_cd_auth_set(struct qat_sym_session *cdesc, const uint8_t *authkey, uint32_t authkeylen, uint32_t aad_length, @@ -2620,27 +2620,27 @@ int qat_sym_cd_auth_set(struct qat_sym_session *cdesc, break; case ICP_QAT_HW_AUTH_ALGO_SHA3_224: /* Plain SHA3-224 */ - memset(cdesc->cd_cur_ptr, 0, state1_size); state1_size = qat_hash_get_state1_size( cdesc->qat_hash_alg); + memset(cdesc->cd_cur_ptr, 0, state1_size); break; case ICP_QAT_HW_AUTH_ALGO_SHA3_256: /* Plain SHA3-256 */ - memset(cdesc->cd_cur_ptr, 0, state1_size); state1_size = qat_hash_get_state1_size( cdesc->qat_hash_alg); + memset(cdesc->cd_cur_ptr, 0, state1_size); break; case ICP_QAT_HW_AUTH_ALGO_SHA3_384: /* Plain SHA3-384 */ - memset(cdesc->cd_cur_ptr, 0, state1_size); state1_size = qat_hash_get_state1_size( cdesc->qat_hash_alg); + memset(cdesc->cd_cur_ptr, 0, state1_size); break; case ICP_QAT_HW_AUTH_ALGO_SHA3_512: /* Plain SHA3-512 */ - memset(cdesc->cd_cur_ptr, 0, state1_size); state1_size = qat_hash_get_state1_size( cdesc->qat_hash_alg); + memset(cdesc->cd_cur_ptr, 0, state1_size); break; case ICP_QAT_HW_AUTH_ALGO_AES_XCBC_MAC: state1_size = ICP_QAT_HW_AES_XCBC_MAC_STATE1_SZ; From patchwork Tue Feb 11 17:35:25 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stephen Hemminger X-Patchwork-Id: 151360 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: 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 2CF04461F9; Tue, 11 Feb 2025 18:38:06 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 0BF7A40DF5; Tue, 11 Feb 2025 18:37:41 +0100 (CET) Received: from mail-pj1-f43.google.com (mail-pj1-f43.google.com [209.85.216.43]) by mails.dpdk.org (Postfix) with ESMTP id C1D3A406A2 for ; Tue, 11 Feb 2025 18:37:37 +0100 (CET) Received: by mail-pj1-f43.google.com with SMTP id 98e67ed59e1d1-2fa2eb7eb45so6621043a91.1 for ; Tue, 11 Feb 2025 09:37:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=networkplumber-org.20230601.gappssmtp.com; s=20230601; t=1739295457; x=1739900257; darn=dpdk.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=HNJHgWrp7PrghusG1EGUIcrHmq1efQC46Cm2w7NVkN8=; b=yJubrkNLUBDFbW8tjdm3GShYnqXbKv4JmbKz0mt3+DyDIE2QNGtcrWXrMGuzK3mgg5 fl4hN5pkFPRVrS9gCXSpA8QyoSkk/NwpkXwNvul2WcPKgIBzv4xuOgOlBYisF0zzqJaW /xGaYlGVL7tIFb9UK1yEafkbzjSLAvJvmNMYORcPzOGeyTIp1GWkQgFrtqATnrBaeqAT N1TavsJPPWutOIoWgTRC7l+iPQXD1nu95YilhUa/Cs8QkEmbnZAVOll8OLna5PWUJqt1 1eizXHlupTMGnB0LF809maQ1Ox67CXGvnXgwC5i8ZgkHYwMsiaLirAHA0XJhkk2Fw+xd EwIA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739295457; x=1739900257; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=HNJHgWrp7PrghusG1EGUIcrHmq1efQC46Cm2w7NVkN8=; b=kOLkX/4teWq7RNag3GYjHSKSHyRJAYLyEoYlWIo/lLs2l5ZHSfj9sF6fMVw0uYYqzJ ZuVr6htX99ynSo+UWJo5Mn+10aX0Y4YWBpHWc+U+CsUAnAqxyfdnTvv9ABX4E/sKV2vA vDngfKxnbTpgrVLjwoORqSVhwfFN36qLZ68PfWWJuj63mYWNQSMOkJBDH6LKJW8BMtNn 7GlVbMYEPyNbJuQ7hZM3XlvJwNDlWLoMVNt/E2we9KmLio1gL7YN777/srjo8/5XB0eX rYixxwQAEZRyR/LpkhT838XV1GV9wb+QgLIjluhlP40ftG1XoDB8lseaHYhtrxcflgtM +zcA== X-Gm-Message-State: AOJu0Ywo83d1UFAcJIQsx8v66sZFuz0+fKck73LAxDzfAaZDHbcBg+kB 0PV3iNg7Ss5ScJ3yS1KiEHQbO8WpHucoQcJeWBLOJ7a1k7UXJkenoltQ5MBCZukE1sF7SZ1oRgy u X-Gm-Gg: ASbGncubrqCkiPsROe8u/RO5nnt/tlrkBP/C+4TPbQbG+dE5e9l8Qk2dUhb2x6RIwVA ufPK21X8mu0V2wUCrDLgQoopRocZZgjmtcVvH3xtp45JSx6cg8Jk6ICDIwMFVUuEpmmH1PgN+zd YAVoXtXPmm8aLrcr9jhpDg9QmhsvFi/gcVf0s+lS+WqmtbphkR1V7IvLblTRLFfDRTb5ZWNrrHh O/7OoJFAWzPFqB3HIxVQHiLTdvslcWks5KWSBzoppEqJFLhm2f9ClHLkj6J9QHIyfM5VgtZKXfb RGyqjZMYXBhFql/hG4tvyE8/fyyaKUe+C5aO5CPGe3897jVi/dBPaYTqaYb34EB3+QaO X-Google-Smtp-Source: AGHT+IEl7GJ0b9Q227TSGzcgj31qwQdfDASKwwiRXY+LhSWmxoAJ/vRLlV/73lZ/0jnzw+CFcnzRsw== X-Received: by 2002:a17:90b:2b45:b0:2fa:1c09:3cee with SMTP id 98e67ed59e1d1-2faa0913acemr6288150a91.9.1739295456913; Tue, 11 Feb 2025 09:37:36 -0800 (PST) Received: from hermes.local (204-195-96-226.wavecable.com. [204.195.96.226]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2fa4656bd27sm7131811a91.42.2025.02.11.09.37.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Feb 2025 09:37:36 -0800 (PST) From: Stephen Hemminger To: dev@dpdk.org Cc: Stephen Hemminger , Bruce Richardson , Kai Ji Subject: [PATCH v5 05/11] crypto/qat: use secure memset Date: Tue, 11 Feb 2025 09:35:25 -0800 Message-ID: <20250211173720.1188517-6-stephen@networkplumber.org> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250211173720.1188517-1-stephen@networkplumber.org> References: <20241114011129.451243-1-stephen@networkplumber.org> <20250211173720.1188517-1-stephen@networkplumber.org> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Regular memset maybe removed by compiler if done before a free function. Use new rte_free_sensitive instead. Signed-off-by: Stephen Hemminger Acked-by: Bruce Richardson --- drivers/crypto/qat/qat_asym.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/drivers/crypto/qat/qat_asym.c b/drivers/crypto/qat/qat_asym.c index f5b56b2f71..d8a1406819 100644 --- a/drivers/crypto/qat/qat_asym.c +++ b/drivers/crypto/qat/qat_asym.c @@ -102,10 +102,7 @@ static const struct rte_driver cryptodev_qat_asym_driver = { curve.p.data, curve.bytesize) #define PARAM_CLR(what) \ - do { \ - memset(what.data, 0, what.length); \ - rte_free(what.data); \ - } while (0) + rte_free_sensitive(what.data) static void request_init(struct icp_qat_fw_pke_request *qat_req) From patchwork Tue Feb 11 17:35:26 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stephen Hemminger X-Patchwork-Id: 151361 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: 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 C3D3A461F9; Tue, 11 Feb 2025 18:38:11 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 585A140E0B; Tue, 11 Feb 2025 18:37:42 +0100 (CET) Received: from mail-pj1-f41.google.com (mail-pj1-f41.google.com [209.85.216.41]) by mails.dpdk.org (Postfix) with ESMTP id 937F040DCB for ; Tue, 11 Feb 2025 18:37:38 +0100 (CET) Received: by mail-pj1-f41.google.com with SMTP id 98e67ed59e1d1-2fa48404207so6467324a91.1 for ; Tue, 11 Feb 2025 09:37:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=networkplumber-org.20230601.gappssmtp.com; s=20230601; t=1739295458; x=1739900258; darn=dpdk.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=4eCQHxeqtnmJwnbM+apidP+XqcqCydmDyWVcC/qwE90=; b=dmYXC3YBgmugDjSr+Kqmp7RliPz0QCdEtNW9MymtfnTyu499F8fwhQGCN+3djgVHXl Z23IUwp/WRBb4jr/0jhpceeDb3aSl9YHlv3cVN8yIlvgK+xn8fwWKgSnCuDDhwcGuw+r vRAO0hFNqixtqpPTgyfWrUyQoenWxSmpGDknBSCXo6K4EiAelPAHLSIncmHODYWg0udI Tqeh2wdC2YnDkqNscwdH10hpegXzRdHSVQ3We/tfX9Att22e190WPgQccpx5averRg5e Ea0xgE9r2ymkGN36f7er0py+/tPQ2mY5anc1FuyNQOSJEtj0UVVw5ZEv6MNbOscqp3L3 0D7w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739295458; x=1739900258; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=4eCQHxeqtnmJwnbM+apidP+XqcqCydmDyWVcC/qwE90=; b=AFrVDle7FblkljWp69Xo6hRQxCPO8HjXPsQ/TeieHWhIUkHEWJbX4gRlaGXXgtcvXZ SVvkESqD94pmiPG4Lp6t6rckBUcMYup3UwMmT8TmpikmKFfF2q5qKvwKg8ThzN+gqri2 84iaDAFmfpsPO7YduhYx1eizuxI+itUixu4ObUkbDskqdG3qrhp9it/BPJEXX5TAYgu9 TDaTdDHZ5usl3Uo3mJBIDOwGPYAmE685MNz5zqldRpvMJn5/tCNF3+NTd5WlG7oHf0ce eXGBK0SkOebvpR0MTjAYq4B4mGe0i39lblQv9ofWORW6vx53krjLWEyhPfj/bZlzIMQ0 aUuw== X-Gm-Message-State: AOJu0YwmNQ8KmLKkUYgkLgzVUQTIjDSK4YEAddqHLkT7SsljxLA8iKE/ RgbAsjo02l9kNLufEPU9FT4NO6/+dEO8uvl9ZCAuxursu/8gPQM7fIlN2ioxc/K3BE9Jyma837i 6 X-Gm-Gg: ASbGncvj/CfMsDAt8nw5nPLYv/fXoKt5ewCEWrp7nAgW8Ny8eU3PoeydZs9a/WqgTNQ t4LxjuNMABf+bgxqkIZVkZA/bwU3Rx1FZ+o9uBp1TARAyY1SIihSQjtLSxO5OtbQ71Bl7NBA6Dq 1PwyVzVHArdQEQaXDZhawhnK5FJxfrFlY49XPog4L0phH++09gBSahwJbDhM9qz7w6yE7Acpu1Q xHWVLE1Fl9V2qhjbD0/QXnlHQLJDXTYxm7xd2o2WrPYPtW+/L8aYvZLTogRuwOPAfV7nYQ4G2q5 ZbomrGwUyT5WNwb5BJ7FeEWxGnhbpFEGHYw1+PNgYViM0GxRyCZb/Zk3ivEFXdUy0hiB X-Google-Smtp-Source: AGHT+IF5REX5vIH/jwbqoVJiCoI0Y+insi3NXduMZuYE9PXEC6qSqeCdrZxxXOvUl5ttjfA6nyOLFg== X-Received: by 2002:a17:90b:3596:b0:2ee:b2e6:4276 with SMTP id 98e67ed59e1d1-2fa243e9aaamr26491130a91.27.1739295457781; Tue, 11 Feb 2025 09:37:37 -0800 (PST) Received: from hermes.local (204-195-96-226.wavecable.com. [204.195.96.226]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2fa4656bd27sm7131811a91.42.2025.02.11.09.37.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Feb 2025 09:37:37 -0800 (PST) From: Stephen Hemminger To: dev@dpdk.org Cc: Stephen Hemminger , Chengwen Feng Subject: [PATCH v5 06/11] bus/uacce: remove memset before free Date: Tue, 11 Feb 2025 09:35:26 -0800 Message-ID: <20250211173720.1188517-7-stephen@networkplumber.org> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250211173720.1188517-1-stephen@networkplumber.org> References: <20241114011129.451243-1-stephen@networkplumber.org> <20250211173720.1188517-1-stephen@networkplumber.org> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Doing memset before free maybe removed by compiler, and is flagged by security scanning tools as potential problem. In this case the memset is unnecessary. Signed-off-by: Stephen Hemminger Acked-by: Chengwen Feng --- drivers/bus/uacce/uacce.c | 1 - 1 file changed, 1 deletion(-) diff --git a/drivers/bus/uacce/uacce.c b/drivers/bus/uacce/uacce.c index 9ca048122d..cc1e42d56a 100644 --- a/drivers/bus/uacce/uacce.c +++ b/drivers/bus/uacce/uacce.c @@ -454,7 +454,6 @@ uacce_cleanup(void) dev->device.driver = NULL; free: - memset(dev, 0, sizeof(*dev)); free(dev); } From patchwork Tue Feb 11 17:35:27 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stephen Hemminger X-Patchwork-Id: 151362 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: 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 EE9D7461F9; Tue, 11 Feb 2025 18:38:16 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 9614C40E18; Tue, 11 Feb 2025 18:37:43 +0100 (CET) Received: from mail-pj1-f50.google.com (mail-pj1-f50.google.com [209.85.216.50]) by mails.dpdk.org (Postfix) with ESMTP id 0E46040DDA for ; Tue, 11 Feb 2025 18:37:40 +0100 (CET) Received: by mail-pj1-f50.google.com with SMTP id 98e67ed59e1d1-2f9f5caa37cso10061429a91.0 for ; Tue, 11 Feb 2025 09:37:39 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=networkplumber-org.20230601.gappssmtp.com; s=20230601; t=1739295459; x=1739900259; darn=dpdk.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=AZmRfVHuNAu8WwJa8G2gVzrRUKoolZ9gQmZARtWp9Nw=; b=z789w4hJk98DYfXDcAcsaLqgfWkWw3RRgcf3buKK0+RGTtqFUKBwh/YVpjx0cD5oIA o/Pk3b3t5VqZnwLr7Xi63owFNPUuo3oXNdgg+b7QfPYQjfGfKEuieEGdt5WGXyN1QOye VMTLNr1hPXz8sBRimNzgVEjBr3ZnRwTHtqdswD8Ow4WAXYDsedAYiZWHHxHF6kumldkR eB9lvcszkAtpWe5fLlnyGaNSTYFdU8A6Du7qe4Zbjf0kSmRUJU+XqQvRwhVaK4VypvpB rJClgnKEP0brjq4TmasHeoIhLfCoczrTet4kHicbTdIuq9frKRou90xQjBI+yHmP3TMu 1Wxw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739295459; x=1739900259; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=AZmRfVHuNAu8WwJa8G2gVzrRUKoolZ9gQmZARtWp9Nw=; b=qghpMR9owr21fT5PvM+DgeNFLo1U/A2gMdz9AUwQGTKpR8EYLp4o9TB+XdGUQSvAXq OqCYpGisinJDCbPxE2how7bgTNgRFs5V7Q9p8UaV4UfHBnh+7DnTmHfpubP9yN8LZWUQ FDI8hWg2bhIB9jr3A83KfRkhHhSa6u+tlawOprrf78s2AmhhFPFn3C4LibNYrzVeg458 4XgroHf34i6boB1kAYNK4HEYjrNQdGgrSt8UPTpLXJhAgqeG0FvYjFUhnE3l18cJ6ToG EFptfr9RF0EwctOIOKSeAdG2hpK0fGfj27Tk94eTxIOxUxySl5LsliwY1BpPSbqCD3Fy LGgA== X-Gm-Message-State: AOJu0Yzc7NJNy5upbsRPBFZfqvCczO01gjmXj55Q6TlbrSnUaBXdQt+Y 4Ff34J/JWD5XVGvr2x3w2mUOU+TLIWL/UpvP8N6eRmpPb+QqH2OLFjrE9alwQ//j/kTy+KUJyVY R X-Gm-Gg: ASbGncsM8mA0sSxEZQKs32+QO9/+sB5yhgirHm/Hfh/M/YCfLbGcnU+V/mGXS9HxXjM AZoAuHxuePgoMdBAXsr7PxXMENHCO9bnoSNcpeCJXPuUxEg6RCfislMEH/H4e1zEPADC3elFn19 FhYJBV3bh/9giqiPZFPtmEG8AafoudIVEYY0TSknWUinR0XmeAaUVmmAEfhWkqSYfh137Ke0vyl ytcKPjLGWwCYdvuYtKmhH1qy6GGvOFqTkA0cTWmQZfLoBuPOwAROYzxSefEM+bjokA691jhOrHI NxGU/+y3wo05ljE3BYeh7YCs3CVL3WxYI3cJcQFa49VjsQvjnmGF5HhTvD9q+OL6wHhK X-Google-Smtp-Source: AGHT+IFjlPVOdDcIK1nKO4ql9VCjlNtc3e/rbIS410rnedV8sr+dFfdoZvqE3KL5BTSayFG1bfdZVg== X-Received: by 2002:a17:90b:56c3:b0:2fa:562c:c1cf with SMTP id 98e67ed59e1d1-2faa05deecemr6780049a91.1.1739295458746; Tue, 11 Feb 2025 09:37:38 -0800 (PST) Received: from hermes.local (204-195-96-226.wavecable.com. [204.195.96.226]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2fa4656bd27sm7131811a91.42.2025.02.11.09.37.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Feb 2025 09:37:38 -0800 (PST) From: Stephen Hemminger To: dev@dpdk.org Cc: Stephen Hemminger , Bruce Richardson , Ashish Gupta , Fan Zhang Subject: [PATCH v5 07/11] compress/octeontx: remove unnecessary memset Date: Tue, 11 Feb 2025 09:35:27 -0800 Message-ID: <20250211173720.1188517-8-stephen@networkplumber.org> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250211173720.1188517-1-stephen@networkplumber.org> References: <20241114011129.451243-1-stephen@networkplumber.org> <20250211173720.1188517-1-stephen@networkplumber.org> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Calling memset before rte_free not necessary, and could be removed by the compiler. In this case, the data is not security sensitive so the memset can be removed. Some security scanning tools will flag this. Signed-off-by: Stephen Hemminger Acked-by: Bruce Richardson --- drivers/compress/octeontx/otx_zip.c | 1 - drivers/compress/octeontx/otx_zip_pmd.c | 2 -- 2 files changed, 3 deletions(-) diff --git a/drivers/compress/octeontx/otx_zip.c b/drivers/compress/octeontx/otx_zip.c index 11471dcbb4..331d2d9475 100644 --- a/drivers/compress/octeontx/otx_zip.c +++ b/drivers/compress/octeontx/otx_zip.c @@ -81,7 +81,6 @@ zipvf_q_term(struct zipvf_qp *qp) struct zip_vf *vf = qp->vf; if (cmdq->va != NULL) { - memset(cmdq->va, 0, ZIP_MAX_CMDQ_SIZE); rte_free(cmdq->va); } diff --git a/drivers/compress/octeontx/otx_zip_pmd.c b/drivers/compress/octeontx/otx_zip_pmd.c index c8f456b319..74e3e942ad 100644 --- a/drivers/compress/octeontx/otx_zip_pmd.c +++ b/drivers/compress/octeontx/otx_zip_pmd.c @@ -479,8 +479,6 @@ zip_pmd_stream_free(struct rte_compressdev *dev, void *stream) (void *)&(z_stream->bufs[0]), (MAX_BUFS_PER_STREAM * ZIP_BURST_SIZE)); - /* Zero out the whole structure */ - memset(stream, 0, sizeof(struct zip_stream)); rte_free(stream); return 0; From patchwork Tue Feb 11 17:35:28 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stephen Hemminger X-Patchwork-Id: 151363 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: 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 61163461F9; Tue, 11 Feb 2025 18:38:22 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id CDEFA40E24; Tue, 11 Feb 2025 18:37:44 +0100 (CET) Received: from mail-pj1-f46.google.com (mail-pj1-f46.google.com [209.85.216.46]) by mails.dpdk.org (Postfix) with ESMTP id 9762140B9C for ; Tue, 11 Feb 2025 18:37:40 +0100 (CET) Received: by mail-pj1-f46.google.com with SMTP id 98e67ed59e1d1-2fa48404207so6467388a91.1 for ; Tue, 11 Feb 2025 09:37:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=networkplumber-org.20230601.gappssmtp.com; s=20230601; t=1739295460; x=1739900260; darn=dpdk.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=lTtX4AHkbt56cyz6ePjfJ2NXdYZ+Ear04KnwLkajDA0=; b=YK6EZW+n2Xzz1wiKv9FrFtLZ+F7Jwa5t7OnYIX2LtPpWriFXqLzrLDwrpd3dOfxhY9 YXwiuXd0/cOBGIF7epoDyXBJuRCHjzoeM1GLo/8pK7TeMGXMSst9e3VBPBWGslI+fSJK GYcyZtzlaWz8s3y1Y+IB6faok6ooeNa1l9lJIvQIHJt3rv5git2aJBr5NscP8/ZeHQwp QB2xFWWqTxZ4kpL+S3lDdTd3GTM5r+PfQiCg4vNAaibLD1jmmft/sMwL7YtNBN/I4lPF KJ+kXlAr9vPos64cF0pfgn/VspemCC5E5tSp9lPWiEHj0JOGbE2zb+XGYwT53E2s7c4R TZXQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739295460; x=1739900260; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=lTtX4AHkbt56cyz6ePjfJ2NXdYZ+Ear04KnwLkajDA0=; b=tuYuAmy9/gMv8LIVC9tN2LYc7GYNp2MLKZiurdVEKHGcG4FOWL+QmILOlVjpVx46Do cY7gAPKyGDey7uQKAj/ZCUBxIO0UPS3oRi/CmJ+wOVL/GpllXN/Tlm8o2wgMclxUtwLP 5x+LQj+6Lz/PooQNVa9jghMzdZRk9r1kTASLKqUHPdEErCaLzFENNUFQQte9XVnz9x3H JouZrGbQBZH1Rhky3PYXValrn5gn8BLTLagUbQEkMQT/YULmENf5PECLzw4H6JG3dov+ 8MFOUgwuZB0wWseXl+WoX5wUIMd0XG8ES6SNX9uT7aMUNVoBzGloV/avezn2YLwJBsLQ k5eg== X-Gm-Message-State: AOJu0Yz99AwSjWCx6X3LkJrqKS7nhlAKUZs1D1pjIKJTSlE09yi9wseE el+yET12uNZD6jhyV8D50s/Saac6h863QFfV39aclUHrys6WBIglV1oYFycBcsOzdIWeRNZsP9x Q X-Gm-Gg: ASbGncvNNTBeGPqAZ4nP+OgXh8TYjaYxRtxydEjsXKS4/qfejh2QJhaKicaNKEVBF2L tLI6XeeY5CtqNsN8rVZKQSdZVOC/E4d1+u1ClhYDVtNYctwt4PlPNswlM4+qEJ+y45z5lzxqlL3 PUZlDSZ9Mtk6efoOHfbGBiqb3gxrKlzSyYv+/rl0QUzke5roCAEls/TxebUWRXydmWCYP7On50S LF/ucQ1sMUq1DC9/JQV9jBNmYGeZC3YsoCWxpeLXDH0/omw6hQHWXqVB5+WI8oafyJFN+6aGXer DFFKTSLxNIGjwMgN98W6t+rFDWiLj40f39C5QzIB6DHsTk6aV016lRiCoVVlhgukbKAt X-Google-Smtp-Source: AGHT+IEPW5ZNFswo8NtFAj8noVr28cOLat8ILH2aVrK3dQI73XXvBVIfJ/Mp50RytlJ1ZrMPul+HvQ== X-Received: by 2002:a17:90b:3647:b0:2ee:74a1:fba2 with SMTP id 98e67ed59e1d1-2fa241776aemr28095033a91.20.1739295459682; Tue, 11 Feb 2025 09:37:39 -0800 (PST) Received: from hermes.local (204-195-96-226.wavecable.com. [204.195.96.226]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2fa4656bd27sm7131811a91.42.2025.02.11.09.37.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Feb 2025 09:37:39 -0800 (PST) From: Stephen Hemminger To: dev@dpdk.org Cc: Stephen Hemminger , Bruce Richardson Subject: [PATCH v5 08/11] test: remove unneeded memset Date: Tue, 11 Feb 2025 09:35:28 -0800 Message-ID: <20250211173720.1188517-9-stephen@networkplumber.org> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250211173720.1188517-1-stephen@networkplumber.org> References: <20241114011129.451243-1-stephen@networkplumber.org> <20250211173720.1188517-1-stephen@networkplumber.org> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Since tmp is not used later in the function, this memset is unnecessary. Even though this is harmless, it causes tools that look for security issues around memset to flag this a bug. Signed-off-by: Stephen Hemminger Acked-by: Bruce Richardson Signed-off-by: Chengwen Feng --- app/test/test_cmdline_cirbuf.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/app/test/test_cmdline_cirbuf.c b/app/test/test_cmdline_cirbuf.c index 8ac326cb02..1be357abf6 100644 --- a/app/test/test_cmdline_cirbuf.c +++ b/app/test/test_cmdline_cirbuf.c @@ -281,8 +281,6 @@ test_cirbuf_string_add_del_reverse(void) printf("Error: buffer should have been empty!\n"); return -1; } - /* clear tmp buffer */ - memset(tmp, 0, sizeof(tmp)); /* * reinitialize circular buffer From patchwork Tue Feb 11 17:35:29 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stephen Hemminger X-Patchwork-Id: 151364 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: 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 195C7461F9; Tue, 11 Feb 2025 18:38:30 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id DB47A40E3B; Tue, 11 Feb 2025 18:37:46 +0100 (CET) Received: from mail-pj1-f42.google.com (mail-pj1-f42.google.com [209.85.216.42]) by mails.dpdk.org (Postfix) with ESMTP id 662C740E03 for ; Tue, 11 Feb 2025 18:37:41 +0100 (CET) Received: by mail-pj1-f42.google.com with SMTP id 98e67ed59e1d1-2fa1a3c88c5so7687586a91.3 for ; Tue, 11 Feb 2025 09:37:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=networkplumber-org.20230601.gappssmtp.com; s=20230601; t=1739295460; x=1739900260; darn=dpdk.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=BWlABOBDjT+D93lC4xk3UAjMk4KNQQKjBPILflrvYnM=; b=IGVH0az+NVf7f77ALcAcbDFElPZPgUxx7CS4lty/Frv0aW1O2Fmu+3NuG+A/oP2iLm vx107WIJ25GoG0V+qS+0vrBnIaG+AV3WPqpKjEgqDIlBfqj96lxliUV9NX7i83VDz4Lw 1iFmrSoXvH6nzqWjEKJMQZIPuX1WSqWkmTLYt+g62N157auQNCQWWJJvY5hqMpp1maUR G/ytfqq9zAzCHgk++uY3RV2m7gwaB7Hta1OEi7eX5XG0+wfkXfzprA2NjQEAAAJMzuiF dh6BQvUksdqYoydCtMnELa34F8MjF0uC41ZYlckBoKfBF+87W9hRQzYh5PzOqPsiGjNi gaRQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739295460; x=1739900260; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=BWlABOBDjT+D93lC4xk3UAjMk4KNQQKjBPILflrvYnM=; b=SWopIK9kNOraJlt6q9hvgnpq87gNGimfvf0Vqc784LI/hsaUTbteDApiqsvI+OHytb 99xhbR0ZM1g0LBK3EF7zxk2yrK8bwTR1khdw7J9vhwaCKDRs4SYMNGCPqqtJSrTAFn3u DcLlJKsczT4FsxmSuZU73pWYLIfstW3r846q+9E3wULRbezVCZMaU2fynyVv5HGGwEQT maHgk3iAlw9r936evL3F3D0VFmq5AS+9VT9pLPJGjyvOVdrqppp6WVjv4e1x/7v2/tcV 6FOeM1dD/EKIIlKFI9QgOiyk4DzxgvGKXLVYOmPkwGYDbtwNgVLCcxwU27mmTQQLaTfJ L9jA== X-Gm-Message-State: AOJu0Yxz0HU2MWpc+MUwL61LsP0LKihI8SRXqI5In9gBohe6yBGMQzuE 4LaHzfKCUGeSI/+QEYv4MKrZEf0c5Jht0aq3Ew4fOyEb49SwAhW37gn4a2dcXUkDRlAYeNeEOop j X-Gm-Gg: ASbGncvWv48hqudC0flgdWo05guiO/BVtD95pKUsMkoVxj+VWYDl+8OSj3eETIi6ksP gtYdMGLirJjdq3ALyC6LK1KCBLoQLB8T3qtdCP7O3tweLpY5JtfSFoAM5maUKRkDRbwofdsmOew CLlHdemCA6gCMn6vP/azI25Dq2Ct0MHYTFkNk9MCG14P7MM2renutXW/kHx4AJ89b6jhFCtyMaq iSGZUGGcoIXzONM1bcZzTqJyudA3/56iwjaaeQk+6/1a0U5/VXulJro0BLfuQBtxPLThet97Lfy ilgRfqqxLmbwrg0t9p456a4ygHk29yFHyV/ejHOXUp2/dYHM9bDIUXs5S+bY9Z16nfA3 X-Google-Smtp-Source: AGHT+IE3zjd0mPBMInZ5274lcxBI11igQClj67OyA+4KaeYrF/PCUT88lcvZRY0pksURTvi3k0syjg== X-Received: by 2002:a17:90b:368c:b0:2ee:bc7b:9237 with SMTP id 98e67ed59e1d1-2fa9ee192c9mr6091748a91.27.1739295460615; Tue, 11 Feb 2025 09:37:40 -0800 (PST) Received: from hermes.local (204-195-96-226.wavecable.com. [204.195.96.226]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2fa4656bd27sm7131811a91.42.2025.02.11.09.37.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Feb 2025 09:37:40 -0800 (PST) From: Stephen Hemminger To: dev@dpdk.org Cc: Stephen Hemminger , stable@dpdk.org, Christian Koue Muf , Serhii Iliushyk , Ferruh Yigit Subject: [PATCH v5 09/11] net/ntnic: check result of malloc Date: Tue, 11 Feb 2025 09:35:29 -0800 Message-ID: <20250211173720.1188517-10-stephen@networkplumber.org> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250211173720.1188517-1-stephen@networkplumber.org> References: <20241114011129.451243-1-stephen@networkplumber.org> <20250211173720.1188517-1-stephen@networkplumber.org> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Need to check the result of malloc() before calling memset. This is only place in this driver that forgot, other code does check. Fixes: 0d9bca480e26 ("net/ntnic: add FPGA modules for initialization") cc: stable@dpdk.org Signed-off-by: Stephen Hemminger --- drivers/net/ntnic/nthw/nthw_rac.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/net/ntnic/nthw/nthw_rac.c b/drivers/net/ntnic/nthw/nthw_rac.c index ca6aba6db2..f275e64da3 100644 --- a/drivers/net/ntnic/nthw/nthw_rac.c +++ b/drivers/net/ntnic/nthw/nthw_rac.c @@ -31,7 +31,9 @@ nthw_rac_t *nthw_rac_new(void) { nthw_rac_t *p = malloc(sizeof(nthw_rac_t)); - memset(p, 0, sizeof(nthw_rac_t)); + + if (p) + memset(p, 0, sizeof(nthw_rac_t)); return p; } From patchwork Tue Feb 11 17:35:30 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stephen Hemminger X-Patchwork-Id: 151365 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: 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 74A9D461F9; Tue, 11 Feb 2025 18:38:35 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id F31F640E40; Tue, 11 Feb 2025 18:37:47 +0100 (CET) Received: from mail-pj1-f48.google.com (mail-pj1-f48.google.com [209.85.216.48]) by mails.dpdk.org (Postfix) with ESMTP id 7E50D40DDA for ; Tue, 11 Feb 2025 18:37:42 +0100 (CET) Received: by mail-pj1-f48.google.com with SMTP id 98e67ed59e1d1-2f9bac7699aso8658216a91.1 for ; Tue, 11 Feb 2025 09:37:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=networkplumber-org.20230601.gappssmtp.com; s=20230601; t=1739295462; x=1739900262; darn=dpdk.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Im45Wreomm3zRQ/zODQEb4h64DQAwYWmd5YzkwMj5Sc=; b=aUTVCKaJw8hHz19Gjo6XIsaYXBOKVA/ZNqwaJkXCth36wVvQyuy3mv36EKJcANMn8q PZJinlFpgCoadBGLDAQjPT5Lj6bCHQLg+nOw/7O0tYvDAW2ZUf//nruNb+CgJ+o+APcE hM+/3x/5wqX/oEn30AwJ3rgpaP9mKsjrosnnTNKyY2v8TaIhyky+MMgRv9pnPGqdgtE4 rRsb3WznIs+PcKh/uSb9MLZHPBv0okGrw9qznuAhCgXpN23fzThKnZTVLMBnGPgO57bZ sEZRuIkQ3cFOmPgFI5NIsnmH4l0pOEt+3gRjgJo6HQwhrfiuTX6FzNpcm/6v5yjDWQDm XC1w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739295462; x=1739900262; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Im45Wreomm3zRQ/zODQEb4h64DQAwYWmd5YzkwMj5Sc=; b=h+UyDMCyebC/rD4XeuRNeIT0WNiCQLKAotBWosefs/R/CSWPu05tZydi/8RFjoNgZC mBLWGzt94FBDwJZilAiEJqoXpWz2MVG7/tP3YV3DHumgvCokQm0PsVdDc/H4LsBF/Bvi nLEc6/760nJ/rfLI/DoWqYDrPpUH6MNB4CJBLckARR6lAU9epU/cBLh2KTprWIVxlY3T H2uKfOX572xHP6xNqXVDIFylyIN6ZRP2jQOTRxMztY9yxPz10S99DoPT/MgCT5IO3So/ twl5IX06gs+MlrhOpybXXCPzyovYPo6Mzv9W55JoavW/59Y9UZgZam9T+t1umAX9kTqP dFbA== X-Gm-Message-State: AOJu0Yx3vW9kmEjCwixTVD0X8HmOywHK9ztpJjF/4ye67aj2yYrxesGE G4GR+bEwFRdJeKfINdwL0VvYIft4/8sg91ZuU/f6qiljQ4JGnVPTfTLtpq9EgzFG1DD/yMzqE88 j X-Gm-Gg: ASbGnctXwTN4H97EDYGWSbTXIvFFgHT5ycZcBKb4z4BNpm6bODgJ4K/pFCdEinPXOx3 yEV1MYNu+J6mQJB5lH3snS1Gv6yEBLwPY7j7pPj0pLrYHAyQQXdNBfhHiUXIGc2XgU1VXcsI9b/ bzMa+5b/hEl/6Na/gvoTVgKL/rhYkhRY4BjkxgsPtDdh3X+uCCycsyzsqcEzPQ58zR4BDeiKxop DtcdwqCEgsmM6FIi4XD9igx8SucJcA6cek3eO0Zqkj7sl0klVv9lGOQ9MfIxViLQu/L9SKa24QX rROyES5j+UoC+jUbMynPVPNatpFcMUqva/q2cuyYjiKLXKLn2W4nroDJcbdMrDsgkitN X-Google-Smtp-Source: AGHT+IFRpnAzg1j0mtKaAxI5ZJw9BBlY4aBuHFicq+IpGjlIoU2o+pG5zV0mgTLxTIFqEmdhhIsd7w== X-Received: by 2002:a17:90b:1f81:b0:2ee:d824:b559 with SMTP id 98e67ed59e1d1-2fa9ee19228mr6369014a91.28.1739295461618; Tue, 11 Feb 2025 09:37:41 -0800 (PST) Received: from hermes.local (204-195-96-226.wavecable.com. [204.195.96.226]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2fa4656bd27sm7131811a91.42.2025.02.11.09.37.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Feb 2025 09:37:41 -0800 (PST) From: Stephen Hemminger To: dev@dpdk.org Cc: Stephen Hemminger , Christian Koue Muf , Serhii Iliushyk Subject: [PATCH v5 10/11] net/ntnic: remove unnecessary memset Date: Tue, 11 Feb 2025 09:35:30 -0800 Message-ID: <20250211173720.1188517-11-stephen@networkplumber.org> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250211173720.1188517-1-stephen@networkplumber.org> References: <20241114011129.451243-1-stephen@networkplumber.org> <20250211173720.1188517-1-stephen@networkplumber.org> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Calling memset before free() has no effect and will be flagged by security parsing tools as a potential bug. None of these data structures have sensitive information. Signed-off-by: Stephen Hemminger --- drivers/net/ntnic/nthw/core/nthw_hif.c | 5 +---- drivers/net/ntnic/nthw/core/nthw_iic.c | 5 +---- drivers/net/ntnic/nthw/core/nthw_pcie3.c | 5 +---- drivers/net/ntnic/nthw/core/nthw_rpf.c | 5 +---- drivers/net/ntnic/nthw/core/nthw_sdc.c | 5 +---- drivers/net/ntnic/nthw/core/nthw_si5340.c | 5 +---- drivers/net/ntnic/nthw/flow_filter/flow_nthw_cat.c | 5 +---- drivers/net/ntnic/nthw/flow_filter/flow_nthw_csu.c | 5 +---- drivers/net/ntnic/nthw/flow_filter/flow_nthw_flm.c | 5 +---- drivers/net/ntnic/nthw/flow_filter/flow_nthw_hfu.c | 5 +---- drivers/net/ntnic/nthw/flow_filter/flow_nthw_hsh.c | 5 +---- drivers/net/ntnic/nthw/flow_filter/flow_nthw_info.c | 5 +---- drivers/net/ntnic/nthw/flow_filter/flow_nthw_km.c | 5 +---- drivers/net/ntnic/nthw/flow_filter/flow_nthw_pdb.c | 5 +---- drivers/net/ntnic/nthw/flow_filter/flow_nthw_qsl.c | 5 +---- drivers/net/ntnic/nthw/flow_filter/flow_nthw_rpp_lr.c | 5 +---- drivers/net/ntnic/nthw/flow_filter/flow_nthw_slc_lr.c | 5 +---- drivers/net/ntnic/nthw/flow_filter/flow_nthw_tx_cpy.c | 1 - drivers/net/ntnic/nthw/flow_filter/flow_nthw_tx_ins.c | 5 +---- drivers/net/ntnic/nthw/flow_filter/flow_nthw_tx_rpl.c | 5 +---- drivers/net/ntnic/nthw/model/nthw_fpga_model.c | 1 - 21 files changed, 19 insertions(+), 78 deletions(-) diff --git a/drivers/net/ntnic/nthw/core/nthw_hif.c b/drivers/net/ntnic/nthw/core/nthw_hif.c index 9f699e4f94..d702257d76 100644 --- a/drivers/net/ntnic/nthw/core/nthw_hif.c +++ b/drivers/net/ntnic/nthw/core/nthw_hif.c @@ -23,10 +23,7 @@ nthw_hif_t *nthw_hif_new(void) void nthw_hif_delete(nthw_hif_t *p) { - if (p) { - memset(p, 0, sizeof(nthw_hif_t)); - free(p); - } + free(p); } int nthw_hif_init(nthw_hif_t *p, nthw_fpga_t *p_fpga, int n_instance) diff --git a/drivers/net/ntnic/nthw/core/nthw_iic.c b/drivers/net/ntnic/nthw/core/nthw_iic.c index 269754c24a..a98ec659c4 100644 --- a/drivers/net/ntnic/nthw/core/nthw_iic.c +++ b/drivers/net/ntnic/nthw/core/nthw_iic.c @@ -253,10 +253,7 @@ int nthw_iic_init(nthw_iic_t *p, nthw_fpga_t *p_fpga, int n_iic_instance, void nthw_iic_delete(nthw_iic_t *p) { - if (p) { - memset(p, 0, sizeof(nthw_iic_t)); - free(p); - } + free(p); } int nthw_iic_set_retry_params(nthw_iic_t *p, const int n_poll_delay, const int n_bus_ready_retry, diff --git a/drivers/net/ntnic/nthw/core/nthw_pcie3.c b/drivers/net/ntnic/nthw/core/nthw_pcie3.c index 5997ebb419..a5833e166c 100644 --- a/drivers/net/ntnic/nthw/core/nthw_pcie3.c +++ b/drivers/net/ntnic/nthw/core/nthw_pcie3.c @@ -24,10 +24,7 @@ nthw_pcie3_t *nthw_pcie3_new(void) void nthw_pcie3_delete(nthw_pcie3_t *p) { - if (p) { - memset(p, 0, sizeof(nthw_pcie3_t)); - free(p); - } + free(p); } int nthw_pcie3_init(nthw_pcie3_t *p, nthw_fpga_t *p_fpga, int n_instance) diff --git a/drivers/net/ntnic/nthw/core/nthw_rpf.c b/drivers/net/ntnic/nthw/core/nthw_rpf.c index 1ed4d7b4e0..d5c19e312b 100644 --- a/drivers/net/ntnic/nthw/core/nthw_rpf.c +++ b/drivers/net/ntnic/nthw/core/nthw_rpf.c @@ -22,10 +22,7 @@ nthw_rpf_t *nthw_rpf_new(void) void nthw_rpf_delete(nthw_rpf_t *p) { - if (p) { - memset(p, 0, sizeof(nthw_rpf_t)); - free(p); - } + free(p); } int nthw_rpf_init(nthw_rpf_t *p, nthw_fpga_t *p_fpga, int n_instance) diff --git a/drivers/net/ntnic/nthw/core/nthw_sdc.c b/drivers/net/ntnic/nthw/core/nthw_sdc.c index fc73e6957c..e32d87b967 100644 --- a/drivers/net/ntnic/nthw/core/nthw_sdc.c +++ b/drivers/net/ntnic/nthw/core/nthw_sdc.c @@ -22,10 +22,7 @@ nthw_sdc_t *nthw_sdc_new(void) void nthw_sdc_delete(nthw_sdc_t *p) { - if (p) { - memset(p, 0, sizeof(nthw_sdc_t)); - free(p); - } + free(p); } int nthw_sdc_init(nthw_sdc_t *p, nthw_fpga_t *p_fpga, int n_instance) diff --git a/drivers/net/ntnic/nthw/core/nthw_si5340.c b/drivers/net/ntnic/nthw/core/nthw_si5340.c index 05cadc0bf4..ceaa58e0f7 100644 --- a/drivers/net/ntnic/nthw/core/nthw_si5340.c +++ b/drivers/net/ntnic/nthw/core/nthw_si5340.c @@ -44,10 +44,7 @@ int nthw_si5340_init(nthw_si5340_t *p, nthw_iic_t *p_nthw_iic, uint8_t n_iic_add void nthw_si5340_delete(nthw_si5340_t *p) { - if (p) { - memset(p, 0, sizeof(nthw_si5340_t)); - free(p); - } + free(p); } /* diff --git a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_cat.c b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_cat.c index d3213593e1..ff316065f3 100644 --- a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_cat.c +++ b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_cat.c @@ -25,10 +25,7 @@ struct cat_nthw *cat_nthw_new(void) void cat_nthw_delete(struct cat_nthw *p) { - if (p) { - (void)memset(p, 0, sizeof(*p)); - free(p); - } + free(p); } void cat_nthw_set_debug_mode(struct cat_nthw *p, unsigned int n_debug_mode) diff --git a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_csu.c b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_csu.c index c1b73179a8..ddb11edf7c 100644 --- a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_csu.c +++ b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_csu.c @@ -29,10 +29,7 @@ struct csu_nthw *csu_nthw_new(void) void csu_nthw_delete(struct csu_nthw *p) { - if (p) { - (void)memset(p, 0, sizeof(*p)); - free(p); - } + free(p); } int csu_nthw_init(struct csu_nthw *p, nthw_fpga_t *p_fpga, int n_instance) diff --git a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_flm.c b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_flm.c index 8855978349..0b2f97ff01 100644 --- a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_flm.c +++ b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_flm.c @@ -26,10 +26,7 @@ struct flm_nthw *flm_nthw_new(void) void flm_nthw_delete(struct flm_nthw *p) { - if (p) { - (void)memset(p, 0, sizeof(*p)); - free(p); - } + free(p); } void flm_nthw_set_debug_mode(struct flm_nthw *p, unsigned int n_debug_mode) diff --git a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_hfu.c b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_hfu.c index 4a8b17101d..3170c363dc 100644 --- a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_hfu.c +++ b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_hfu.c @@ -29,10 +29,7 @@ struct hfu_nthw *hfu_nthw_new(void) void hfu_nthw_delete(struct hfu_nthw *p) { - if (p) { - (void)memset(p, 0, sizeof(*p)); - free(p); - } + free(p); } int hfu_nthw_init(struct hfu_nthw *p, nthw_fpga_t *p_fpga, int n_instance) diff --git a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_hsh.c b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_hsh.c index 80ead2729a..17381ddea6 100644 --- a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_hsh.c +++ b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_hsh.c @@ -30,10 +30,7 @@ struct hsh_nthw *hsh_nthw_new(void) void hsh_nthw_delete(struct hsh_nthw *p) { - if (p) { - (void)memset(p, 0, sizeof(*p)); - free(p); - } + free(p); } int hsh_nthw_init(struct hsh_nthw *p, nthw_fpga_t *p_fpga, int n_instance) diff --git a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_info.c b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_info.c index 8e0b24dd9a..7a17d36f6d 100644 --- a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_info.c +++ b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_info.c @@ -30,10 +30,7 @@ struct info_nthw *info_nthw_new(void) void info_nthw_delete(struct info_nthw *p) { - if (p) { - (void)memset(p, 0, sizeof(*p)); - free(p); - } + free(p); } int info_nthw_init(struct info_nthw *p, nthw_fpga_t *p_fpga, int n_instance) diff --git a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_km.c b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_km.c index edc8f58759..88f3900caf 100644 --- a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_km.c +++ b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_km.c @@ -39,10 +39,7 @@ struct km_nthw *km_nthw_new(void) void km_nthw_delete(struct km_nthw *p) { - if (p) { - (void)memset(p, 0, sizeof(*p)); - free(p); - } + free(p); } int km_nthw_init(struct km_nthw *p, nthw_fpga_t *p_fpga, int n_instance) diff --git a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_pdb.c b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_pdb.c index 4a9713965b..b0b3f41027 100644 --- a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_pdb.c +++ b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_pdb.c @@ -30,10 +30,7 @@ struct pdb_nthw *pdb_nthw_new(void) void pdb_nthw_delete(struct pdb_nthw *p) { - if (p) { - (void)memset(p, 0, sizeof(*p)); - free(p); - } + free(p); } int pdb_nthw_init(struct pdb_nthw *p, nthw_fpga_t *p_fpga, int n_instance) diff --git a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_qsl.c b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_qsl.c index c887fe25e2..9b1dddb3a8 100644 --- a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_qsl.c +++ b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_qsl.c @@ -30,10 +30,7 @@ struct qsl_nthw *qsl_nthw_new(void) void qsl_nthw_delete(struct qsl_nthw *p) { - if (p) { - (void)memset(p, 0, sizeof(*p)); - free(p); - } + free(p); } int qsl_nthw_init(struct qsl_nthw *p, nthw_fpga_t *p_fpga, int n_instance) diff --git a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_rpp_lr.c b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_rpp_lr.c index e69a1ca823..3b7380b52f 100644 --- a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_rpp_lr.c +++ b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_rpp_lr.c @@ -29,10 +29,7 @@ struct rpp_lr_nthw *rpp_lr_nthw_new(void) void rpp_lr_nthw_delete(struct rpp_lr_nthw *p) { - if (p) { - (void)memset(p, 0, sizeof(*p)); - free(p); - } + free(p); } int rpp_lr_nthw_init(struct rpp_lr_nthw *p, nthw_fpga_t *p_fpga, int n_instance) diff --git a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_slc_lr.c b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_slc_lr.c index e062a700eb..9083455051 100644 --- a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_slc_lr.c +++ b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_slc_lr.c @@ -30,10 +30,7 @@ struct slc_lr_nthw *slc_lr_nthw_new(void) void slc_lr_nthw_delete(struct slc_lr_nthw *p) { - if (p) { - (void)memset(p, 0, sizeof(*p)); - free(p); - } + free(p); } int slc_lr_nthw_init(struct slc_lr_nthw *p, nthw_fpga_t *p_fpga, int n_instance) diff --git a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_tx_cpy.c b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_tx_cpy.c index ee85a1c61b..c0e26f9186 100644 --- a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_tx_cpy.c +++ b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_tx_cpy.c @@ -31,7 +31,6 @@ void tx_cpy_nthw_delete(struct tx_cpy_nthw *p) { if (p) { free(p->m_writers); - (void)memset(p, 0, sizeof(*p)); free(p); } } diff --git a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_tx_ins.c b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_tx_ins.c index 47af44945f..40581c51ca 100644 --- a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_tx_ins.c +++ b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_tx_ins.c @@ -29,10 +29,7 @@ struct tx_ins_nthw *tx_ins_nthw_new(void) void tx_ins_nthw_delete(struct tx_ins_nthw *p) { - if (p) { - (void)memset(p, 0, sizeof(*p)); - free(p); - } + free(p); } int tx_ins_nthw_init(struct tx_ins_nthw *p, nthw_fpga_t *p_fpga, int n_instance) diff --git a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_tx_rpl.c b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_tx_rpl.c index c40857db0f..3786089326 100644 --- a/drivers/net/ntnic/nthw/flow_filter/flow_nthw_tx_rpl.c +++ b/drivers/net/ntnic/nthw/flow_filter/flow_nthw_tx_rpl.c @@ -29,10 +29,7 @@ struct tx_rpl_nthw *tx_rpl_nthw_new(void) void tx_rpl_nthw_delete(struct tx_rpl_nthw *p) { - if (p) { - (void)memset(p, 0, sizeof(*p)); - free(p); - } + free(p); } int tx_rpl_nthw_init(struct tx_rpl_nthw *p, nthw_fpga_t *p_fpga, int n_instance) diff --git a/drivers/net/ntnic/nthw/model/nthw_fpga_model.c b/drivers/net/ntnic/nthw/model/nthw_fpga_model.c index 9eaaeb550d..0fb525d34f 100644 --- a/drivers/net/ntnic/nthw/model/nthw_fpga_model.c +++ b/drivers/net/ntnic/nthw/model/nthw_fpga_model.c @@ -183,7 +183,6 @@ nthw_fpga_mgr_t *nthw_fpga_mgr_new(void) void nthw_fpga_mgr_delete(nthw_fpga_mgr_t *p) { - memset(p, 0, sizeof(nthw_fpga_mgr_t)); free(p); } From patchwork Tue Feb 11 17:35:31 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Stephen Hemminger X-Patchwork-Id: 151366 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: 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 12FA9461F9; Tue, 11 Feb 2025 18:38:41 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 2069340E48; Tue, 11 Feb 2025 18:37:49 +0100 (CET) Received: from mail-pj1-f51.google.com (mail-pj1-f51.google.com [209.85.216.51]) by mails.dpdk.org (Postfix) with ESMTP id 3C04540DDA for ; Tue, 11 Feb 2025 18:37:43 +0100 (CET) Received: by mail-pj1-f51.google.com with SMTP id 98e67ed59e1d1-2fa40c0bab2so6718974a91.0 for ; Tue, 11 Feb 2025 09:37:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=networkplumber-org.20230601.gappssmtp.com; s=20230601; t=1739295462; x=1739900262; darn=dpdk.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=rwLEVOWB8i1GvOPUdpOEN/6mJRr6S6t2BqbR1wTmV6U=; b=PtoGnSn4QEHTmzoqhzBh0IzBqRvtkm7HeNl4bjVcR6qdp674NxLFxgGfRKga7xz2QY l4J6ROdoePG/jdCm0YWy1sQNhVgyRri/X4U/5WCS7lq4gRCqL7NzT/7JGc9d6ISTBB7M YhxSxcYX01SDPVFnXepDTg/Wv6mZUZxvZyO0hKSTeAWy0ZbJnsVRd126YotGhIVRnRjz 8fI6/m5rAmY6e6KCMiYg4iyEJeNpdRkMkxZdtvA37P65a3WenfN/zhqcUm1Sbv5p/ocS jvdpV1cqAwW8Er6c2TkdThY2c+RaM4teCnstuJCycAwv3jx/49u+R1qy1uns3WErfXHf KEEA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739295462; x=1739900262; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=rwLEVOWB8i1GvOPUdpOEN/6mJRr6S6t2BqbR1wTmV6U=; b=Ynx573dGH6YNxgck2Hh8ASUTQw3zeENGLLbUlvZtJLsqMz9DkxRIoh21WwBrKNKeNn 08agxd4r0zhMmuZI4fmeFvA/AokZcZ1QaUbCls/mAYmcEiCz7KeiPttBxY42wMsEoOv6 knDFH9zHhCcwYFjTfnLBEwdNM/SRcJdjv1To9R4qV1djqhAXUPwGae+p9RR3G5HbeoKQ mosynhplpWXM1aRPHbpYSw+XOChd3DWnDVg7PHSWCBa8PZ3uj/oc6BIP8RqBhjnS5Y40 lOLaEaj6ekK4nLXD3G3/vKEsMO4uptpHSrpG6oJKzAQBXatSouz9bFvwqHogKCzDRJvR HVUQ== X-Gm-Message-State: AOJu0YzaupljR3VmSSW0ra3/lEUPgz95CL3ZDA6liePleIS7aBwcwZ1L HIPGRwp+odc5roRZbdyd9LbrqM9ji8YHJPjbDlqSZ0BakjmY6Jsds1jTIfSD0RqeLeF74sngZBq q X-Gm-Gg: ASbGncskEV1uycFvJo998xPzloRCEzAjxS3JagjYajFHkkoxF/UD5jNFtJqJL3RjZqo Y+2zf+GQOyNXzIrTMVq4vVCSKCCLBY0IM5fG9tBwSjX5dWdTghHeEnZETs9Gp6T3FP06hjdJiVf ffyoPdeGz/0NKHJGWLBx4Fbb9p8yzCxCwgipAZKnK/Cs77gw+ywr+KVj2guhpReWxHEkkZPSNos 3b6TiDqzk3UTa2+S3fzDU22/QbzvRySTN+5T+Q2j9pUHEjV0/muK0/okvqxjkctZ1rAuB/G1p2p NMfs8TN9w2nSAuyS2NvMD9w1JKiD+lirD0Vg4f1pI7hgFrcqhvnh/w6h8fgYfKBWiNqR X-Google-Smtp-Source: AGHT+IGvfgmoOXFq2xFm79zO4+bimGbJWHReeM1yoriLsjbb40laon0M/lHXBzRtFMv1gVU8OCH4uA== X-Received: by 2002:a17:90b:4d04:b0:2ee:fdf3:38ea with SMTP id 98e67ed59e1d1-2fb7e8badb9mr748142a91.23.1739295462434; Tue, 11 Feb 2025 09:37:42 -0800 (PST) Received: from hermes.local (204-195-96-226.wavecable.com. [204.195.96.226]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2fa4656bd27sm7131811a91.42.2025.02.11.09.37.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Feb 2025 09:37:42 -0800 (PST) From: Stephen Hemminger To: dev@dpdk.org Cc: Stephen Hemminger Subject: [PATCH v5 11/11] devtools/cocci: add script to find problematic memset Date: Tue, 11 Feb 2025 09:35:31 -0800 Message-ID: <20250211173720.1188517-12-stephen@networkplumber.org> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20250211173720.1188517-1-stephen@networkplumber.org> References: <20241114011129.451243-1-stephen@networkplumber.org> <20250211173720.1188517-1-stephen@networkplumber.org> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Script that converts memset before free into rte_memset_sensitive and memset before rte_free into rte_free_sensitive Signed-off-by: Stephen Hemminger --- devtools/cocci/memset_free.cocci | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 devtools/cocci/memset_free.cocci diff --git a/devtools/cocci/memset_free.cocci b/devtools/cocci/memset_free.cocci new file mode 100644 index 0000000000..834c5dbf2b --- /dev/null +++ b/devtools/cocci/memset_free.cocci @@ -0,0 +1,20 @@ +// Replace calls to memset before free +@@ +expression E, size; +@@ +( +- memset(E, 0, size); +- free(E); ++ rte_memset_sensitive(E, 0, size); ++ free(E); +) + +// replace to memset before rte_free +@@ +expression E, size; +@@ +( +- memset(E, 0, size); +- rte_free(E); ++ rte_free_sensitive(E); +)