Re: [vpp-dev] Building router plugin

2017-03-24 Thread Łukasz Chrustek
Title: Re: [vpp-dev] Building router plugin


Hi,

I'm trying to compile vpp from git sources (git clone https://gerrit.fd.io/r/vpp) + router plugin (also from git, but for vppsb: git clone https://gerrit.fd.io/r/vppsb). Compilation of vpp is working, but I would like to test tap inject from router plugin from vppsb (vpp sandbox). Compilation procedure from router/README.mk in vppsb directory doesn't work:


## Build/Install

The router is implemented as a plugin to inject, e.g. arp, icmp4, traffic
from data plane devices. To use it, you must build the plugin and put it
in VPPs runtime plugin directory. The plugin depends on vpp and the netlink
repository from the vppsb project. This README assumes familiarity with the
build environment for both projects.

Build vpp, netlink, and router all at once by creating symbolic links in the
top level vpp directory to the netlink and router directories as well as
symbolic links to the respective .mk files in 'build-data/packages'.

```
$ cd /git/vpp
$ ln -sf /git/vppsb/netlink
$ ln -sf /git/vppsb/router
$ ln -sf ../../netlink/netlink.mk build-data/packages/
$ ln -sf ../../router/router.mk build-data/packages/
```

Now build everything and create a link to the plugin in vpp's plugin path.

```
$ cd build-root
$ ./bootstrap.sh
$ make V=0 PLATFORM=vpp TAG=vpp_debug router-install
$ ln -sf /git/vpp/build-root/install-vpp_debug-native/router/lib64/router.so.0.0.0 \
         /usr/lib/vpp_plugins/router.so
```

Once VPP is running and the plugin is loaded, data plane interfaces can
be tapped.

```
$ vppctl tap inject arp,icmp4 from TenGigabitEthernet2/0/0 as vpp0
```



Regards
Luk





Luk,

Are you installing the vpp-dev (or vpp-devel if Centos) package?
I would imagine you'd need that for headers etc.

Ed

On Fri, Mar 24, 2017 at 8:14 AM, Łukasz Chrustek  wrote:




Hi Dave,

but this plugin isn't part of core vpp code tree, it is from vppsb.

Regards
Luk
> Dear Luk,

> The "vpp-install," "install-packags," "install-deb" etc. targets
> will build the set of plugins configured in src/configure.ac:

> For example:

> $ cd build-root
> $ make PLATFORM=vpp TAG=vpp vpp-install

> HTH. Dave

> -Original Message-
> From: vpp-dev-boun...@lists.fd.io
> [mailto:vpp-dev-boun...@lists.fd.io] On Behalf Of Lukasz Chrustek
> Sent: Friday, March 24, 2017 4:55 AM
> To: vpp-dev@lists.fd.io
> Subject: [vpp-dev] Building router plugin

> Hi,

> Can You advice what is the proper way for building router plugin now ?

> I'm trying to build this plugin as stated in README, but I get:

> # ./bootstrap.sh

> Saving PATH settings in /git/vpp/build-root/path_setup
> Source this file later, as needed
> Compile native tools
>  Arch for platform 'native' is native 
>  Finding source for tools 
>  Makefile fragment found in
> /git/vpp/build-root/packages/tools.mk 
>  Source found in /git/vpp/src 
>  Configuring tools: nothing to do 
>  Building tools: nothing to do 
>  Installing tools: nothing to do 

> # make V=0 PLATFORM=vpp TAG=vpp_debug router-install
>  Arch for platform 'vpp' is native 
>  Finding source for vppinfra 
>  Package vppinfra not found with path /git/vpp 
> Makefile:780: recipe for target 'vppinfra-find-source' failed
> make: *** [vppinfra-find-source] Error 1

> compilation  of  vpp is working fine, but not from /git/vpp/build-root
> but from /git/vpp.

> Regards
> Luk

> ___
> vpp-dev mailing list
> vpp-dev@lists.fd.io
> https://lists.fd.io/mailman/listinfo/vpp-dev



--
Pozdrawiam,
 Łukasz Chrustek

___
vpp-dev mailing list
vpp-dev@lists.fd.io
https://lists.fd.io/mailman/listinfo/vpp-dev








-- 
Pozdrowienia,
 Łukasz Chrustek

___
vpp-dev mailing list
vpp-dev@lists.fd.io
https://lists.fd.io/mailman/listinfo/vpp-dev

