Age | Commit message (Collapse) | Author | Files | Lines |
|
Change-Id: I6e6940c8467a331b37da153bb8a2154c1d165261
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
.../packages/dpdk.mk must not set $(TARGET). The Makefile fragment
really only needed to use a temporary variable to control the
dpdk Makefile. Simple fix: set $(DPDK_PLATFORM_TARGET) instead.
Change-Id: Ieb61b603bc36ed708a1b1237dc6bc503e90a0b7b
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
* compiler -march= parameter is changed from native to corei7
so code is always genereted with instructions which are available
on the Nehalem microarchitecture (up to SSE4.2)
* compiler -mtune= parameter is added so code is optimized for
corei7-avx which equals to Sandy Bridge microarchitecture
* set of macros is added which allows run-time detection of available
cpu instructions (e.g. clib_cpu_supports_avx())
* set of macros is added which allows us to clone graph node funcitons
where cloned function is optmized for different microarchitecture
Those macros are using following attributes:
__attribute__((flatten))
__attribute__((target("arch=core-avx2)))
I.e. If applied to foo_node_fn() macro will generate cloned
functions foo_node_fn_avx2() and foo_node_fn_avx512() (future)
It will also generate function void * foo_node_fn_multiarch_select()
which detects available instruction set and returns pointer to the
best matching function clone.
Change-Id: I2dce0ac92a5ede95fcb56f47f3d1f3c4c040bac0
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Allows DPDK parameters to be overriden from the platform
definition.
$(PLATFORM)_dpdk_arch = "armv7a"
$(PLATFORM)_dpdk_target = "arm-armv7a-linuxapp-gcc"
$(PLATFORM)_dpdk_make_extra_args = "CONFIG_RTE_EAL_IGB_UIO=y"
Change-Id: I8c0f233942744cb82ca3ed2d65e33acee845cb4e
Signed-off-by: Christophe Fontaine <christophe.fontaine@qosmos.com>
|
|
Change-Id: Ia81713a72e3c48b1d97bbf3f20a908bbc4ebd3b1
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
See: https://wiki.fd.io/view/VPP/Python_API
Change-Id: If135fc32208c7031787e1935b399d930e0e1ea1f
Signed-off-by: Ole Troan <ot@cisco.com>
|
|
Change-Id: Ib6a0940e08f9e0983f3ec70f9e8488c2185ca4da
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
gcc version 4.9.2 (Raspbian 4.9.2-10)
Tested on Linux raspberrypi 4.4.6-v7+ #875 SMP Tue Apr 12 16:33:02 BST 2016 armv7l GNU/Linux
CPUs may be little or big endian, detect with gcc flags, not the processor architecture
Add a new flag $(PLATFORM)_uses_openssl which allows to disable the link with openssl lib.
vlib/vlib/threads.c:
startup.conf must:
- specify the heapsize as we don't have hugepages on raspbian
cpu {
main-core 3
}
heapsize 64M
Corrects in various files the assumption uword == u64 and replaces 'u64' cast with 'pointer_to_uword' and 'uword_to_pointer' where appropriate.
256 CPUs may create an OOM when testing with small memory footprint ( heapsize 64M ), allows the number of VLIB_MAX_CPUS to be set in platforms/*.mk
vppinfra/vppinfra/longjmp.S:
ARM - copy r1 (1st parameter of the setjmp call) to r0 (return value)
vppinfra/vppinfra/time.h:
On ARMv7 in AArch32 mode, we can access to a 64bit register to retreive the cycles count.
gcc on rpi only declare ARM_ARCH 6. Override this info, and check if it is possible to use 'mrrc'.
/!\ the time function will NOT work without allowing the user mode access to the PMU.
You may download the source of the kmod here:
https://github.com/christophefontaine/arm_rdtsc
Change-Id: I8142606436d9671a184133b935398427f08a8bd2
Signed-off-by: Christophe Fontaine <christophe.fontaine@qosmos.com>
|
|
Change-Id: I802700ad832de1dc6f4a1981e8985aa6e926c8ad
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Same template should be used for other libs...
Change-Id: Icc771cb6b243d215f30fb51c0dbc028e497a74c6
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
By uncommenting following lines in the build-data/platforms/vpp.mk
VPP links nicely with packaged DPDK 2.2 distributed with
Ubuntu 16.04 LTS.
vpp_uses_external_dpdk = yes
vpp_dpdk_inc_dir = /usr/include/dpdk
vpp_dpdk_lib_dir = /usr/lib
vpp_dpdk_shared_lib = yes
Change-Id: Id5b7d95bac6aa60341933b92e86d949a9abf1a5d
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Change-Id: If3fc88a35bc0b736376113a39667caea42802ea1
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Change-Id: Ie26340141fdbd3256e305ab37f4baa817081bf46
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Change-Id: If07a74afd92196c035d720cedaac36493a09e400
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Standard Ubuntu PowerPC toolchain can be installed with:
apt-get install crossbuild-essential-powerpc
And code can be built with:
make PLATFORM=qppc TAG=qppc ...
Change-Id: I247355fc89fd61aedb8693156e84c454ca86eb75
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Change-Id: Icaa71957f67b923bc9795baa78c7495055615672
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Change-Id: I9fb4f4babecbe02d171f38c4d089634e90141937
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
Change-Id: I9255c75b6c6cbc638cdcc411632a924cb06f28c0
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
Otherwise, autotools can't find libXXX, -lXXX doesn't work, etc.
Change-Id: I9c4c43f795ca872475f65bc0e4494674eaa00576
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
Change-Id: Ia49e9f246e8318ba74195c3397472fb0c102389b
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
Change-Id: I69db06a0b5d5d556c2fd570ea0056bb59d7bc3d6
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
Change-Id: I3144e58f635ef94224387e8729bf8db6aa77a106
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
The gmond module (gmod) isn't built by default, pending CentOS
packaging work.
Change-Id: I78493a60f431cf9924a28d31ba29423a03aa79b3
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
Change-Id: Ia2edd3cee2c25c26c7c47a9023744b97226434c7
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
Change-Id: Ib0a05f9d1b08bacef09f6d7c101391737031ee0d
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
Change-Id: I4af0eb9c09d14a1a9803cf1b25bc3d7b814c82cc
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
This patch provides a pretty simple hack on top
of vpe_api_test to give users a cli interface
to vpp.
Example:
sudo vppctl show api client
sudo vppctl show int
It has the advantage that users can use bash shell scripting
and history with it.
Change-Id: I621dd8e29269e14a83b4887f20adcfbe5f946b99
Signed-off-by: Ed Warnicke <eaw@cisco.com>
|
|
Change-Id: I26b29a0f53f81a28cbf264f5299f9a3978735574
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Change-Id: Ib246f1fbfce93274020ee93ce461e3d8bd8b9f17
Signed-off-by: Ed Warnicke <eaw@cisco.com>
|