All of lore.kernel.org
 help / color / mirror / Atom feed
From: Christophe de Dinechin <christophe.de.dinechin@gmail.com>
To: Parav Pandit <parav@mellanox.com>
Cc: Alex Williamson <alex.williamson@redhat.com>,
	Jiri Pirko <jiri@mellanox.com>,
	"David S . Miller" <davem@davemloft.net>,
	Kirti Wankhede <kwankhede@nvidia.com>,
	Cornelia Huck <cohuck@redhat.com>,
	"kvm\@vger.kernel.org" <kvm@vger.kernel.org>,
	"linux-kernel\@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"cjia\@nvidia.com" <cjia@nvidia.com>,
	"netdev\@vger.kernel.org" <netdev@vger.kernel.org>
Subject: Re: [PATCH v2 0/2] Simplify mtty driver and mdev core
Date: Tue, 20 Aug 2019 11:58:55 +0200	[thread overview]
Message-ID: <m1o90kduow.fsf@dinechin.org> (raw)
In-Reply-To: <AM0PR05MB48668B6221E477A873688CDBD1AB0@AM0PR05MB4866.eurprd05.prod.outlook.com>


Parav Pandit writes:

> + Dave.
>
> Hi Jiri, Dave, Alex, Kirti, Cornelia,
>
> Please provide your feedback on it, how shall we proceed?
>
> Hence, I would like to discuss below options.
>
> Option-1: mdev index
> Introduce an optional mdev index/handle as u32 during mdev create time.
> User passes mdev index/handle as input.
>
> phys_port_name=mIndex=m%u
> mdev_index will be available in sysfs as mdev attribute for udev to name the mdev's netdev.
>
> example mdev create command:
> UUID=$(uuidgen)
> echo $UUID index=10 > /sys/class/net/ens2f0/mdev_supported_types/mlx5_core_mdev/create
> example netdevs:
> repnetdev=ens2f0_m10	/*ens2f0 is parent PF's netdevice */
> mdev_netdev=enm10
>
> Pros:
> 1. mdevctl and any other existing tools are unaffected.
> 2. netdev stack, ovs and other switching platforms are unaffected.
> 3. achieves unique phys_port_name for representor netdev
> 4. achieves unique mdev eth netdev name for the mdev using udev/systemd extension.
> 5. Aligns well with mdev and netdev subsystem and similar to existing sriov bdf's.
>
> Option-2: shorter mdev name
> Extend mdev to have shorter mdev device name in addition to UUID.
> such as 'foo', 'bar'.
> Mdev will continue to have UUID.
> phys_port_name=mdev_name
>
> Pros:
> 1. All same as option-1, except mdevctl needs upgrade for newer usage.
> It is common practice to upgrade iproute2 package along with the kernel.
> Similar practice to be done with mdevctl.
> 2. Newer users of mdevctl who wants to work with non_UUID names, will use newer mdevctl/tools.
> Cons:
> 1. Dual naming scheme of mdev might affect some of the existing tools.
> It's unclear how/if it actually affects.
> mdevctl [2] is very recently developed and can be enhanced for dual naming scheme.
>
> Option-3: mdev uuid alias
> Instead of shorter mdev name or mdev index, have alpha-numeric name alias.
> Alias is an optional mdev sysfs attribute such as 'foo', 'bar'.
> example mdev create command:
> UUID=$(uuidgen)
> echo $UUID alias=foo > /sys/class/net/ens2f0/mdev_supported_types/mlx5_core_mdev/create
> example netdevs:
> examle netdevs:
> repnetdev = ens2f0_mfoo
> mdev_netdev=enmfoo
>
> Pros:
> 1. All same as option-1.
> 2. Doesn't affect existing mdev naming scheme.
> Cons:
> 1. Index scheme of option-1 is better which can number large number of mdevs with fewer characters, simplifying the management tool.

I believe that Alex pointed out another "Cons" to all three options,
which is that it forces user-space to resolve potential race conditions
when creating an index or short name or alias.

Also, what happens if `index=10` is not provided on the command-line?
Does that make the device unusable for your purpose?


--
Cheers,
Christophe de Dinechin (IRC c3d)

  reply	other threads:[~2019-08-20  9:59 UTC|newest]