Re: [vpp-dev] Building router plugin

2017-03-24 Thread Ed Warnicke
Luk,

Are you installing the vpp-dev (or vpp-devel if Centos) package?
I would imagine you'd need that for headers etc.

Ed

On Fri, Mar 24, 2017 at 8:14 AM, Łukasz Chrustek 
wrote:

> Hi Dave,
>
> but this plugin isn't part of core vpp code tree, it is from vppsb.
>
> Regards
> Luk
> > Dear Luk,
>
> > The "vpp-install," "install-packags," "install-deb" etc. targets
> > will build the set of plugins configured in src/configure.ac:
>
> > For example:
>
> > $ cd build-root
> > $ make PLATFORM=vpp TAG=vpp vpp-install
>
> > HTH. Dave
>
> > -Original Message-
> > From: vpp-dev-boun...@lists.fd.io
> > [mailto:vpp-dev-boun...@lists.fd.io] On Behalf Of Lukasz Chrustek
> > Sent: Friday, March 24, 2017 4:55 AM
> > To: vpp-dev@lists.fd.io
> > Subject: [vpp-dev] Building router plugin
>
> > Hi,
>
> > Can You advice what is the proper way for building router plugin now ?
>
> > I'm trying to build this plugin as stated in README, but I get:
>
> > # ./bootstrap.sh
>
> > Saving PATH settings in /git/vpp/build-root/path_setup
> > Source this file later, as needed
> > Compile native tools
> >  Arch for platform 'native' is native 
> >  Finding source for tools 
> >  Makefile fragment found in
> > /git/vpp/build-root/packages/tools.mk 
> >  Source found in /git/vpp/src 
> >  Configuring tools: nothing to do 
> >  Building tools: nothing to do 
> >  Installing tools: nothing to do 
>
> > # make V=0 PLATFORM=vpp TAG=vpp_debug router-install
> >  Arch for platform 'vpp' is native 
> >  Finding source for vppinfra 
> >  Package vppinfra not found with path /git/vpp 
> > Makefile:780: recipe for target 'vppinfra-find-source' failed
> > make: *** [vppinfra-find-source] Error 1
>
> > compilation  of  vpp is working fine, but not from /git/vpp/build-root
> > but from /git/vpp.
>
> > Regards
> > Luk
>
> > ___
> > vpp-dev mailing list
> > vpp-dev@lists.fd.io
> > https://lists.fd.io/mailman/listinfo/vpp-dev
>
>
>
> --
> Pozdrawiam,
>  Łukasz Chrustek
>
> ___
> vpp-dev mailing list
> vpp-dev@lists.fd.io
> https://lists.fd.io/mailman/listinfo/vpp-dev
>
___
vpp-dev mailing list
vpp-dev@lists.fd.io
https://lists.fd.io/mailman/listinfo/vpp-dev

Re: [vpp-dev] Building router plugin

2017-03-24 Thread Pragash Vijayaragavan
Hi,

Dave has explained how to include a plugin in this mail, hope it helps.


Thanks,



Pragash Vijayaragavan

Grad Student at Rochester Institute of Technology

email : pxv3...@rit.edu

ph : 585 764 4662 <(585)%20764-4662>

-- Forwarded message --
From: Dave Barach (dbarach) 
Date: Mon, Mar 6, 2017 at 7:49 AM
Subject: RE: configure .ac file missing when creating plugin
To: "pxv3...@rit.edu" 
Cc: Arjun Dhuliya , Shailesh Vajpayee ,
"Neale Ranns (nranns)" , "Damjan Marion (damarion)" <
damar...@cisco.com>, "John Marshall (jwm)" , Minseok Kwon <
mxk...@rit.edu>


The plugin “myplug.so” must be installed e.g. in /usr/lib/vpp_plugins, or
you’ll need to set the plugin path via the command line.



If you enable your plugin in src/configure.ac and e.g. “make PLATFORM=vpp
TAG=vpp_debug install-deb”, the vpp-plugin Debian package [or equivalent
RPM] will be happy to install the goods for you.



Thanks… Dave



*From:* Pragash Vijayaragavan [mailto:pxv3...@rit.edu]
*Sent:* Sunday, March 5, 2017 9:43 PM
*To:* Dave Barach (dbarach) 
*Cc:* Arjun Dhuliya ; Shailesh Vajpayee ;
Neale Ranns (nranns) ; Damjan Marion (damarion) <
damar...@cisco.com>; John Marshall (jwm) ; Minseok Kwon <
mxk...@rit.edu>
*Subject:* Re: configure .ac file missing when creating plugin



