From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <3chas3@gmail.com>
Received: from mail-io0-f193.google.com (mail-io0-f193.google.com
 [209.85.223.193]) by dpdk.org (Postfix) with ESMTP id BCCE21B023
 for <dev@dpdk.org>; Thu,  7 Jun 2018 16:21:46 +0200 (CEST)
Received: by mail-io0-f193.google.com with SMTP id t6-v6so12001964iob.10
 for <dev@dpdk.org>; Thu, 07 Jun 2018 07:21:46 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=mime-version:in-reply-to:references:from:date:message-id:subject:to
 :cc; bh=/kBMeM2A7Hm7y78muq1zB7A2CGaxGbiTuYrH8TYShOk=;
 b=iXuqYXOO8tZRljqwvLNRuCmetvCszPEBKewi4IfKFaSv+YZzoa2lEBGEWLNoq2ra/x
 RkGxhzkF/QIxvSIZ/eb5Sqg2iRfHoWsYBkHww9n3ihiGKVEgEnuyenrodlmqnfsWqi4X
 buT3ediMcq/k2rBYDBGlsFAjCdf/PXGkMEb/r7jzoQD/gJ5gMFb5jz4EDF28diXE9Bn0
 4AU26nPuxRC+xm6g+tJBvE3w8bBWKu/E5YmJ3Wu7dqSW9GIbxYw6eb3n+4wrRqTv1fSi
 uTEGg5o6pyOkMOUqEmSoVbS8c+0uz0nsmhBrzMJcFqrwHzoEfcaBrVo38klFR7w9Hsdv
 Cydg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:in-reply-to:references:from:date
 :message-id:subject:to:cc;
 bh=/kBMeM2A7Hm7y78muq1zB7A2CGaxGbiTuYrH8TYShOk=;
 b=Rr2nNOP/bZMgx0MDNpmY8NGpdQDbWl1IdscmpXXEiPIe6NwJsu5iInLaRy523OR6zN
 IEL82BVQy8blQ6ftg0+DZYJZMIV9wJrKKejcDJBdEQpm7TUR7LG67y8SqwnNTUaWQ4oW
 8m7LuspnVDfqyb/DZEoEB3RyVumSIMcAJAk6PWFOMIDTZ6sxBhUPO4zFSB6dKyfDKmza
 YvSBD7iYlXrSgm++b4lz4rg/CnEVQ8oGXym97grm3sPFMOWnthOhnTlfvPf1vFZf/UlZ
 Zam1ws6D4bXYCP8A/fIVkCre8Q2knnErhJZw5ObBWSJFtYSzzfT9Jvb3eK9u5fLxlD8i
 FjKQ==
X-Gm-Message-State: APt69E0zLXE4Iwe9KYTGfAQYw+W3YbvZ7DTpoRLcpWvMwhvhDzVCOg4k
 7Sbc/C2ZVybkhZCKA+SoTbMkIujN1uYDYo4yOhA=
X-Google-Smtp-Source: ADUXVKKcdSAre9kG55q+8pJs+sFTzWMXhP66Af+j2Z3kjg2HddjK01HzVZzj85noCQ+DVs0uw4Z+Xcws0ic0uPCbUl0=
X-Received: by 2002:a6b:8267:: with SMTP id
 e100-v6mr1755549iod.110.1528381306121; 
 Thu, 07 Jun 2018 07:21:46 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a6b:e90e:0:0:0:0:0 with HTTP;
 Thu, 7 Jun 2018 07:21:45 -0700 (PDT)
In-Reply-To: <20180607123849.14439-14-qi.z.zhang@intel.com>
References: <20180607123849.14439-1-qi.z.zhang@intel.com>
 <20180607123849.14439-14-qi.z.zhang@intel.com>
From: Chas Williams <3chas3@gmail.com>
Date: Thu, 7 Jun 2018 10:21:45 -0400
Message-ID: <CAG2-GkkVaxrFMteCMRiAkmQKGDoUwz0K99Up3Hvfe7mYd62Pcw@mail.gmail.com>
To: Qi Zhang <qi.z.zhang@intel.com>
Cc: Thomas Monjalon <thomas@monjalon.net>, "Burakov,
 Anatoly" <anatoly.burakov@intel.com>, 
 "Ananyev, Konstantin" <konstantin.ananyev@intel.com>, dev@dpdk.org, 
 Bruce Richardson <bruce.richardson@intel.com>,
 Ferruh Yigit <ferruh.yigit@intel.com>, 
 benjamin.h.shelton@intel.com, narender.vangati@intel.com
Content-Type: text/plain; charset="UTF-8"
X-Content-Filtered-By: Mailman/MimeDel 2.1.15
Subject: Re: [dpdk-dev] [PATCH 13/22] net/bonding: enable port detach on
 secondary process
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://dpdk.org/ml/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://dpdk.org/ml/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://dpdk.org/ml/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
X-List-Received-Date: Thu, 07 Jun 2018 14:21:47 -0000

On Thu, Jun 7, 2018 at 8:38 AM, Qi Zhang <qi.z.zhang@intel.com> wrote:

> Previously, detach port on secondary process will mess primary
> process and cause same device can't be attached again, by take
> advantage of rte_eth_release_port_local, we can support this with
> minor change.
>

This commit message needs some work.  Otherwise, I think this particular
patch is fine.


>
> Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
> ---
>  drivers/net/bonding/rte_eth_bond_pmd.c | 11 +++++++++++
>  1 file changed, 11 insertions(+)
>
> diff --git a/drivers/net/bonding/rte_eth_bond_pmd.c
> b/drivers/net/bonding/rte_eth_bond_pmd.c
> index 02d94b1b1..1221f62b2 100644
> --- a/drivers/net/bonding/rte_eth_bond_pmd.c
> +++ b/drivers/net/bonding/rte_eth_bond_pmd.c
> @@ -3065,6 +3065,7 @@ bond_probe(struct rte_vdev_device *dev)
>                 }
>                 /* TODO: request info from primary to set up Rx and Tx */
>                 eth_dev->dev_ops = &default_dev_ops;
> +               eth_dev->device = &dev->device;
>                 rte_eth_dev_probing_finish(eth_dev);
>                 return 0;
>         }
> @@ -3171,6 +3172,16 @@ bond_remove(struct rte_vdev_device *dev)
>         if (eth_dev == NULL)
>                 return -ENODEV;
>
> +       if (rte_eal_process_type() != RTE_PROC_PRIMARY) {
> +               /* detach device on local pprocess only */
>

process?


> +               if (strlen(rte_vdev_device_args(dev)) == 0)
> +                       return rte_eth_dev_release_port_local(eth_dev);
> +               /**
> +                * else this is a private device for current process
> +                * so continue with normal detach scenario
> +                */
> +       }
> +
>         RTE_ASSERT(eth_dev->device == &dev->device);
>
>         internals = eth_dev->data->dev_private;
> --
> 2.13.6
>
>