[ovs-dev] [PATCH v2] ovsdb: Expose vhost-user socket directory in ovsdb

Wojciechowicz, RobertX robertx.wojciechowicz at intel.com
Wed Jul 6 08:52:44 UTC 2016


Hi Ben,


> -----Original Message-----
> From: Ben Pfaff [mailto:blp at ovn.org]
> Sent: Tuesday, July 5, 2016 5:07 PM
> To: Wojciechowicz, RobertX <robertx.wojciechowicz at intel.com>
> Cc: dev at openvswitch.org
> Subject: Re: [ovs-dev] [PATCH v2] ovsdb: Expose vhost-user socket directory
> in ovsdb
> 
> On Mon, Jul 04, 2016 at 07:22:40AM +0000, Wojciechowicz, RobertX wrote:
> > Hi,
> >
> > > -----Original Message-----
> > > From: Ben Pfaff [mailto:blp at ovn.org]
> > > Sent: Saturday, July 2, 2016 2:49 AM
> > > To: Wojciechowicz, RobertX <robertx.wojciechowicz at intel.com>
> > > Cc: dev at openvswitch.org
> > > Subject: Re: [ovs-dev] [PATCH v2] ovsdb: Expose vhost-user socket
> directory
> > > in ovsdb
> > >
> > > On Mon, Jun 20, 2016 at 10:16:51AM +0000, Wojciechowicz, RobertX
> wrote:
> > > > Hi,
> > > >
> > > > > -----Original Message-----
> > > > > From: Ben Pfaff [mailto:blp at ovn.org]
> > > > > Sent: Wednesday, June 8, 2016 10:41 PM
> > > > > To: Wojciechowicz, RobertX <robertx.wojciechowicz at intel.com>
> > > > > Cc: dev at openvswitch.org
> > > > > Subject: Re: [ovs-dev] [PATCH v2] ovsdb: Expose vhost-user socket
> > > directory
> > > > > in ovsdb
> > > > >
> > > > > On Thu, Jun 02, 2016 at 11:25:56AM +0100, Robert Wojciechowicz
> wrote:
> > > > > > In order to correctly interoperate with Openstack and ODL,
> > > > > > the vhost-user socket directory must be exposed from OVS via
> OVSDB.
> > > > > > Different distros may package OVS in different ways,
> > > > > > so the locations of these sockets may vary depending on how
> > > > > > ovs-vswitchd has been started. Some clients need information
> where
> > > > > > the sockets are located when instantiating Qemu virtual machines.
> > > > > > The full vhost-user socket directory is constructed from current
> > > > > > OVS working directory and optionally from specified subdirectory.
> > > > > > This patch exposes vhost-user socket directory in Open_vSwitch
> > > > > > table in other_config column in two following keys:
> > > > > > 1. ovs-run-dir    - OVS working directory
> > > > > > 2. vhost-sock-dir - subdirectory of ovs-run-dir (might be empty)
> > > > > >
> > > > > > Signed-off-by: Robert Wojciechowicz
> > > <robertx.wojciechowicz at intel.com>
> > > > > >
> > > > > > v1->v2
> > > > > > - moving vswitch-idl.h dependency inside #ifdef block
> > > > > > - sock_dir_subcomponent initialization with ""
> > > > >
> > > > > Same comment as v1: architecturally, ovs-vswitchd only reads
> > > > > other-config columns, it never writes to them.  Please fix.
> > > >
> > > > If ovs-vswitchd cannot writes to other-config then the only place
> > > > for writing default values to this column I can think of is vswitch
> > > > startup script ovs-ctl.
> > > > Basically I tested in my environment the below solution
> > > > and it seems to solve our issue.
> > > > Is it acceptable approach?
> > >
> > > It looks like you're trying to use other-config to report something,
> > > instead of to configure something.  That's not what it's for.
> >
> > Actually I'm trying to add missing information to the OVSDB.
> > By default ovs-vswitchd is already configured that vhost-user
> > sockects are created in the rundir, but this information
> > is not available in the OVSDB. Third-party scripts, which need
> > this information are forced to take some guesses about this.
> > Basically this approach is very similar to storing hostname
> > in this patch:
> > http://openvswitch.org/pipermail/dev/2016-March/068511.html
> 
> There is a difference between external-ids and other-config.
> other-config is to configure the switch.  That patch uses external-ids.

[RW] Yes, of course, but my point is that the configuration
currently looks as follows:
1. start ovsdb
2. vhost-sock-dir is not configured
3. start ovs-vswitchd
4. ovs-vswitchd in the function dpdk_init__ configures vhost-sock-dir
from ovs_rundir() and sock_dir_subcomponent
5. vhost-sock-dir is now configured, but still there is no information in the ovsdb

Now the question is how the third-party scripts can find out where actually
vhost-user sockets are located?

Br,
Robert




More information about the dev mailing list