Hi Dave,



Thanks for your mail.



I did the steps which you mentioned but still i am not able to see my
plugin running in the "vppctl sh run"



After the above steps, i did a



autoreconf -i -f



../configure



sudo restart vpp



Am i missing anything here, should i do a make to build vpp again with the
plugin





Thanks,



Pragash Vijayaragavan

Grad Student at Rochester Institute of Technology

email : pxv3...@rit.edu

ph : 585 764 4662 <(585)%20764-4662>





On Thu, Mar 2, 2017 at 12:46 PM, Dave Barach (dbarach) 
wrote:

It’s “missing” because it’s not needed...



Add a line to .../src/configure.ac of the form:



PLUGIN_ENABLED(your-plugin



Add this to .../src/plugins/Makefile.am:



if ENABLE_YOUR_PLUGIN

include your_plugin.am

endif



The makefile.am fragment in “your_plugin.am” should have been generated by
the emacs lisp code.



HTH… Dave



*From:* Pragash Vijayaragavan [mailto:pxv3...@rit.edu]
*Sent:* Thursday, March 2, 2017 12:38 PM
*To:* Dave Barach (dbarach) ; Arjun Dhuliya <
amd5...@rit.edu>; Shailesh Vajpayee ; Neale Ranns (nranns)
; Damjan Marion (damarion) 
*Cc:* John Marshall (jwm) ; Minseok Kwon 
*Subject:* configure .ac file missing when creating plugin



Hi,



we tried to create a plugin using the emacs and all skeleton file but when
loading and creating the libraries the configure.ac file was missing and so
we could not proceed further.



What we are trying to do is to create a plugin and put our cuckoo filter
code in the plugin so that the ip6_fib will make calls to the functions in
the plugin and do the appropriate operations. Should we create a plugin to
add our functions or can we add those in the ip6 files itself.



Is this the right way to do this or is there any other way.




Thanks,



Pragash Vijayaragavan

Grad Student at Rochester Institute of Technology

email : pxv3...@rit.edu

ph : 585 764 4662 <(585)%20764-4662>






Thanks,

Pragash Vijayaragavan
Grad Student at Rochester Institute of Technology
email : pxv3...@rit.edu
ph : 585 764 4662


On Fri, Mar 24, 2017 at 11:14 AM, Łukasz Chrustek 
wrote:

> Hi Dave,
>
> but this plugin isn't part of core vpp code tree, it is from vppsb.
>
> Regards
> Luk
> > Dear Luk,
>
> > The "vpp-install," "install-packags," "install-deb" etc. targets
> > will build the set of plugins configured in src/configure.ac:
>
> > For example:
>
> > $ cd build-root
> > $ make PLATFORM=vpp TAG=vpp vpp-install
>
> > HTH. Dave
>
> > -Original Message-
> > From: vpp-dev-boun...@lists.fd.io
> > [mailto:vpp-dev-boun...@lists.fd.io] On Behalf Of Lukasz Chrustek
> > Sent: Friday, March 24, 2017 4:55 AM
> > To: vpp-dev@lists.fd.io
> > Subject: [vpp-dev] Building router plugin
>
> > Hi,
>
> > Can You advice what is the proper way for building router plugin now ?
>
> > I'm trying to build this plugin as stated in README, but I get:
>
> > # ./bootstrap.sh
>
> > Saving PATH settings in /git/vpp/build-root/path_setup
> > Source this file later, as needed
> > Compile native tools
> >  Arch for platform 'native' is native 
> >  Finding source for tools 
> >  Makefile fragment found in
> > /git/vpp/build-root/packages/tools.mk 
> >  Source found in /git/vpp/src 
> >  Configuring tools: nothing to do 
> >  Building tools: nothing to do 
> >  Installing tools: nothing to do 
>
> > # make V=0 PLATFORM=vpp TAG=vpp_debug router-install
> >  Arch for platform 'vpp' is native 
> >  Finding source for vppinfra 
> >  Package vppinfra not found with path /git/vpp 
> > Makefile:780: recipe for target 'vppinfra-find-source' failed
> > make: *** [vppinfra-find-source] Error 1
>
> > compilation  of  vpp is w

[vpp-dev] arp processing by RP.

2017-03-24 Thread Sharath
In my usecase I an have RP & I am treating VPP as an LC. Ideally I want my
RP to resolve the arp & plumb the arp entry into VPP. From the look of it,
this below command could be used for this. The recent vpp build does not
have this command. How to get this working without this command, or is
there an alternative?

tap inject arp,icmp4 from TenGigabitEthernet4/0/0 as tap0

Thanks

Sharath
___
vpp-dev mailing list
vpp-dev@lists.fd.io
https://lists.fd.io/mailman/listinfo/vpp-dev

Re: [vpp-dev] vpp-plugins RPM dependency

2017-03-24 Thread Damjan Marion (damarion)

On 23 Mar 2017, at 14:26, Thomas F Herbert 
mailto:therb...@redhat.com>> wrote:



On 03/22/2017 04:36 PM, Feng Pan wrote:
So this would suggest that VPP by default (that is, by doing 'yum install vpp') 
will not have dpdk support, and vpp-plugins must also be installed to add it, I 
would think dpdk plugin should be either packaged or installed together with 
VPP by default, and can be disabled if desired.

In any case, will deployment model stay this way? I'll need to make changes to 
puppet module to include other packages if that's how it will be going forward. 
Also, dpdk section should be commented out in the config file so we can start 
VPP service using the default config.
The dpdk plugin build process  precipitated major headaches working for 
downstream packaging for Centos as well. I had a patch ready to submit for 
building from a dist tarball as a step toward building from a source rpm but 
that can't be used now.  The main problem is vpp can no longer build from a 
isolated tarball without git.

Out-of-tree build problem is very easily fixable, as I suggested in the review 
comments.It is unlikely to be more than 10 lines of shell script.

Installing the development rpm as part of downstream installation  is not an 
option either.

installation of devel rpm is not mandatory step, you can build vpp without 
development package installed.

The build process does not support dependency on an external rpm yet such as 
that which is built in rpm_dpdk project. I am thinking out load here but the 
best option for achieving packaging for 17.04 is to build dpdk from the 
tarball, bypass the dpdk rpm and include the upstream dpdk tarball in the srpm. 
Hopefully we can get a better solution figured out by next release over 17.0x 
that will work with the dpdk plugin concept.

I’m not getting what is wrong with current setup, vpp is simple autotools 
project and packaging is free to invoke “cd src; ./configure; make; make 
install” as it is done with hundreds of different projects.








___
vpp-dev mailing list
vpp-dev@lists.fd.io
https://lists.fd.io/mailman/listinfo/vpp-dev

Re: [vpp-dev] vpp-plugins RPM dependency

2017-03-24 Thread Ed Warnicke
Looping in the fdio-puppet folks and FDS folks as this will be germane to
how they choose
to configure/install vpp.

Ed

On Fri, Mar 24, 2017 at 9:26 AM, Damjan Marion (damarion) <
damar...@cisco.com> wrote:

>
> Dear Feng,
>
> We have VPP consumers which would like to use VPP in the containerized
> environment without DPDK so dpdk needs to be separate package.
> Regarding your particular problem, it should be fixed with
> https://gerrit.fd.io/r/#/c/5837/ as Dave suggested.
>
> Thanks,
>
> Damjan
>
> On 22 Mar 2017, at 21:36, Feng Pan  wrote:
>
> So this would suggest that VPP by default (that is, by doing 'yum install
> vpp') will not have dpdk support, and vpp-plugins must also be installed to
> add it, I would think dpdk plugin should be either packaged or installed
> together with VPP by default, and can be disabled if desired.
>
> In any case, will deployment model stay this way? I'll need to make
> changes to puppet module to include other packages if that's how it will be
> going forward. Also, dpdk section should be commented out in the config
> file so we can start VPP service using the default config.
>
> Thanks
> Feng
>
> On Wed, Mar 22, 2017 at 2:46 PM, Ed Warnicke  wrote:
>
>> Commenting out the dpdk stanza is a great workaround but we may want to
>> look at bit more closely at the issue... as installing the vpp project
>> should result in an out of the box runnable vpp.
>>
>> Ed
>>
>> On Wed, Mar 22, 2017 at 11:44 AM, Dave Barach (dbarach) <
>> dbar...@cisco.com> wrote:
>>
>>> Simply remove the “dpdk” stanza from /etc/vpp/startup.conf if you want
>>> to run vpp without the dpdk plugin.
>>>
>>>
>>>
>>> Thanks… Dave
>>>
>>>
>>>
>>> *From:* vpp-dev-boun...@lists.fd.io [mailto:vpp-dev-boun...@lists.fd.io]
>>> *On Behalf Of *Feng Pan
>>> *Sent:* Wednesday, March 22, 2017 1:47 PM
>>> *To:* vpp-dev 
>>> *Subject:* [vpp-dev] vpp-plugins RPM dependency
>>>
>>>
>>>
>>> Hi All,
>>>
>>>
>>>
>>> With latest master builds of VPP (on Centos with rpm repo), it seems
>>> like it's necessary to install vpp-plugins package for vpp to start,
>>> without it, I get the following error when running vpp (with default config
>>> file):
>>>
>>>
>>>
>>> vlib_plugin_early_init:360: plugin path /usr/lib/vpp_plugins
>>>
>>> vlib_call_all_config_functions: unknown input `dpdk  '
>>>
>>>
>>>
>>> Looking at the spec file, vpp package depends on vpp-lib only, so it
>>> appears that we need to add vpp-plugins to the dependency list too.
>>> However, it also looks like vpp-plugins depends on vpp package, so I'm
>>> trying to figure out what the right dependency relationship is :)
>>>
>>>
>>>
>>> Thanks
>>>
>>> Feng
>>>
>>> ___
>>> vpp-dev mailing list
>>> vpp-dev@lists.fd.io
>>> https://lists.fd.io/mailman/listinfo/vpp-dev
>>>
>>
>>
> ___
> vpp-dev mailing list
> vpp-dev@lists.fd.io
> https://lists.fd.io/mailman/listinfo/vpp-dev
>
>
>
___
vpp-dev mailing list
vpp-dev@lists.fd.io
https://lists.fd.io/mailman/listinfo/vpp-dev

Re: [vpp-dev] vpp-plugins RPM dependency

2017-03-24 Thread Damjan Marion (damarion)

Dear Feng,

We have VPP consumers which would like to use VPP in the containerized 
environment without DPDK so dpdk needs to be separate package.
Regarding your particular problem, it should be fixed with 
https://gerrit.fd.io/r/#/c/5837/ as Dave suggested.

Thanks,

Damjan

On 22 Mar 2017, at 21:36, Feng Pan mailto:f...@redhat.com>> 
wrote:

So this would suggest that VPP by default (that is, by doing 'yum install vpp') 
will not have dpdk support, and vpp-plugins must also be installed to add it, I 
would think dpdk plugin should be either packaged or installed together with 
VPP by default, and can be disabled if desired.

In any case, will deployment model stay this way? I'll need to make changes to 
puppet module to include other packages if that's how it will be going forward. 
Also, dpdk section should be commented out in the config file so we can start 
VPP service using the default config.

Thanks
Feng

On Wed, Mar 22, 2017 at 2:46 PM, Ed Warnicke 
mailto:hagb...@gmail.com>> wrote:
Commenting out the dpdk stanza is a great workaround but we may want to look at 
bit more closely at the issue... as installing the vpp project should result in 
an out of the box runnable vpp.

Ed

On Wed, Mar 22, 2017 at 11:44 AM, Dave Barach (dbarach) 
mailto:dbar...@cisco.com>> wrote:
Simply remove the “dpdk” stanza from /etc/vpp/startup.conf if you want to run 
vpp without the dpdk plugin.

Thanks… Dave

From: vpp-dev-boun...@lists.fd.io 
[mailto:vpp-dev-boun...@lists.fd.io] On 
Behalf Of Feng Pan
Sent: Wednesday, March 22, 2017 1:47 PM
To: vpp-dev mailto:vpp-dev@lists.fd.io>>
Subject: [vpp-dev] vpp-plugins RPM dependency

Hi All,

With latest master builds of VPP (on Centos with rpm repo), it seems like it's 
necessary to install vpp-plugins package for vpp to start, without it, I get 
the following error when running vpp (with default config file):

vlib_plugin_early_init:360: plugin path /usr/lib/vpp_plugins
vlib_call_all_config_functions: unknown input `dpdk  '

Looking at the spec file, vpp package depends on vpp-lib only, so it appears 
that we need to add vpp-plugins to the dependency list too. However, it also 
looks like vpp-plugins depends on vpp package, so I'm trying to figure out what 
the right dependency relationship is :)

Thanks
Feng

___
vpp-dev mailing list
vpp-dev@lists.fd.io
https://lists.fd.io/mailman/listinfo/vpp-dev


___
vpp-dev mailing list
vpp-dev@lists.fd.io
https://lists.fd.io/mailman/listinfo/vpp-dev

___
vpp-dev mailing list
vpp-dev@lists.fd.io
https://lists.fd.io/mailman/listinfo/vpp-dev

Re: [vpp-dev] Building router plugin

2017-03-24 Thread Łukasz Chrustek
Hi Dave,

but this plugin isn't part of core vpp code tree, it is from vppsb.

Regards
Luk
> Dear Luk,

> The "vpp-install," "install-packags," "install-deb" etc. targets
> will build the set of plugins configured in src/configure.ac:

> For example:

> $ cd build-root
> $ make PLATFORM=vpp TAG=vpp vpp-install

> HTH. Dave

> -Original Message-
> From: vpp-dev-boun...@lists.fd.io
> [mailto:vpp-dev-boun...@lists.fd.io] On Behalf Of Lukasz Chrustek
> Sent: Friday, March 24, 2017 4:55 AM
> To: vpp-dev@lists.fd.io
> Subject: [vpp-dev] Building router plugin

> Hi,

> Can You advice what is the proper way for building router plugin now ?

> I'm trying to build this plugin as stated in README, but I get:

> # ./bootstrap.sh

> Saving PATH settings in /git/vpp/build-root/path_setup
> Source this file later, as needed
> Compile native tools
>  Arch for platform 'native' is native 
>  Finding source for tools 
>  Makefile fragment found in
> /git/vpp/build-root/packages/tools.mk 
>  Source found in /git/vpp/src 
>  Configuring tools: nothing to do 
>  Building tools: nothing to do 
>  Installing tools: nothing to do 

> # make V=0 PLATFORM=vpp TAG=vpp_debug router-install
>  Arch for platform 'vpp' is native 
>  Finding source for vppinfra 
>  Package vppinfra not found with path /git/vpp 
> Makefile:780: recipe for target 'vppinfra-find-source' failed
> make: *** [vppinfra-find-source] Error 1

> compilation  of  vpp is working fine, but not from /git/vpp/build-root
> but from /git/vpp.

> Regards
> Luk

> ___
> vpp-dev mailing list
> vpp-dev@lists.fd.io
> https://lists.fd.io/mailman/listinfo/vpp-dev



-- 
Pozdrawiam,
 Łukasz Chrustek

___
vpp-dev mailing list
vpp-dev@lists.fd.io
https://lists.fd.io/mailman/listinfo/vpp-dev


Re: [vpp-dev] Tap IF Names

2017-03-24 Thread Jon Loeliger
On Fri, Mar 24, 2017 at 9:07 AM, Pierre Pfister (ppfister) <
ppfis...@cisco.com> wrote:

> Hello Jon,
>
> No strong opinion on my side, but I'd just like to notice that there might
> be cases where multiple interfaces, in linux, have the same name, if they
> are in different network namespaces.
> VPP could literally control the back-end of thousands of containers'
> interfaces, all called eth0.
>
> I know this is a rather specific use-case, so I understand it might be
> helpful to change the default, but don't make the assumption that linux
> interface names are unique.
>
> - Pierre


Pierre and others,

Where did VPP get the names for those thousands of interfaces?

My point is that having VPP make up names for entities that the
user is going to want to name makes for a very bad UI design and
a bad User Experience.

Instead, the user needs to be in control of the namespace and be
able to predict, or out-right state, the names VPP will assign to
any entity that it allows the user to name.

The Tap interface fails in this regard.  I'm looking for a viable
solution, though.

Thanks,
jdl
___
vpp-dev mailing list
vpp-dev@lists.fd.io
https://lists.fd.io/mailman/listinfo/vpp-dev

Re: [vpp-dev] Tap IF Names

2017-03-24 Thread Pierre Pfister (ppfister)
Hello Jon,

No strong opinion on my side, but I'd just like to notice that there might be 
cases where multiple interfaces, in linux, have the same name, if they are in 
different network namespaces.
VPP could literally control the back-end of thousands of containers' 
interfaces, all called eth0.

I know this is a rather specific use-case, so I understand it might be helpful 
to change the default, but don't make the assumption that linux interface names 
are unique.

- Pierre


> Le 23 mars 2017 à 20:55, Jon Loeliger  a écrit :
> 
> Guys,
> 
> Why do tap interfaces use the name "tap-%d" internally?  The user has
> given an actual name (that corresponds to the underlying Linux tap name),
> and yet VPP makes up a non-correlatable different name in the form "tap-%d"
> by making up some number and assigning it to the IF.
> 
> This issue is precisely the same problem that loopback IF names had,
> and for which I submitted a patch to at least allow deterministically 
> predictable
> IF names for user-assigned names on loopbacks.
> 
> Later, there is some form of ability to "renumber" tap interfaces.  Will this
> affect the numbering of the IF names the user sees?
> 
> Specifically, I'm wondering if we can somehow unify the tap name prefix
> with the other interface prefixing styles in a more standard, cohesive and
> predictable way.  In the case of tap IFs, having VPP instead at least use
> the name "tap-%s", formatted with the user-supplied name would make
> it predictable and somewhat similar to the other IF types.
> 
> I *think* this table summarizes the current state of IF names for many
> of the interface types.
> 
> Thanks,
> jdl
> 
> 
> 
> DPDK:
> User says : TenGigabitEthernet6/0/0
> VPP uses  : TenGigabitEthernet6/0/0
> Linux uses: 
> 
> Loopback:
> User says :- for "create" and "delete" commands
> VPP uses  : loop   - for any other reference to the IF
> Linux : 
> 
> Host AF_PACKET
> User says : - for "create" and "delete" commands
> VPP uses  : host-   - for any other reference to the IF
> Linux uses: 
> Note: Leftover(?) use of "veth" in all VPP Wiki pages still?
> 
> Tap:
> User says : - for "create" and "delete" commands
> VPP uses  : tap-   - for any other reference to the IF
> Linux uses: 
> Note: No relationship between  and 
> 
> netmap:
> User says : - for "create" and "delete" commands
> VPP uses  : netmap- - for any other reference to the IF
> Linux uses: 
> 
> ___
> vpp-dev mailing list
> vpp-dev@lists.fd.io
> https://lists.fd.io/mailman/listinfo/vpp-dev

___
vpp-dev mailing list
vpp-dev@lists.fd.io
https://lists.fd.io/mailman/listinfo/vpp-dev

Re: [vpp-dev] Building router plugin

2017-03-24 Thread Dave Barach (dbarach)
Dear Luk,

The "vpp-install," "install-packags," "install-deb" etc. targets will build the 
set of plugins configured in src/configure.ac:

For example:

$ cd build-root
$ make PLATFORM=vpp TAG=vpp vpp-install

HTH. Dave

-Original Message-
From: vpp-dev-boun...@lists.fd.io [mailto:vpp-dev-boun...@lists.fd.io] On 
Behalf Of Lukasz Chrustek
Sent: Friday, March 24, 2017 4:55 AM
To: vpp-dev@lists.fd.io
Subject: [vpp-dev] Building router plugin

Hi,

Can You advice what is the proper way for building router plugin now ?

I'm trying to build this plugin as stated in README, but I get:

# ./bootstrap.sh

Saving PATH settings in /git/vpp/build-root/path_setup
Source this file later, as needed
Compile native tools
 Arch for platform 'native' is native 
 Finding source for tools 
 Makefile fragment found in /git/vpp/build-root/packages/tools.mk 
 Source found in /git/vpp/src 
 Configuring tools: nothing to do 
 Building tools: nothing to do 
 Installing tools: nothing to do 

# make V=0 PLATFORM=vpp TAG=vpp_debug router-install
 Arch for platform 'vpp' is native 
 Finding source for vppinfra 
 Package vppinfra not found with path /git/vpp 
Makefile:780: recipe for target 'vppinfra-find-source' failed
make: *** [vppinfra-find-source] Error 1

compilation  of  vpp is working fine, but not from /git/vpp/build-root
but from /git/vpp.

Regards
Luk

___
vpp-dev mailing list
vpp-dev@lists.fd.io
https://lists.fd.io/mailman/listinfo/vpp-dev
___
vpp-dev mailing list
vpp-dev@lists.fd.io
https://lists.fd.io/mailman/listinfo/vpp-dev


[vpp-dev] Shared memory connection

2017-03-24 Thread Jan Srnicek -X (jsrnicek - PANTHEON TECHNOLOGIES at Cisco)
Hi

I've been trying to integrate jvpp tests that we ship in jvpp jar files, to be 
runned as part of python tests(make test).
As part of this i've copied the approach of  framework.py - using custom shared 
memory segment prefix value to point connection to
segments created by vpp started in framework.py.

Following patch contains changed so far https://gerrit.fd.io/r/#/c/5815/

What i'm experiencing is

first run: make test TEST=test_jvpp_core , /dev/shm is empty)

