Enable Doxygen parsing of DPDK example files so that the example
code is linked to and from the API docs. This allows the reader
to see examples of API usage in context by following a link.
Signed-off-by: John McNamara <john.mcnamara@intel.com>
Change the Sphinx default theme from "alabaster" to the ReadTheDocs
theme. See for example:
http://dpdk.readthedocs.org/en/latest/
This looks better for technical documentation and in particular
it has a 80 char wide verbatim block rendering.
Also add logos for the html and latex docs.
Signed-off-by: John McNamara <john.mcnamara@intel.com>
Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
Remove requirement for occasionally hard to find/install
DejaVuSansMono font. It isn't gnerally required anyway.
The default mono font is sufficient.
Signed-off-by: John McNamara <john.mcnamara@intel.com>
Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
Turn off the permalink symbol in the Sphinx generated html docs.
This is a distracting mouseover when reading the docs and links
to sections can still be obtained from the doc index.
Signed-off-by: John McNamara <john.mcnamara@intel.com>
This project is missing a proper README which is used in
other projects and some git visualization services.
Only a starting point, please feel free to edit.
To keep the file short and current, I avoided putting any specific
information about features and versions.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: John McNamara <john.mcnamara@intel.com>
Add BNX2X PMD version, print it as part of adapter info.
Adjusted print adapter info output formatting.
This patch versions BNX2X PMD at 1.0.0.
Signed-off-by: Rasesh Mody <rasesh.mody@qlogic.com>
The periodic debug option is used to collect periodic
events like statistics, register access etc and won't
interfere with user-level messages.
Signed-off-by: Harish Patil <harish.patil@qlogic.com>
Signed-off-by: Rasesh Mody <rasesh.mody@qlogic.com>
Fix for the following clang build error:
drivers/net/bnx2x/elink.c:10384:41: error: shifting a
negative signed value is undefined [-Werror,-Wshift-negative-value]
vars->eee_status &= ~SHMEM_EEE_1G_ADV <<
~~~~~~~~~~~~~~~~~ ^
Signed-off-by: Harish Patil <harish.patil@qlogic.com>
SR-IOV is supported using bnx2x poll mode driver running as VF driver and
native linux driver running as PF (in host/hypervisor). There is no issue
while running with the PF driver which is at the base version as that of
PMD. However, there is a compatibility issue between newer out-of-box PF
drivers with older VF driver. So the newer VFs would also need to send
BNX2X_VF_TLV_PHYS_PORT_ID (among other TLVs) to differentiate between
newer and older VFs.
Signed-off-by: Harish Patil <harish.patil@qlogic.com>
If you stop and start the driver, the rx queue will have the previous
index values when programming the adapter. Therefore, we should always
reset the queue indices when the rx ring is setup. Note: We need to
clear (write) the status block's completion queue index since it is
possibly in a read cache.
Tidy some init code to make it clearer what the defaults are.
Signed-off-by: Chas Williams <3chas3@gmail.com>
When refilling freelists for the first time and if it fails, the rxq
is freed and returns ENOMEM. There is a check while freeing hardware rxq
to pass freelist context id if the freelist exists or 0xffff otherwise.
The error path is only reached if freelist exists. So, fix is to remove
the useless check for freelist existence.
Coverity issue: 107108
Fixes: 92c8a63223e5 ("cxgbe: add device configuration and Rx support")
Reported-by: John McNamara <john.mcnamara@intel.com>
Signed-off-by: Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>
Signed-off-by: Kumar Sanghvi <kumaras@chelsio.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
In eal_intr_proc_rxtx_intr, negative value may be used as argument to
a function expecting a positive value. If 'read' returns EAGAIN as
example, the bytes_read updates to a negative value which continue
be passed as argument for the next 'read'.
Coverity issue: 107115
Function read(fd, &buf, bytes_read) returns a negative number.
Assigning: signed variable bytes_read = read.
CID 107115 (#1 of 1): Argument cannot be negative
(NEGATIVE_RETURNS) bytes_read is passed to a parameter
that cannot be negative.
bytes_read = read(fd, &buf, bytes_read);
Fixes: c9f3ec1a0f3f ("eal/linux: add Rx interrupt control function")
Signed-off-by: Cunming Liang <cunming.liang@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Acked-by: David Marchand <david.marchand@6wind.com>
examples/netmap_compat/bridge/../lib/compat_netmap.c:880:41:
error: ‘POLLRDNORM’ undeclared (first use in this function)
The root casue is POLLRDNORM is more-or-less nonstandard, and it
depends on macro "__USE_XOPEN".
In suse11 sp3, POLLRDNORM will not be defined because "__USE_XOPEN"
issue.
This patch add check if it is not defined, define it.
Fixes: 06371afe394d (examples/netmap_compat: import netmap compatibility example)
Signed-off-by: Michael Qiu <michael.qiu@intel.com>
The patch fixes an inverted return value in the
cond_destroy and cond_init APIs of the pthread shim
example.
These APIs are now demonstrated in the sample app by
having the mutexes and condition variables
explicitly destroyed before the appplication terminates.
Fixes: 433ba6228f9a77a9b5f4 ("add pthread_shim app")
Signed-off-by: Ian Betts <ian.betts@intel.com>
When relpath.sh is called from install target with prefix set, eg
"make install DESTDIR=/tmp/dpdk-root prefix=/usr", the prefix
from the environment leaks to relpath.sh internal helper variable and
causes incorrect symlinks to be generated in sdk $(targetdir):
include -> /usr../../../include/dpdk
lib -> /usr../../../lib
Initialize the local variable to empty to avoid side-effects from
environment.
Fixes: 6b62a72a70d0 ("mk: install a standard cutomizable tree")
Signed-off-by: Panu Matilainen <pmatilai@redhat.com>
Cryptodev was marked experimental and mbuf_offload depends on it.
The mbuf_offload library is one of the crypto area which requires
some discussions before having a stable API.
The experimental mark is also added to rte_cryptodev_configure()
to be sure one cannot miss it.
Fixes: 66874e55f550 ("cryptodev: mark experimental state")
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
This commit removes the performance thread example from
examples/Makefile, and marks the example as "experimental"
in the release note, and it its API headers files.
Signed-off-by: Ian Betts <ian.betts@intel.com>
This commit adds an example that illustrates how to implement
a pthread shim with the lthread subsystem included in the
performance thread example application.
Signed-off-by: Ian Betts <ian.betts@intel.com>
Acked-by: Tomasz Kulasek <tomaszx.kulasek@intel.com>
This commit adds an L3 forwarding application to the performace-thread
example.
Signed-off-by: Ian Betts <ian.betts@intel.com>
Acked-by: Tomasz Kulasek <tomaszx.kulasek@intel.com>
This commit adds the lightweight thread subsystem used by the
performance-thread sample applications.
Signed-off-by: Ian Betts <ian.betts@intel.com>
Acked-by: Tomasz Kulasek <tomaszx.kulasek@intel.com>
This commit adds the sample application user guide for the
performance thread sample application.
Signed-off-by: Ian Betts <ian.betts@intel.com>
Acked-by: Tomasz Kulasek <tomaszx.kulasek@intel.com>
Add #ifndef MAX_QUEUES to change MAX_QUEUES at compile time if needed.
Change MAX_QUEUES from 512 to 128 to reduce the number of hugepages
required by the vhost-switch program.
To change MAX_QUEUES add '-D MAX_QUEUES=512' to the EXTRA_CFLAGS variable,
before building the application.
Signed-off-by: Bernard Iremonger <bernard.iremonger@intel.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Fix Coverity warning with potential 32-bit integer multiplication overflow
where final result is expected to be 64-bit.
>>> CID 120144 (#1 of 1): Unintentional integer overflow (OVERFLOW_BEFORE_WIDEN)
Fixes: e64833f2273a ("examples/l2fwd-keepalive: add sample application")
Signed-off-by: Remy Horton <remy.horton@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Fix Coverity warning with uninitialised field in structure being used.
Zero out all the other unused ones.
>>> CID 120413 (#1 of 1): Uninitialized scalar variable (UNINIT)
Fixes: bda68ab9d1e7 ("examples/ethtool: add user-space ethtool sample application")
Signed-off-by: Remy Horton <remy.horton@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
IEEE1588 forwarding mode uses same port to receive and transmit packets.
In this mode, the MAC address in the packets are not touched,
and therefore, packets could be sent with the same destination
MAC address as the MAC address of the port that is transmitting,
which causes the packet to be dropped in some NICs.
In order to avoid this scenario, MAC addresses are swapped
before packet is sent out.
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
It corrects the input set values to be set for vlan or
double vlan.
Fixes: 98f055707685 ("i40e: configure input fields for RSS or flow director")
Signed-off-by: Helin Zhang <helin.zhang@intel.com>
The current implementation of VFIO will not with the new no-IOMMU mode
in 4.4 kernel. The original code assumed that IOMMU group zero would
never be used. Group numbers are assigned starting at zero, and up
until now the group numbers came from the hardware which is likely
to use group 0 for system devices that are not used with DPDK.
The fix is to allow 0 as a valid group and rearrange code
to split the return value from the group value.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
Fixes following error on gcc 4.4.7:
examples/vhost/main.c: In function ‘new_device’:
rte_ring.h:740: error:
dereferencing pointer ‘mbuf.486’ does break strict-aliasing rules
examples/vhost/main.c:1503: note: initialized from here
...
rte_ring.h:740: error:
dereferencing pointer ‘({anonymous})’ does break strict-aliasing rules
examples/vhost/main.c:1804: note: initialized from here
Fixes: d19533e8 ("examples/vhost: copy old vhost example")
Reported-by: Qian Xu <qian.q.xu@intel.com>
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
Acked-by: Huawei Xie <huawei.xie@intel.com>
Compile ip_pipeline in CentOS 6.5 with kernel 2.6.32-431
GCC 4.4.7, will lead below error:
pipeline_routing_be.c: In function ‘pipeline_routing_msg_req_arp_add_handler’:
pipeline_routing_be.c:1817: error: dereferencing pointer ‘({anonymous})’
does break strict-aliasing rules
This because the code break strict-aliasing rule.
The patch solve this issue.
Fixes: 0ae7275810f1 (examples/ip_pipeline: add more functions to routing pipeline)
Signed-off-by: Michael Qiu <michael.qiu@intel.com>
Acked-by: Jasvinder Singh <jasvinder.singh@intel.com>
This patch fixes build errors on linux kernels such as
SuSE 11-SP2/3(64 bits), etc.
Error Log:
error: implicit declaration of function 'WIFEXITED'
error: implicit declaration of function 'WEXITSTATUS'
Fixes: ed0b2d020159 ("examples/ip_pipeline: add more ports")
Signed-off-by: Jasvinder Singh <jasvinder.singh@intel.com>
Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>