From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.9 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 482BACA90AF for ; Wed, 13 May 2020 09:51:15 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 1D00220769 for ; Wed, 13 May 2020 09:51:15 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1589363475; bh=IflCjPG2xi5TTNJDFZpm013QD6WriFjIurebSx5OlPg=; h=From:To:Cc:Subject:Date:In-Reply-To:References:List-ID:From; b=EWO2qmD8M6yorblzfoU0gy7P3Ym68lp1qDnU2BmrW+yKZeBOo7Ea2A/UJGqoO/ToG x1x7H/ecvamw0F9VhqCAeDK3FJO/wE1HvoOZQ/TZ03xILcDyCi5n1ZS4fxzxqkB3MB aPfqmw3+j/ZVDhUggzT8WmUYMV5Sqj79HvLUhKDg= Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728731AbgEMJvO (ORCPT ); Wed, 13 May 2020 05:51:14 -0400 Received: from mail.kernel.org ([198.145.29.99]:51688 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387611AbgEMJvK (ORCPT ); Wed, 13 May 2020 05:51:10 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 75AFE23127; Wed, 13 May 2020 09:51:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1589363469; bh=IflCjPG2xi5TTNJDFZpm013QD6WriFjIurebSx5OlPg=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=PGR8w8gGCv/nICGbPiGmFw3O4FqYKrPBx/rCnd8g9s3T47U1U1n2u8NDxuqNM/4ye ebuIpi+Yp8PouCMMyOE2LOQxSDNYJ67Dg9Q78YWpYwn8bKFLZWJl4HXrJcJ0a8bl9/ KblESoDdDoJUyl7xf8lkW5IKp2IW4i5RDfV0Lb88= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Moshe Shemesh , Eran Ben Elisha , Saeed Mahameed Subject: [PATCH 5.4 38/90] net/mlx5: Fix command entry leak in Internal Error State Date: Wed, 13 May 2020 11:44:34 +0200 Message-Id: <20200513094412.612953424@linuxfoundation.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200513094408.810028856@linuxfoundation.org> References: <20200513094408.810028856@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Moshe Shemesh [ Upstream commit cece6f432cca9f18900463ed01b97a152a03600a ] Processing commands by cmd_work_handler() while already in Internal Error State will result in entry leak, since the handler process force completion without doorbell. Forced completion doesn't release the entry and event completion will never arrive, so entry should be released. Fixes: 73dd3a4839c1 ("net/mlx5: Avoid using pending command interface slots") Signed-off-by: Moshe Shemesh Signed-off-by: Eran Ben Elisha Signed-off-by: Saeed Mahameed Signed-off-by: Greg Kroah-Hartman --- drivers/net/ethernet/mellanox/mlx5/core/cmd.c | 4 ++++ 1 file changed, 4 insertions(+) --- a/drivers/net/ethernet/mellanox/mlx5/core/cmd.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/cmd.c @@ -922,6 +922,10 @@ static void cmd_work_handler(struct work MLX5_SET(mbox_out, ent->out, syndrome, drv_synd); mlx5_cmd_comp_handler(dev, 1UL << ent->idx, true); + /* no doorbell, no need to keep the entry */ + free_ent(cmd, ent->idx); + if (ent->callback) + free_cmd(ent); return; }