Process error output :
svm_map_region:477: segment chown [ok if client starts first]: Operation not 
permitted (errno 1)

State of /dev/shm

jsrnicek@jsrnicek-VirtualBox:/dev/shm$ ls -l
celkom 148
-rwxrwx--- 1 jsrnicek jsrnicek 67108865 mar 24 10:40 global_vm
-rwxrwx--- 1 jsrnicek jsrnicek  4329473 mar 24 10:42 
vpp-unittest-TestJVppCore-B5VFU8-db
-rwxrwx--- 1 jsrnicek jsrnicek 67108865 mar 24 10:42 
vpp-unittest-TestJVppCore-B5VFU8-global_vm
-rwxrwx--- 1 jsrnicek jsrnicek 16912385 mar 24 10:42 
vpp-unittest-TestJVppCore-B5VFU8-vpe-api

second run : make test TEST=test_jvpp_core , /dev/shm in state above

svm_region_find_or_create:913: region /global_vm: not enough VM to allocate 
0x1021000 (16912384)
connect_to_vlib_internal:123: vl_client_api map rv -2
Java_io_fd_vpp_jvpp_VppJNIConnection_clientConnect:306: connection failed, rv -1

State of /dev/shm

jsrnicek@jsrnicek-VirtualBox:/dev/shm$ ls -l
celkom 148
-rwxrwx--- 1 jsrnicek jsrnicek 67108865 mar 24 10:40 global_vm
-rwxrwx--- 1 jsrnicek jsrnicek  4329473 mar 24 10:43 
vpp-unittest-TestJVppCore-_f_03W-db
-rwxrwx--- 1 jsrnicek jsrnicek 67108865 mar 24 10:43 
vpp-unittest-TestJVppCore-_f_03W-global_vm
-rwxrwx--- 1 jsrnicek jsrnicek 16912385 mar 24 10:43 
vpp-unittest-TestJVppCore-_f_03W-vpe-api


