From patchwork Mon Dec 14 10:05:58 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrzej Hajda X-Patchwork-Id: 556349 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id D8CC81401DE for ; Mon, 14 Dec 2015 21:09:45 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932230AbbLNKH3 (ORCPT ); Mon, 14 Dec 2015 05:07:29 -0500 Received: from mailout1.w1.samsung.com ([210.118.77.11]:13916 "EHLO mailout1.w1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932156AbbLNKH1 (ORCPT ); Mon, 14 Dec 2015 05:07:27 -0500 Received: from eucpsbgm1.samsung.com (unknown [203.254.199.244]) by mailout1.w1.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTP id <0NZC000W7ESDWX70@mailout1.w1.samsung.com>; Mon, 14 Dec 2015 10:07:25 +0000 (GMT) X-AuditID: cbfec7f4-f79026d00000418a-10-566e94dd5fa1 Received: from eusync1.samsung.com ( [203.254.199.211]) by eucpsbgm1.samsung.com (EUCPMTA) with SMTP id 76.8A.16778.DD49E665; Mon, 14 Dec 2015 10:07:25 +0000 (GMT) Received: from AMDC1061.digital.local ([106.116.147.88]) by eusync1.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTPA id <0NZC00KMTES6MI40@eusync1.samsung.com>; Mon, 14 Dec 2015 10:07:25 +0000 (GMT) From: Andrzej Hajda To: Or Gerlitz , Jack Morgenstein Cc: Andrzej Hajda , Bartlomiej Zolnierkiewicz , Marek Szyprowski , "David S. Miller" , Eran Ben Elisha , Hadar Hen Zion , Moni Shoua , Yishai Hadas , Maor Gottlieb , netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH] net/mlx4_core: fix handling return value of mlx4_slave_convert_port Date: Mon, 14 Dec 2015 11:05:58 +0100 Message-id: <1450087564-28441-1-git-send-email-a.hajda@samsung.com> X-Mailer: git-send-email 1.9.1 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprJLMWRmVeSWpSXmKPExsVy+t/xy7p3p+SFGfS+F7G4te4cq8XGGetZ Leacb2GxWPj2D5vFufNb2SwWLO1itLi8aw6bxdojd9kt1h68xW6x4f0adotjC8Qspt86zmgx 4VIPmwOvx5aVN5k8ps/YxOrxbPphJo++LasYPT5vkgtgjeKySUnNySxLLdK3S+DKaNu5kbng IWfF37v/2BsYN3N0MXJySAiYSPT+6GeBsMUkLtxbz9bFyMUhJLCUUeLI/S4WCKeJSWLJ6kXs IFVsApoSfzffZAOxRQRCJdru/wWLMwusY5aYvJMbxBYWCJP4cGQ3E4jNIqAqcWvtNlYQm1fA WWLfildQ2+QkTh6bzDqBkXsBI8MqRtHU0uSC4qT0XEO94sTc4tK8dL3k/NxNjJAA+7KDcfEx q0OMAhyMSjy8Gctyw4RYE8uKK3MPMUpwMCuJ8CZY5YUJ8aYkVlalFuXHF5XmpBYfYpTmYFES 5527632IkEB6YklqdmpqQWoRTJaJg1OqgTH0oFrwOall1+v/ejJ3cblEOFec0Pmw7YrG6nfb r61MnjVNmq1eVYzXSN9uocTm6QdaJeLsVmq6z7hXPve166s6tS3P14Td33lA0rMpxXriFObz t+I3Opsc6094Vx7iY3DuYqyego27prxDxeG/Ahr8TFEu151vtE34mJx36fSx44VzbBSb8pVY ijMSDbWYi4oTAZ1PYKgsAgAA Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org The function can return negative values, so its result should be assigned to signed variable. The problem has been detected using proposed semantic patch scripts/coccinelle/tests/assign_signed_to_unsigned.cocci [1]. [1]: http://permalink.gmane.org/gmane.linux.kernel/2046107 Signed-off-by: Andrzej Hajda Acked-by: Or Gerlitz --- drivers/net/ethernet/mellanox/mlx4/resource_tracker.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/net/ethernet/mellanox/mlx4/resource_tracker.c b/drivers/net/ethernet/mellanox/mlx4/resource_tracker.c index da7f578..b46dbe2 100644 --- a/drivers/net/ethernet/mellanox/mlx4/resource_tracker.c +++ b/drivers/net/ethernet/mellanox/mlx4/resource_tracker.c @@ -4331,9 +4331,10 @@ int mlx4_QP_FLOW_STEERING_ATTACH_wrapper(struct mlx4_dev *dev, int slave, return -EOPNOTSUPP; ctrl = (struct mlx4_net_trans_rule_hw_ctrl *)inbox->buf; - ctrl->port = mlx4_slave_convert_port(dev, slave, ctrl->port); - if (ctrl->port <= 0) + err = mlx4_slave_convert_port(dev, slave, ctrl->port); + if (err <= 0) return -EINVAL; + ctrl->port = err; qpn = be32_to_cpu(ctrl->qpn) & 0xffffff; err = get_res(dev, slave, qpn, RES_QP, &rqp); if (err) {