On 01/16/2019 11:06 AM, Thomas Monjalon wrote: > 16/01/2019 11:56, Kevin Traynor: >> On 01/16/2019 10:21 AM, Thomas Monjalon wrote: >>> 16/01/2019 11:03, Ophir Munk: >>>> Hi Kevin and thank you for your comments. >>>> Please see inline... >>>> >>>> From: Kevin Traynor <[email protected]> >>>>> On 01/15/2019 09:47 AM, Ophir Munk wrote: >>>>>> Dpdk port representors were introduced in dpdk versions 18.xx. >>>>>> Prior to port representors there was a one-to-one relationship between >>>>>> an rte device (e.g. PCI bus) and an eth device (referenced as dpdk >>>>>> port id in OVS). With port representors the relationship becomes >>>>>> one-to-many rte device to eth devices. >>>>>> For example in [3] there are two devices (representors) using the same >>>>>> PCI physical address 0000:08:00.0: "0000:08:00.0,representor=[3]" and >>>>>> "0000:08:00.0,representor=[5]". >>>>>> This commit handles the new one-to-many relationship. For example, >>>>>> when one of the device port representors in [3] is closed - the PCI >>>>>> bus cannot be detached until the other device port representor is >>>>>> closed as well. OVS remains backward compatible by supporting dpdk >>>>>> legacy PCI ports which do not include port representors. >>>>>> Dpdk port representors related commits are listed in [1]. Dpdk port >>>>>> representors documentation appears in [2]. A sample configuration >>>>>> which uses two representors ports (the output of "ovs-vsctl show" >>>>>> command) is shown in [3]. >>>>>> >>>>> >>>>> Hi Ophir, I had a scan through and there isn't any documentation/examples >>>>> for this outside the commit message. I think a user would need something >>>>> basic, or at least reference to know that this exists and how to use it. >>> >>> The user needs to know the DPDK syntax to reference DPDK ports. >>> This documentation should be provided by DPDK. >>> We don't have a doc summarizing all at the moment (I will work on it). >>> I suggest you collect URLs for pieces of docs and list them in OVS doc >>> about dpdk-devargs. >>> >> >> Yes, an OVS user will look at OVS docs (hopefully) but probably not >> commit messages or C code. Also, the reference has some nice testpmd >> examples. A simple OVS example would be nice, perhaps a section in >> ovs/Documentation/topics/dpdk/phy.rst with an example and links? > > I was thinking about these places: > http://docs.openvswitch.org/en/latest/howto/dpdk/#ports-and-bridges > http://docs.openvswitch.org/en/latest/topics/dpdk/phy/#hotplugging >
Yeah, that last link is the file I sent. It could be there or a section under it. I don't mind too much where it is once it's in OVS docs. >>>>>> [2] >>>>>> doc/guides/prog_guide/switch_representation.rst >>>>>> >>>> >>>> I now realize that the reference given in [2] requires downloading DPDK. >>>> In v6 I will update it with a new reference: >>>> >>>> https://doc.dpdk.org/guides-18.08/prog_guide/switch_representation.html >>> >>> No need to specify a version: >>> https://doc.dpdk.org/guides/prog_guide/switch_representation.html >>> >> >> Maybe better to specify 18.11 in case something is added/removed in >> later DPDK. >> >>>> which includes abundant of documentation/examples. >>>> Can you please have a look and let me know if it is sufficient, or maybe >>>> you have other ideas where more documentation should be added. >>> >>> There is also some documentation for representor syntax: >>> https://doc.dpdk.org/guides/prog_guide/poll_mode_drv.html#ethernet-device-standard-device-arguments >>> >>> But honestly, I doubt you need to talk about representors in this patch. >>> The change is to support multi-ports device generally. >> >> ok, then just need a way to tell OVS user that the new functionality is >> existing. > > Which functionality? closing a port without closing others? > It looks like a bug fix to me :) > A bug? NEVER :-) I just mean the code is enabling some new functionality for a user, so they should know that it's available now. >>> The representor ports are just a use case of multi-ports. >>> Other use cases: >>> https://doc.dpdk.org/guides/nics/mlx4.html#implementation-details >>> https://doc.dpdk.org/guides/nics/cxgbe.html#limitations >>> For these use cases, we can use the mac= argument in devargs. > > > _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
