From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id BB19BA00C2 for ; Tue, 8 Mar 2022 15:15:32 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id B48BD4068B; Tue, 8 Mar 2022 15:15:32 +0100 (CET) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by mails.dpdk.org (Postfix) with ESMTP id ABC45406A2 for ; Tue, 8 Mar 2022 15:15:31 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1646748931; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=dmN8iSuHsyqedFRe3PLO+/aJAkvvB9DSopYezWzNGwg=; b=gY2BbKCH8Zga0aZ9a1hVO6dM+jK2+HH6N6P3X/nY2ovvvrj8TryrgXnIV6DCWRGzF7I1mi 4SXJjV/xw4CHjtG1cWRtKLUzhT7GRdlnvTdOJ1fZuGTWe/AMIMafhcnHKGcssC21d4xkdu Dmcj3NKEp+EOnN461ef8wQbAVOYI+jA= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-168-mHcgFseJN36E3-54zZtpfQ-1; Tue, 08 Mar 2022 09:15:28 -0500 X-MC-Unique: mHcgFseJN36E3-54zZtpfQ-1 Received: from smtp.corp.redhat.com (int-mx03.intmail.prod.int.phx2.redhat.com [10.5.11.13]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 838E8824FA7; Tue, 8 Mar 2022 14:15:27 +0000 (UTC) Received: from rh.Home (unknown [10.39.195.190]) by smtp.corp.redhat.com (Postfix) with ESMTP id 9D20C84629; Tue, 8 Mar 2022 14:15:26 +0000 (UTC) From: Kevin Traynor To: Timothy McDaniel Cc: dpdk stable Subject: patch 'event/dlb2: add shift value check in sparse dequeue' has been queued to stable release 21.11.1 Date: Tue, 8 Mar 2022 14:14:18 +0000 Message-Id: <20220308141500.286915-3-ktraynor@redhat.com> In-Reply-To: <20220308141500.286915-1-ktraynor@redhat.com> References: <20220308141500.286915-1-ktraynor@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.13 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=ktraynor@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="US-ASCII" X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Hi, FYI, your patch has been queued to stable release 21.11.1 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 03/14/22. So please shout if anyone has objections. Also note that after the patch there's a diff of the upstream commit vs the patch applied to the branch. This will indicate if there was any rebasing needed to apply to the stable branch. If there were code changes for rebasing (ie: not only metadata diffs), please double check that the rebase was correctly done. Queued patches are on a temporary branch at: https://github.com/kevintraynor/dpdk-stable This queued commit can be viewed at: https://github.com/kevintraynor/dpdk-stable/commit/308a87f73bd734a08f6d5d85af800b4d81f601ee Thanks. Kevin --- >From 308a87f73bd734a08f6d5d85af800b4d81f601ee Mon Sep 17 00:00:00 2001 From: Timothy McDaniel Date: Wed, 2 Mar 2022 09:12:08 -0600 Subject: [PATCH] event/dlb2: add shift value check in sparse dequeue [ upstream commit 8eb6881c52cedf073295e3897d0d1b949802dac3 ] Add a check to ensure that all shift counts are valid. Shifting by more than 63 bits may result in undefined behavior, as noted during coverity scan. Coverity issue: 376527 Fixes: e697f35dbdd1 ("event/dlb2: update rolling mask used for dequeue") Signed-off-by: Timothy McDaniel --- drivers/event/dlb2/dlb2.c | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/drivers/event/dlb2/dlb2.c b/drivers/event/dlb2/dlb2.c index 09abdd1660..7789dd74e0 100644 --- a/drivers/event/dlb2/dlb2.c +++ b/drivers/event/dlb2/dlb2.c @@ -3917,13 +3917,15 @@ dlb2_hw_dequeue_sparse(struct dlb2_eventdev *dlb2, &qes[0], num_avail); - num += n_iter; - /* update rolling_mask for vector code support */ - m_rshift = qm_port->cq_rolling_mask >> n_iter; - m_lshift = qm_port->cq_rolling_mask << (64 - n_iter); - m2_rshift = qm_port->cq_rolling_mask_2 >> n_iter; - m2_lshift = qm_port->cq_rolling_mask_2 << + if (n_iter != 0) { + num += n_iter; + /* update rolling_mask for vector code support */ + m_rshift = qm_port->cq_rolling_mask >> n_iter; + m_lshift = qm_port->cq_rolling_mask << (64 - n_iter); + m2_rshift = qm_port->cq_rolling_mask_2 >> n_iter; + m2_lshift = qm_port->cq_rolling_mask_2 << (64 - n_iter); - qm_port->cq_rolling_mask = (m_rshift | m2_lshift); - qm_port->cq_rolling_mask_2 = (m2_rshift | m_lshift); + qm_port->cq_rolling_mask = (m_rshift | m2_lshift); + qm_port->cq_rolling_mask_2 = (m2_rshift | m_lshift); + } } else { /* !use_scalar */ num_avail = dlb2_recv_qe_sparse_vec(qm_port, -- 2.34.1 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2022-03-08 13:55:28.571360822 +0000 +++ 0003-event-dlb2-add-shift-value-check-in-sparse-dequeue.patch 2022-03-08 13:55:28.386314860 +0000 @@ -1 +1 @@ -From 8eb6881c52cedf073295e3897d0d1b949802dac3 Mon Sep 17 00:00:00 2001 +From 308a87f73bd734a08f6d5d85af800b4d81f601ee Mon Sep 17 00:00:00 2001 @@ -5,0 +6,2 @@ +[ upstream commit 8eb6881c52cedf073295e3897d0d1b949802dac3 ] + @@ -12 +13,0 @@ -Cc: stable@dpdk.org