Which seems like no enough space is aviable in /dev/shm,which shouldnt realy be 
the case(size of that partion in my case is 18gb)
Also whats weird is why its complaining about /global_vm , i guess it should 
use vpp-unittest-TestJVppCore-***-global_vm
created by the vpp started by make test.

Does anybody have a suggestion what i'm doing wrong ?


[banner11]



Jan Srnicek
Engineer - Software
jsrni...@cisco.com
Tel:

Cisco Systems, Inc.



Slovakia
cisco.com


[http://www.cisco.com/assets/swa/img/thinkbeforeyouprint.gif]Think before you 
print.

This email may contain confidential and privileged material for the sole use of 
the intended recipient. Any review, use, distribution or disclosure by others 
is strictly prohibited. If you are not the intended recipient (or authorized to 
receive for the recipient), please contact the sender by reply email and delete 
all copies of this message.
Please click 
here for 
Company Registration Information.


___
vpp-dev mailing list
vpp-dev@lists.fd.io
https://lists.fd.io/mailman/listinfo/vpp-dev

[vpp-dev] Building router plugin

2017-03-24 Thread Łukasz Chrustek
Hi,

Can You advice what is the proper way for building router plugin now ?

I'm trying to build this plugin as stated in README, but I get:

# ./bootstrap.sh

Saving PATH settings in /git/vpp/build-root/path_setup
Source this file later, as needed
Compile native tools
 Arch for platform 'native' is native 
 Finding source for tools 
 Makefile fragment found in /git/vpp/build-root/packages/tools.mk 
 Source found in /git/vpp/src 
 Configuring tools: nothing to do 
 Building tools: nothing to do 
 Installing tools: nothing to do 

# make V=0 PLATFORM=vpp TAG=vpp_debug router-install
 Arch for platform 'vpp' is native 
 Finding source for vppinfra 
 Package vppinfra not found with path /git/vpp 
Makefile:780: recipe for target 'vppinfra-find-source' failed
make: *** [vppinfra-find-source] Error 1

compilation  of  vpp is working fine, but not from /git/vpp/build-root
but from /git/vpp.

Regards
Luk

___
vpp-dev mailing list
vpp-dev@lists.fd.io
https://lists.fd.io/mailman/listinfo/vpp-dev