32 Commits

Author SHA1 Message Date
Damjan Marion
793b18de05 VPP-58: Fix build on AMD Opteron
Change-Id: Ib3e10fd4c27dde4f90b8d156f0c8547787ad46e2
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-05-16 16:52:55 +02:00
Chris Luke
aa761e1281 VPP-57 Add missing license headers in doc files
Change-Id: Icd1f8952f66d3cee027c59f3148c67f1839de306
Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-05-16 11:48:16 +00:00
Chris Luke
b585097048 VPP-57 Add Doxygen to VPP
- Configures Doxygen.
- Adds a source filter to do magic on our use of the preprocessor to do
  constructor stuff to make Doxygen grok it better.
- Adds a convenience helper to the root Makefile.
- Adds a README.md to the root directory (and which Doxygem uses as its
  "mainpage".
- Add several other documentative files.
- Currently using SVG for call graphs, though this may have a
  load-time performance impact in browsers.

Change-Id: I25fc6fb5bf634319dcb36a7f0e32031921c125ac
Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-05-13 17:23:36 +00:00
Damjan Marion
6b1d7c55d6 Make automake silent rules default
Change-Id: Ia504ccdac1deac20f20cf7fb76f78b2d8c505474
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-04-26 19:36:59 +00:00
Damjan Marion
f1213b8277 Add clib_memcpy macro based on DPDK rte_memcpy implementation
Change-Id: I22cb443c4bd0bf298abb6f06e8e4ca65a44a2854
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-04-22 17:29:47 +02:00
Damjan Marion
bd4b590561 Add Broadwell-EP/EX to the uarch list
Change-Id: I2ab84846ac88d3170b8c847914749e2a728dfa2b
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-04-21 14:03:55 +00:00
Christophe Fontaine
fef15b4bb8 Add support for AArch32
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>
2016-04-18 13:20:57 +00:00
Florin Coras
e10e372e5a Fix vppinfra unit tests
"make check" in build-root/build-$tag-$arch/vppinfra should now work on a
machine with 3G of spare memory

Change-Id: Ie6a22e8496b56b93aa90fdc81e3e0c10dc7514fb
Signed-off-by: Florin Coras <fcoras@cisco.com>
2016-04-14 14:09:49 +00:00
Damjan Marion
c47e979674 Add configure option to enable building unit tests
Same template should be used for other libs...

Change-Id: Icc771cb6b243d215f30fb51c0dbc028e497a74c6
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-04-11 13:03:30 +00:00
Dave Barach
e5389bb053 event logger skeletons, improve debug CLI
Change-Id: Ieb2e4043fc7bc3b4a5436a7a6aa35f573d8d4506
Signed-off-by: Dave Barach <dave@barachs.net>
2016-03-28 17:12:36 -04:00
Dave Barach
fb6e59d839 Improve main-loop event-logs
Change-Id: I984debeffe0dce36c9e7ab963f25d862cc7550cc
Signed-off-by: Dave Barach <dave@barachs.net>
2016-03-26 18:45:52 -04:00
Dave Barach
dbf19ca7f9 Make adjacencies shareable
Change-Id: I620871ca715b751d2e487f37341b7118797c9176
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-03-18 12:59:51 +01:00
Damjan Marion
b8abf877ba Declare node, hw_interface_class and device_class instances as external
This fixes issue observed on Ubuntu 16.04 where
dynamic loader is not finding correct instance of
specific structure.

Change-Id: I618d0933c7e171b8a9b40495b36894785af7790a
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-03-14 20:43:12 +01:00
Jean-Mickael Guerin
8e94c2a080 vppinfra: remove generated config.h.in
Change-Id: I04f53789bf1f39fdf16bc813280b24144fedd020
Signed-off-by: Jean-Mickael Guerin <jean-mickael.guerin@6wind.com>
2016-03-04 19:23:07 +00:00
Damjan Marion
522e4864b9 Add CPU detection functions
Change-Id: Id7ea0410d6a789000c747c36a7e50076e31dc29a
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-03-04 15:02:27 +01:00
Damjan Marion
7e437bce90 Use CRC32 instruction only when build for SSE4.2 enabled platforms
This fixes SIGILL crash observed on Penryn CPU

Change-Id: I960878d88f0f088847d4d86605ef082f6600e2c7
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-03-03 18:42:44 +01:00
Dave Barach
8a4a781e96 -O3 warnings be gone
Note that compiling -O3 doesn't improve performance as of this
writing, might as well clean up warnings in any event.

Change-Id: Ic2f4982d12fbbf36f5324075183982731759dc94
Signed-off-by: Dave Barach <dave@barachs.net>
2016-02-29 09:45:28 -05:00
Damjan Marion
ce8debfe0f Increase number of per-cpu mheaps to 256
It also includes check to ensure that number of
per-cpu mheaps is not lower than number of cpus.

Change-Id: Ibc68b34dda130f922243f9ea15b03e44bbcac269
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-02-16 17:50:48 +00:00
Damjan Marion
d0386374d6 Remove vec_sort macro
vec_sort macro was using gcc proprietary nested functions that
require a executable stack and they are considered as unsafe.
Also, nested functions are not supported by other compilers.
vec_sort_with_function() should be used instead.

Change-Id: I05959da63d222ec71c090ba63420b427ce10c79b
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-02-16 17:36:49 +01:00
Damjan Marion
14a44d37a3 Use vppinfra bitmap for dpdk coremask
Change-Id: Iec5ebadf120f742f43a681c4d394aa97ad2ae1e1
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-02-11 15:02:33 +00:00
Dave Barach
61efa140b1 aarch64 CPU arch / ThunderX platform initial support
Change-Id: Ia2edd3cee2c25c26c7c47a9023744b97226434c7
Signed-off-by: Dave Barach <dave@barachs.net>
2016-01-22 08:23:27 -05:00
Dave Barach
bfdedbd5a3 PowerPC64-be arch support. Qemu ("qppc") platform support.
Change-Id: Ib0a05f9d1b08bacef09f6d7c101391737031ee0d
Signed-off-by: Dave Barach <dave@barachs.net>
2016-01-21 12:33:07 +00:00
Dave Barach
2eb349224d Merge "Fix bitmap list parsing" 2016-01-19 23:15:51 +00:00
Dave Barach
2bc1ebaf38 Clean up comment
Change-Id: I487321624d3625e32e661ca378716ec083ce3ce2
Signed-off-by: Dave Barach <dave@barachs.net>
2016-01-19 15:10:35 -05:00
Damjan Marion
75d1f2404d Fix bitmap list parsing
Fixes "cpu_config: no such thread type 'corelist-workers'" issue

Change-Id: Ic0309ee62859ac73fd58c57b5f630aff5daf1775
Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-01-19 14:10:52 +01:00
Damjan Marion
2c29d75021 Fix warnings/errors reported by clang
Change-Id: Ifb2de64347526e3218e22067452f249ff878fd32
Signed-off-by: Damjan Marion <damarion@cisco.com>
2015-12-18 13:31:56 +01:00
Dave Barach
7210e9470e Remove autotools generated products
Change-Id: I7f23b8b8e5136cb56768bac3a7473e6df5ee4993
Signed-off-by: Dave Barach <dave@barachs.net>
2015-12-15 19:06:39 -05:00
Dave Wallace
317be03492 Merge "replacing all vec_sort() invocations to vec_sort_with_function()" 2015-12-15 13:22:37 +00:00
Damjan Marion
29b6af9f97 Remove vppversion subtree, move elftool to vppinfra
Change-Id: I26b29a0f53f81a28cbf264f5299f9a3978735574
Signed-off-by: Damjan Marion <damarion@cisco.com>
2015-12-15 10:07:31 +01:00
Matus Fabian
d2dc3df90d replacing all vec_sort() invocations to vec_sort_with_function()
Change-Id: I05895827ed52be292112484cee7d0a2591b67335
Signed-off-by: Matus Fabian <matfabia@cisco.com>
2015-12-15 00:09:46 +01:00
Dave Barach
63a254f37d Reenable memory allocator small-object cache, disabled by mistake.
Change-Id: I006282fd3991f7ba7b8315670724c065bd71a671
Signed-off-by: Dave Barach <dave@barachs.net>
2015-12-12 10:47:01 -05:00
Ed Warnicke
cb9cadad57 Initial commit of vpp code.
Change-Id: Ib246f1fbfce93274020ee93ce461e3d8bd8b9f17
Signed-off-by: Ed Warnicke <eaw@cisco.com>
2015-12-08 15:47:27 -07:00