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=-2.2 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_1 autolearn=no 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 5C6C2CA9EC0 for ; Tue, 29 Oct 2019 03:07:41 +0000 (UTC) Received: from dpdk.org (dpdk.org [92.243.14.124]) by mail.kernel.org (Postfix) with ESMTP id 1305D20862 for ; Tue, 29 Oct 2019 03:07:40 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 1305D20862 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=intel.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=dev-bounces@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 091B11BEDB; Tue, 29 Oct 2019 04:07:40 +0100 (CET) Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by dpdk.org (Postfix) with ESMTP id 820211BEDA; Tue, 29 Oct 2019 04:07:38 +0100 (CET) X-Amp-Result: UNKNOWN X-Amp-Original-Verdict: FILE UNKNOWN X-Amp-File-Uploaded: False Received: from orsmga008.jf.intel.com ([10.7.209.65]) by orsmga104.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 28 Oct 2019 20:07:37 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.68,242,1569308400"; d="scan'208";a="193468431" Received: from yexl-server.sh.intel.com (HELO localhost) ([10.67.117.17]) by orsmga008.jf.intel.com with ESMTP; 28 Oct 2019 20:07:36 -0700 Date: Tue, 29 Oct 2019 11:04:06 +0800 From: Ye Xiaolong To: "Yang, Qiming" Cc: "Jiang, JunyuX" , "dev@dpdk.org" , Chas Williams , "stable@dpdk.org" Message-ID: <20191029030406.GC12923@intel.com> References: <20191024205551.26273-1-junyux.jiang@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.9.4 (2018-02-28) Subject: Re: [dpdk-dev] [PATCH] net/bonding: fix segfault using invalid port X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On 10/28, Yang, Qiming wrote: >Hi, Junyu > >> + dev = &rte_eth_devices[port]; >> + internals = dev->data->dev_private; >Have you build success? I think we need to add (struct bond_dev_private *) for force transfer dev_private is a void *, an explicit type conversion is not needed here. Thanks, Xiaolong > >> >> if (check_for_bonded_ethdev(dev) != 0) >> return -1; >> @@ -1689,9 +1696,14 @@ int >> rte_eth_bond_8023ad_dedicated_queues_disable(uint16_t port) { >> int retval = 0; >> - struct rte_eth_dev *dev = &rte_eth_devices[port]; >> - struct bond_dev_private *internals = (struct bond_dev_private *) >> - dev->data->dev_private; >> + struct rte_eth_dev *dev; >> + struct bond_dev_private *internals; >> + >> + if (valid_bonded_port_id(port) != 0) >> + return -EINVAL; >> + >> + dev = &rte_eth_devices[port]; >> + internals = dev->data->dev_private; >Same as before > >> >> if (check_for_bonded_ethdev(dev) != 0) >> return -1; >> -- >> 2.17.1 >