build-root/vagrant/Vagrantfile
was always mounting the vpp into /vpp
Now rather than cloning it and building,
we just use it as mounted.
In order to let folks know what happened,
a README.moved is copied into the ~/git/vpp
so folks know what happened.
In addition to make it easier for folks
to do commits from withing the vagrant,
we install git-review, and copy in the
users .gitconfig and .gnupg directory.
A couple of notes about this. VMWare goes much
much faster in all cases. Virtualbox is a
bit slower in the very first run (without ccache).
One of the benefits of using the mounted /vpp though
is that after your first vagrant up, you always
have access to the .ccache, as it lives
outside the vagrant, and so in steady state
everything is faster.
Change-Id: I2cd2c28181b3d7e664240dfe2249b5be3f1b9241
Signed-off-by: Ed Warnicke <eaw@cisco.com>
Limit buffer tracing to 50 in order to limit large output, unless
the user over rides the max "sh trace max <number>".
Add trace filtering, to be able to only trace packets that were
processed by a specific node or exclude packets processed by a node.
Example, only include packets processed by error-drop:
# trace filter include error-drop 1
# trace add dpdk-input 1000000
<wait for packets, to come in>
# show trace
Change-Id: I5d9e15d2268ea55e6ef87b2b8756049c49b2791b
Signed-off-by: Todd Foggoa <tfoggoa@cisco.com>
Add some symbols which are useful for clients of the IP layer.
Change-Id: I26599a67bb9f89c883ac4ea6e630111dfac5e2c5
Signed-off-by: Kevin Paul Herbert <kph@cisco.com>
- simple patch before extending CLI for next encap tunnel lookup
Change-Id: I56060185599252a1ae83cc162963b5fd5bc1b324
Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
vec_add1() seems to be allocating memory which we do not free. Correct
that.
Change-Id: I25dca1871121cdd11a218ff2289a3c51b42e843b
Signed-off-by: Robert Varga <nite@hq.sk>
Instead of performing getting the elements, memcpy()ing them and the
releasing, use GetByteArrayRegion().
Change-Id: I20ef181df214ac4fdcaff5a64b89ef4f879078f8
Signed-off-by: Robert Varga <nite@hq.sk>
vlib does not allow concurrent connections, hence make sure the Java API
does not allow the user to instantiate them.
Also hide native methods from direct user invocation behind defensive
methods also detect if a particular connection has been terminated.
Disconnect is hidden befind standard close() method, as specified by
AutoCloseable.
Change-Id: Ib5079200ae4216cad84358a2174a41e90271a30b
Signed-off-by: Robert Varga <nite@hq.sk>
- fixes issue with vagrant reload --provision not updating clone of clone
Change-Id: I506d4cbca90b30bf787c1be7e4ad39d748ea7f5b
Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
result is not expected. ie don't get updates
- only applied ubuntu changes in this patch.
Change-Id: I194f5120734d63f1b815f86bb510f0c0981dd89b
Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
Class fields initialized via the constructor should be final.
Also mark leaking byte[] instances with a FIXME. API users consider them
immutable, but they are vulnerable to System.arrayCopy().
Also fixes constructor arguments so they do not use underscores, which
is prohibited by Java 9.
Change-Id: I393d55ed7234149cb3604bc92b2cb1d1207c55dc
Signed-off-by: Robert Varga <nite@hq.sk>
This patch introduces an initialization framework, which tracks required
references to Java classes and methods.
It works by declaring classes and their constructor signatures, which
are linked into a singly-linked list when the .so initializers are run.
Once JNI_OnLoad() is invoked, this list is walked and all classes and
their initializers are resolved. These are then used while the library
remains loaded. Once JNI_OnUnload() is called, global references are
released, so we can cleanly unload.
The class declaration results in static utility objects being emitted in
the scope of the declaration, hence to allocate an object or an array of
objects is done via simple calls.
Change-Id: I41984c13756339364dbcbf0144b947627e8e4fe1
Signed-off-by: Robert Varga <nite@hq.sk>
Failing to add these means that we rely on system headers, not the ones
provided in JAVA_HOME.
Change-Id: I612bd716590efbabec26e0ba83eb98f8e90b3255
Signed-off-by: Robert Varga <nite@hq.sk>
This was left out of 8f9e7d43d8b8e5495477e3a587f78409a4cf8808
inadvertently. Remove it now.
Change-Id: I79625aeba400ccfdcfd972f454abd043c2537960
Signed-off-by: Kevin Paul Herbert <kph@cisco.com>
The gmond module (gmod) isn't built by default, pending CentOS
packaging work.
Change-Id: I78493a60f431cf9924a28d31ba29423a03aa79b3
Signed-off-by: Dave Barach <dave@barachs.net>
Add a field in the buffer header for transmit time. High-level protocols
need a consistent way to do this.
Change-Id: Ifff60ee5e32eed7aa6f6ae8e6fb1dd9d7870e9ee
Signed-off-by: Kevin Paul Herbert <kph@cisco.com>
Add some more ASSERTs to track down improper frees.
Change-Id: I2bd4b69fb14f522c82e6006131b6ad982f6f7e6b
Signed-off-by: Kevin Paul Herbert <kph@cisco.com>
Add explicit support for incremental operations which may be on
byte boundaries and misaligned. Since this is a memcpy() like function,
it needs to be robust in all byte operations.
Add code to perform the checksum 16 bits at a time when the destination
buffer pointer is not naturally aligned. The previous code did support
misaligned source data (via clib_mem_unaligned()), but didn't properly
align the destination pointer.
It would be possible to further optimize this by adding an optimzed
move operation where the source is aligned on natural boundaries.
Look at this as we optimize this function. At this point, I am
concentrating on correctness.
Change-Id: I2b0fd4795ec5c0ca294a733159c7355b54177690
Signed-off-by: Kevin Paul Herbert <kph@cisco.com>