Thread overview: 74+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-08-02  6:59 [PATCH 0/2] Simplify mtty driver and mdev core Parav Pandit
2019-08-02  6:59 ` [PATCH 1/2] vfio-mdev/mtty: Simplify interrupt generation Parav Pandit
2019-08-06  8:15   ` Cornelia Huck
2019-08-02  6:59 ` [PATCH 2/2] vfio/mdev: Removed unused and redundant API for mdev name Parav Pandit
2019-08-06  8:29   ` Cornelia Huck
2019-08-06 13:12     ` Parav Pandit
2019-08-06 14:18 ` [PATCH v1 0/2] Simplify mtty driver and mdev core Parav Pandit
2019-08-06 14:18   ` [PATCH v1 1/2] vfio-mdev/mtty: Simplify interrupt generation Parav Pandit
2019-08-06 14:18   ` [PATCH v1 2/2] vfio/mdev: Removed unused and redundant API for mdev UUID Parav Pandit
2019-08-07  9:28     ` Cornelia Huck
2019-08-07 16:33       ` Parav Pandit
2019-08-08  8:29         ` Cornelia Huck
2019-08-08 14:01           ` Parav Pandit
2019-08-08 14:12 ` [PATCH v2 0/2] Simplify mtty driver and mdev core Parav Pandit
2019-08-08 14:12   ` [PATCH v2 1/2] vfio-mdev/mtty: Simplify interrupt generation Parav Pandit
2019-08-13 16:39     ` Christoph Hellwig
2019-08-23 20:48     ` Alex Williamson
2019-08-08 14:12   ` [PATCH v2 2/2] vfio/mdev: Removed unused and redundant API for mdev UUID Parav Pandit
2019-08-13 16:39     ` Christoph Hellwig
2019-08-16 15:22     ` Cornelia Huck
2019-08-08 23:02   ` [PATCH v2 0/2] Simplify mtty driver and mdev core Alex Williamson
2019-08-09  8:07     ` Cornelia Huck
2019-08-12 11:35     ` Kirti Wankhede
2019-08-13 14:40       ` Parav Pandit
2019-08-13 14:52         ` Alex Williamson
2019-08-13 16:28           ` Parav Pandit
2019-08-13 16:34             ` Cornelia Huck
2019-08-13 17:11             ` Alex Williamson
2019-08-14  5:54               ` Parav Pandit
2019-08-14  8:01                 ` Cornelia Huck
2019-08-14 12:27                   ` Parav Pandit
2019-08-14 13:09                     ` Cornelia Huck
2019-08-14 13:45                       ` Parav Pandit
2019-08-14 14:57                         ` Alex Williamson
2019-08-14 16:21                           ` Parav Pandit
2019-08-20  8:58                             ` Parav Pandit
2019-08-20  9:58                               ` Christophe de Dinechin [this message]
2019-08-20 11:25                                 ` Parav Pandit
2019-08-20 16:31                                   ` Cornelia Huck
2019-08-21  2:42                                     ` Parav Pandit
2019-08-20 17:19                               ` Alex Williamson
2019-08-20 17:55                                 ` Cornelia Huck
2019-08-21  3:57                                   ` Parav Pandit
2019-08-21  3:42                                 ` Parav Pandit
2019-08-21  4:20                                   ` Alex Williamson
2019-08-21  4:40                                     ` Parav Pandit
2019-08-21  4:57                                       ` Alex Williamson
2019-08-21  5:01                                         ` Parav Pandit
2019-08-21  5:26                                           ` Alex Williamson
2019-08-21  6:23                                             ` Parav Pandit
2019-08-22  9:29                                               ` Jiri Pirko
2019-08-22  9:42                                                 ` Parav Pandit
2019-08-22  9:58                                                   ` Jiri Pirko
2019-08-22 10:04                                                     ` Parav Pandit
2019-08-22 12:19                                                       ` Jiri Pirko
2019-08-22 13:33                                                         ` Parav Pandit
2019-08-23  8:12                                                           ` Jiri Pirko
2019-08-23  8:14                                                             ` Parav Pandit
2019-08-23 14:28                                                               ` Alex Williamson
2019-08-23 14:53                                                                 ` Parav Pandit
2019-08-23 15:04                                                                   ` Jiri Pirko
2019-08-23 15:52                                                                   ` Alex Williamson
2019-08-23 16:14                                                                     ` Parav Pandit
2019-08-23 17:16                                                                       ` Alex Williamson
2019-08-23 18:00                                                                         ` Parav Pandit
2019-08-23 19:43                                                                           ` Alex Williamson
2019-08-24  3:56                                                                             ` Parav Pandit
2019-08-24  4:45                                                                               ` Parav Pandit
2019-08-24  4:59                                                                               ` Alex Williamson
2019-08-24  5:22                                                                                 ` Parav Pandit
2019-08-13 16:37         ` Christoph Hellwig
2019-08-13 17:40           ` Greg Kroah-Hartman
2019-08-14  5:30             ` Parav Pandit
2019-08-13 14:48     ` Parav Pandit

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=m1o90kduow.fsf@dinechin.org \
    --to=christophe.de.dinechin@gmail.com \
    --cc=alex.williamson@redhat.com \
    --cc=cjia@nvidia.com \
    --cc=cohuck@redhat.com \
    --cc=davem@davemloft.net \
    --cc=jiri@mellanox.com \
    --cc=kvm@vger.kernel.org \
    --cc=kwankhede@nvidia.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=parav@mellanox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.