Yuanhan Liu [Tue, 2 Feb 2016 13:48:19 +0000 (21:48 +0800)]
virtio: support specification 1.0
Modern (v1.0) virtio pci device defines several pci capabilities.
Each cap has a configure structure corresponding to it, and the
cap.bar and cap.offset fields tell us where to find it.
Firstly, we map the pci resources by rte_eal_pci_map_device().
We then could easily locate a cfg structure by:
cfg_addr = dev->mem_resources[cap.bar].addr + cap.offset;
Therefore, the entrance of enabling modern (v1.0) pci device support
is to iterate the pci capability lists, and to locate some configs
we care; and they are:
- common cfg
For generic virtio and virtqueue configuration, such as setting/getting
features, enabling a specific queue, and so on.
- nofity cfg
Combining with `queue_notify_off' from common cfg, we could use it to
notify a specific virt queue.
- device cfg
Where virtio_net_config structure is located.
- isr cfg
Where to read isr (interrupt status).
If any of above cap is not found, we fallback to the legacy virtio
handling.
If succeed, hw->vtpci_ops is assigned to modern_ops, where all
operations are implemented by reading/writing a (or few) specific
configuration space from above 4 cfg structures. And that's basically
how this patch works.
Besides those changes, virtio 1.0 introduces a new status field:
FEATURES_OK, which is set after features negotiation is done.
Last, set the VIRTIO_F_VERSION_1 feature flag.
Signed-off-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
Tested-by: Qian Xu <qian.q.xu@intel.com>
Reviewed-by: Tetsuya Mukawa <mukawa@igel.co.jp>
Tested-by: Tetsuya Mukawa <mukawa@igel.co.jp>
Acked-by: Huawei Xie <huawei.xie@intel.com>
Yuanhan Liu [Tue, 2 Feb 2016 13:48:18 +0000 (21:48 +0800)]
pci: export device mapping functions
Normally we could set RTE_PCI_DRV_NEED_MAPPING flag so that eal will
invoke pci_map_device internally for us. From that point view, there
is no need to export pci_map_device.
However, for virtio pmd driver, which is designed to work without
binding UIO (or something similar first), pci_map_device() will fail,
which ends up with virtio pmd driver being skipped. Therefore, we can
not set RTE_PCI_DRV_NEED_MAPPING blindly at virtio pmd driver.
Therefore, this patch exports pci_map_device, and let virtio pmd call
it when necessary.
Signed-off-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
Tested-by: Santosh Shukla <sshukla@mvista.com>
Tested-by: Qian Xu <qian.q.xu@intel.com>
Reviewed-by: Tetsuya Mukawa <mukawa@igel.co.jp>
Tested-by: Tetsuya Mukawa <mukawa@igel.co.jp>
Acked-by: David Marchand <david.marchand@6wind.com>
Acked-by: Huawei Xie <huawei.xie@intel.com>
Yuanhan Liu [Tue, 2 Feb 2016 13:48:17 +0000 (21:48 +0800)]
virtio: retrieve header size from device setting
The mergeable virtio net hdr format has been the standard and the
only virtio net hdr format since virtio 1.0. Therefore, we can
not hardcode hdr_size to "sizeof(struct virtio_net_hdr)" any more
at virtio_recv_pkts(), otherwise, there would be a mismatch of
hdr size from rte_vhost_enqueue_burst() and virtio_recv_pkts(),
leading a packet corruption.
Instead, we should retrieve it from hw->vtnet_hdr_size; we will
do proper settings at eth_virtio_dev_init() in later patches.
Signed-off-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
Tested-by: Qian Xu <qian.q.xu@intel.com>
Reviewed-by: Tetsuya Mukawa <mukawa@igel.co.jp>
Tested-by: Tetsuya Mukawa <mukawa@igel.co.jp>
Acked-by: Huawei Xie <huawei.xie@intel.com>
Yuanhan Liu [Tue, 2 Feb 2016 13:48:16 +0000 (21:48 +0800)]
virtio: switch to 64 bit features
Switch to 64 bit features, which virtio 1.0 supports.
While legacy virtio only supports 32 bit features, it complains aloud
and quit when trying to setting > 32 bit features.
Signed-off-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
Tested-by: Qian Xu <qian.q.xu@intel.com>
Reviewed-by: Tetsuya Mukawa <mukawa@igel.co.jp>
Tested-by: Tetsuya Mukawa <mukawa@igel.co.jp>
Acked-by: Huawei Xie <huawei.xie@intel.com>
Yuanhan Liu [Tue, 2 Feb 2016 13:48:15 +0000 (21:48 +0800)]
virtio: move left PCI stuff in the right file
virtio_pci.c is a more proper place for pci stuff; virtio_ethdev is not.
Signed-off-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
Tested-by: Qian Xu <qian.q.xu@intel.com>
Reviewed-by: Tetsuya Mukawa <mukawa@igel.co.jp>
Tested-by: Tetsuya Mukawa <mukawa@igel.co.jp>
Acked-by: Huawei Xie <huawei.xie@intel.com>
Yuanhan Liu [Tue, 2 Feb 2016 13:48:14 +0000 (21:48 +0800)]
virtio: introduce PCI implementation structure
Introduce struct virtio_pci_ops, to let legacy virtio (v0.95) and
modern virtio (1.0) have different implementation regarding to a
specific pci action, such as read host status.
With that, this patch reimplements all exported pci functions, in
a way like:
vtpci_foo_bar(struct virtio_hw *hw)
{
hw->vtpci_ops->foo_bar(hw);
}
So that we need pay attention to those pci related functions only
while adding virtio 1.0 support.
This patch introduced a new vtpci function, vtpci_init(), to do
proper virtio pci settings. It's pretty simple so far: just sets
hw->vtpci_ops to legacy_ops as we don't support 1.0 yet.
Signed-off-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
Tested-by: Qian Xu <qian.q.xu@intel.com>
Reviewed-by: Tetsuya Mukawa <mukawa@igel.co.jp>
Tested-by: Tetsuya Mukawa <mukawa@igel.co.jp>
Acked-by: Huawei Xie <huawei.xie@intel.com>
Yuanhan Liu [Tue, 2 Feb 2016 13:48:13 +0000 (21:48 +0800)]
virtio: define offset as size_t type
offset arg of vtpci_read/write_dev_config is derived from offsetof(),
which is of size_t type, instead of uint64_t. So, define it as size_t
type.
Signed-off-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
Tested-by: Qian Xu <qian.q.xu@intel.com>
Reviewed-by: Tetsuya Mukawa <mukawa@igel.co.jp>
Tested-by: Tetsuya Mukawa <mukawa@igel.co.jp>
Acked-by: Huawei Xie <huawei.xie@intel.com>
Yuanhan Liu [Tue, 2 Feb 2016 13:48:12 +0000 (21:48 +0800)]
virtio: do not set vring address again at queue startup
As we have already set up it at virtio_dev_queue_setup(), and a vq
restart will not reset the settings.
Signed-off-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
Tested-by: Qian Xu <qian.q.xu@intel.com>
Reviewed-by: Tetsuya Mukawa <mukawa@igel.co.jp>
Tested-by: Tetsuya Mukawa <mukawa@igel.co.jp>
Acked-by: Huawei Xie <huawei.xie@intel.com>
John McNamara [Mon, 1 Feb 2016 15:24:47 +0000 (15:24 +0000)]
doc: add example text to release notes
Added example text to each of the release notes sections to show
the preferred format.
Signed-off-by: John McNamara <john.mcnamara@intel.com>
Ferruh Yigit [Thu, 28 Jan 2016 12:20:23 +0000 (12:20 +0000)]
eal: move cpu flags out of headers
Move cpu_feature_table array from arch specific rte_cpuflags.h files to
new arch specific rte_cpuflags.c files.
Main motivation is to escape from static variable declarations in
header files. cpu_feature_table has many copies in final binary, even
exist in some object files that does not use this variable at all.
And this can be a sample to create architecture specific source files
and move some functions which are not performance sensitive from
architecture header files to source files.
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
Ferruh Yigit [Thu, 28 Jan 2016 14:31:23 +0000 (14:31 +0000)]
lib: remove keyword extern for functions
Remove "extern" keywords in header files,
the ones for function prototypes
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
Anatoly Burakov [Thu, 28 Jan 2016 11:57:54 +0000 (11:57 +0000)]
vfio: support no-IOMMU mode
This commit is adding a generic mechanism to support multiple IOMMU
types. For now, it's only type 1 (x86 IOMMU) and no-IOMMU (a special
VFIO mode that doesn't use IOMMU at all), but it's easily extended
by adding necessary definitions to eal_vfio.h, and DMA mapping
functions to eal_pci_vfio.c.
Since type 1 IOMMU module is no longer necessary to have VFIO,
we fix the module check to check for vfio-pci instead. It's not
ideal and triggers VFIO checks more often (and thus produces more
error output, which was the reason behind the module check in the
first place), so we compensate for that by providing more verbose
logging, indicating whether VFIO initialization has succeeded or
failed.
Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Signed-off-by: Santosh Shukla <sshukla@mvista.com>
Tested-by: Santosh Shukla <sshukla@mvista.com>
Michael Qiu [Thu, 28 Jan 2016 07:30:34 +0000 (15:30 +0800)]
eal/x86: fix build with gcc 5.3.1
In fedora 22 with GCC version 5.3.1, when compile,
will result an error:
include/rte_memcpy.h:309:7: error: "RTE_MACHINE_CPUFLAG_AVX2"
is not defined [-Werror=undef]
#elif RTE_MACHINE_CPUFLAG_AVX2
Fixes:
9484092baad3 ("eal/x86: optimize memcpy for AVX512 platforms")
Signed-off-by: Michael Qiu <michael.qiu@intel.com>
Acked-by: Zhihong Wang <zhihong.wang@intel.com>
Zhihong Wang [Mon, 18 Jan 2016 03:05:13 +0000 (22:05 -0500)]
app/test: adjust alignment unit for memcpy performance
Decide alignment unit for memcpy perf test based on predefined macros.
Signed-off-by: Zhihong Wang <zhihong.wang@intel.com>
Zhihong Wang [Mon, 18 Jan 2016 03:05:14 +0000 (22:05 -0500)]
eal/x86: tune memcpy for platforms without AVX512
For prior platforms, add condition for unalignment handling, to keep this
operation from interrupting the batch copy loop for aligned cases.
Signed-off-by: Zhihong Wang <zhihong.wang@intel.com>
Zhihong Wang [Mon, 18 Jan 2016 03:05:12 +0000 (22:05 -0500)]
eal/x86: optimize memcpy for AVX512 platforms
Implement AVX512 memcpy and choose the right implementation based on
predefined macros, to make full utilization of hardware resources and
deliver high performance.
In current DPDK, memcpy holds a large proportion of execution time in
libs like Vhost, especially for large packets, and this patch can bring
considerable benefits for AVX512 platforms.
The implementation is based on the current DPDK memcpy framework, some
background introduction can be found in these threads:
http://dpdk.org/ml/archives/dev/2014-November/008158.html
http://dpdk.org/ml/archives/dev/2015-January/011800.html
Signed-off-by: Zhihong Wang <zhihong.wang@intel.com>
Zhihong Wang [Mon, 18 Jan 2016 03:05:10 +0000 (22:05 -0500)]
eal/x86: identify AVX512 CPU flag
Read CPUID to check if AVX512 is supported by CPU.
Signed-off-by: Zhihong Wang <zhihong.wang@intel.com>
Zhihong Wang [Mon, 18 Jan 2016 03:05:11 +0000 (22:05 -0500)]
mk: predefine AVX512 macro for compiler
Predefine AVX512 macro if AVX512 is enabled by compiler.
Signed-off-by: Zhihong Wang <zhihong.wang@intel.com>
Zhihong Wang [Wed, 30 Dec 2015 21:59:51 +0000 (16:59 -0500)]
examples/l3fwd: handle SIGINT and SIGTERM
Handle SIGINT and SIGTERM in l3fwd.
Signed-off-by: Zhihong Wang <zhihong.wang@intel.com>
Acked-by: Michael Qiu <michael.qiu@intel.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Zhihong Wang [Wed, 30 Dec 2015 21:59:50 +0000 (16:59 -0500)]
examples/l2fwd: handle SIGINT and SIGTERM
Handle SIGINT and SIGTERM in l2fwd.
Signed-off-by: Zhihong Wang <zhihong.wang@intel.com>
Acked-by: Michael Qiu <michael.qiu@intel.com>
Acked-by: Stephen Hemminger <stephen@networkplumber.org>
Zhihong Wang [Wed, 30 Dec 2015 21:59:49 +0000 (16:59 -0500)]
app/testpmd: handle SIGINT and SIGTERM
Handle SIGINT and SIGTERM in testpmd.
Signed-off-by: Zhihong Wang <zhihong.wang@intel.com>
Acked-by: Michael Qiu <michael.qiu@intel.com>
David Marchand [Fri, 22 Jan 2016 14:06:58 +0000 (15:06 +0100)]
ethdev: move hotplug checks and logs in a common place
Move these error logs and checks on detach capabilities in a common place.
Signed-off-by: David Marchand <david.marchand@6wind.com>
Reviewed-by: Jan Viktorin <viktorin@rehivetech.com>
David Marchand [Fri, 22 Jan 2016 14:06:57 +0000 (15:06 +0100)]
ethdev: remove useless null checks
We are in static functions and those passed arguments can't be NULL.
Signed-off-by: David Marchand <david.marchand@6wind.com>
Reviewed-by: Jan Viktorin <viktorin@rehivetech.com>
David Marchand [Thu, 21 Jan 2016 11:23:19 +0000 (12:23 +0100)]
remove unneeded tests for NULL when freeing
free() already handles NULL pointer.
Signed-off-by: David Marchand <david.marchand@6wind.com>
Zhihong Wang [Sun, 22 Nov 2015 19:13:35 +0000 (14:13 -0500)]
eal: remove unnecessary hugepage zero-filling
The kernel fills new allocated (huge) pages with zeros.
DPDK just has to populate page tables to trigger the allocation.
Signed-off-by: Zhihong Wang <zhihong.wang@intel.com>
Acked-by: Stephen Hemminger <stephen@networkplumber.org>
Zhihong Wang [Sun, 22 Nov 2015 19:13:34 +0000 (14:13 -0500)]
eal: reduce timer initialization time
Changing from 1/2 second to 1/10 doesn't compromise the precision,
and a 4/10 second is worth saving.
Signed-off-by: Zhihong Wang <zhihong.wang@intel.com>
Christian Ehrhardt [Fri, 8 Jan 2016 11:03:01 +0000 (12:03 +0100)]
mk: fix examples install
Depending on non-doc targets being built before and the setting of DESTDIR
the copy of the examples dir being part of install-doc could in some cases
fail with a non existent "$(DESTDIR)$(datadir)" target directory.
Add the conditional rte_mkdir for that to avoid the issue.
Signed-off-by: Christian Ehrhardt <christian.ehrhardt@canonical.com>
Acked-by: Thomas Monjalon <thomas.monjalon@6wind.com>
John McNamara [Fri, 15 Jan 2016 16:35:32 +0000 (16:35 +0000)]
doc: fix navigation levels in html sidebar of guides
Fix issue where the navigation levels weren't displayed in the
html sidebar with the new read_the_docs theme.
This was due to the :titlesonly: directive in the high level
index.rst and also due to a stray newline in the parsed version
number.
Reported-by: Matthew Hall <mhall@mhcomputing.net>
Signed-off-by: John McNamara <john.mcnamara@intel.com>
Wenzhuo Lu [Fri, 20 Nov 2015 07:17:57 +0000 (15:17 +0800)]
ixgbe/base: new FW values
This patch addes some new defines for FW, and includes some minor change.
Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Wenzhuo Lu [Fri, 20 Nov 2015 07:17:46 +0000 (15:17 +0800)]
ixgbe/base: add X550T1 device
Adds a new single-port Sage Pond device X550T1.
Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Wenzhuo Lu [Fri, 20 Nov 2015 07:17:54 +0000 (15:17 +0800)]
ixgbe/base: support new thermal alarm
This patch adds support for the new thermal sensor alarms indication.
Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Wenzhuo Lu [Fri, 20 Nov 2015 07:17:55 +0000 (15:17 +0800)]
ixgbe/base: add new X550 iXFI configuration function
This patch should allow native SPI SFP+ to work as we understand it now.
Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Wenzhuo Lu [Fri, 20 Nov 2015 07:17:52 +0000 (15:17 +0800)]
ixgbe/base: move X550 MDIO clock speed init
The x550 MDIO clock speed must be configured prior to first MDIO read or
write. The default MDIO clock speed is not valid, therefore the driver
is configuring a valid speed prior to reading the copper PHY device id.
Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Wenzhuo Lu [Fri, 20 Nov 2015 07:17:56 +0000 (15:17 +0800)]
ixgbe/base: prevent X550 KR PHY reset in init
This patch removes KR PHY reset from ixgbe_init_phy_ops_X550em. Since
this function is meant to initialize function pointers for detected PHY
type. Internal PHY reset was moved to ixgbe_setup_internal_phy_t_x550em
which will now detect which mode does internal PHY work in, and setup it
as required.
Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Wenzhuo Lu [Fri, 20 Nov 2015 07:17:49 +0000 (15:17 +0800)]
ixgbe/base: support KR mode for X550 link
KR auto-neg mode is what we will be using going forward. The SW
interface for this mode is different than what was used for iXFI.
While debugging, it was determined that the ucode diagnostic was
no longer needed. This code has been removed to simplify the init
flow.
A subtle semaphore error in the CS4227 reset flow was fixed.
Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Wenzhuo Lu [Fri, 20 Nov 2015 07:17:47 +0000 (15:17 +0800)]
ixgbe/base: remove X550 driver config of KX4 PHY
The KX4 PHY will be configured by the NVM image. The driver
had been overwriting this config.
Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Wenzhuo Lu [Fri, 20 Nov 2015 07:17:43 +0000 (15:17 +0800)]
ixgbe/base: avoid needless copper PHY access
Avoid a needless PHY access on copper phys to save the 10ms wait
time for each PHY access. A helper function is introduced to
actually do the register access and process the contents.
Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Wenzhuo Lu [Fri, 20 Nov 2015 07:17:51 +0000 (15:17 +0800)]
ixgbe/base: check MAC type when setting X550 callbacks
Check mac type when accessing iosf registers and using the PHY token
for PHY access.
Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Wenzhuo Lu [Fri, 20 Nov 2015 07:17:45 +0000 (15:17 +0800)]
ixgbe/base: use mac-dependent values
This patch changes code to use registers offsets stored in mvals table
instead of values defined statically.
Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Wenzhuo Lu [Fri, 20 Nov 2015 07:17:50 +0000 (15:17 +0800)]
ixgbe/base: add flow director drop queue
This patch adds ixgbe_set_fdir_drop_queue_82599 for enabling and
setting flow director drop queue, and adds sets drop no match in
ixgbe_init_fdir_perfect_82599 for x550.
Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Wenzhuo Lu [Fri, 20 Nov 2015 07:17:44 +0000 (15:17 +0800)]
ixgbe/base: remove wait and check flow director signature addition
Waiting for FDIRCMD completion is an expensive thing to do in the
transmit hot path. This wait was added to catch problems with perfect
filter rules, and, at least in the Linux driver, there is no error
check anyway, so there is no point to adding the delay. So do not wait
for completion. Change the return of the function to void, since it has
no meaningful return value.
Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Wenzhuo Lu [Fri, 20 Nov 2015 07:17:48 +0000 (15:17 +0800)]
ixgbe/base: add flow control ethertype for filtering
This patch adds the flow control ethertype to the defines for the
ETQF filter list. This only adds the define. Each driver
can add this ethertype to the filter. This is needed to prevent
denial of service by malicious VFs sending out flow control
packets.
Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Wenzhuo Lu [Fri, 20 Nov 2015 07:17:53 +0000 (15:17 +0800)]
ixgbe/base: fix Tx hang in CEE mode
Currently credit_refill and credit_max could be zero for a TC and that
is causing Tx hang for CEE mode configuration, so to fix that have at
min credit assigned to a TC and that is as what IEEE mode already does.
Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Wenzhuo Lu [Fri, 20 Nov 2015 07:17:42 +0000 (15:17 +0800)]
ixgbe/base: update readme
Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
John McNamara [Wed, 16 Dec 2015 10:42:50 +0000 (10:42 +0000)]
doc: fix missing link target in Linux guide
Fix missing link in the Linux GSG, accidentally removed
in previous merge:
WARNING: undefined label: linux_gsg_compiling_dpdk
Fixes:
29c673401c4d ("doc: improve Linux guide layout")
Signed-off-by: John McNamara <john.mcnamara@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
Thomas Monjalon [Thu, 17 Dec 2015 11:11:38 +0000 (12:11 +0100)]
doc: remove DPDK from guide titles
In HTML and PDF guides, it is clear in the header that the doc
is related to the DPDK.
So "DPDK" is redundant and can be removed from FAQ and release notes
titles to improve consistency.
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Thomas Monjalon [Thu, 17 Dec 2015 11:02:29 +0000 (12:02 +0100)]
doc: init next release notes
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Thomas Monjalon [Thu, 17 Dec 2015 11:03:57 +0000 (12:03 +0100)]
version: 2.3.0-rc0
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Thomas Monjalon [Tue, 15 Dec 2015 16:42:32 +0000 (17:42 +0100)]
version: 2.2.0
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Jingjing Wu [Tue, 15 Dec 2015 15:42:30 +0000 (23:42 +0800)]
app/testpmd: fix dead code
Coverity issue (CID 119254): Control flow issues (DEADCODE).
Fixes:
1a572499beb6 ("app/testpmd: setup DCB forwarding based on traffic class")
Signed-off-by: Jingjing Wu <jingjing.wu@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Jingjing Wu [Tue, 15 Dec 2015 16:23:07 +0000 (00:23 +0800)]
i40e: fix flow director index sign
Coverity issue reported like
CID 119268 (#1 of 1): Unintended sign extension
(SIGN_EXTENSION)sign_extension: Suspicious implicit sign extension:
vsi_id with type unsigned short (16 bits, unsigned) is promoted in
vsi_id << 23 to type int (32 bits, signed), then sign-extended to type
unsigned long (64 bits, unsigned). If vsi_id << 23 is greater than
0x7FFFFFFF, the upper bits of the result will all be 1.
Fixes:
88ebc2b7f976 ("i40e: extend flow director to support VF")
Signed-off-by: Jingjing Wu <jingjing.wu@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Jingjing Wu [Tue, 15 Dec 2015 14:52:48 +0000 (22:52 +0800)]
i40e: fix max frame size
In FreeBsd driver, the max frame size is changed to MTU, but not
keep the default value defined in DataSheet. When DPDK runs on that
NIC, the configured value is not expected.
This patch sets the max frame size to default when initialization.
Fixes:
4861cde46116 ("i40e: new poll mode driver")
Signed-off-by: Jingjing Wu <jingjing.wu@intel.com>
Acked-by: Helin Zhang <helin.zhang@intel.com>
Robin Jarry [Tue, 15 Dec 2015 16:05:01 +0000 (17:05 +0100)]
ixgbe: restore imissed stat counter
This counter was left unmodified. Restore it in ixgbe_dev_stats_get.
The ierrors counter still includes imissed for ixgbe. This behaviour is
not consistent amongst all drivers. Another patch may be needed to unify
the meaning of the ierrors counter.
Fixes:
5e50ad1c1b63 ("ixgbe: add specific stats")
Signed-off-by: Robin Jarry <robin.jarry@6wind.com>
Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
Nelio Laranjeiro [Tue, 15 Dec 2015 14:15:12 +0000 (15:15 +0100)]
doc: fix ABI change announce for RETA configuration
Replace "entries" by "queues", it clarifies the case.
Fixes:
bd3cea78abd8 ("doc: announce ABI change for RETA configuration")
Signed-off-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
Acked-by: Helin Zhang <helin.zhang@intel.com>
Rahul Lakkireddy [Tue, 15 Dec 2015 14:10:53 +0000 (19:40 +0530)]
doc: announce ABI change for extending filtering
Current filtering support will be enhanced to accommodate support
for Chelsio T5 hardware filtering support.
Signed-off-by: Rahul Lakkireddy <rahul.lakkireddy@chelsio.com>
Signed-off-by: Kumar Sanghvi <kumaras@chelsio.com>
Acked-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Panu Matilainen [Tue, 15 Dec 2015 13:55:15 +0000 (15:55 +0200)]
scripts: fix ABI validator when revision is a tag
Commit
9cbae2aa64eb managed to break the only previously supported
case where a tag is used as a revision, due to git show output
differing between tags and other objects. The hash is on the last
line of the output in both cases though so just grab that.
Fixes:
9cbae2aa64eb ("scripts: support any git revisions as ABI validation range")
Signed-off-by: Panu Matilainen <pmatilai@redhat.com>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
John McNamara [Tue, 15 Dec 2015 13:34:08 +0000 (13:34 +0000)]
doc: improve Linux guide layout
Fixed Linux Getting Started Guide rst layout to improve
rendering in PDF.
Signed-off-by: John McNamara <john.mcnamara@intel.com>
John McNamara [Tue, 15 Dec 2015 13:47:07 +0000 (13:47 +0000)]
doc: fix -n option in FreeBSD guide
Fix EAL usage to indicate that -n is, now, optional.
Signed-off-by: John McNamara <john.mcnamara@intel.com>
John McNamara [Tue, 15 Dec 2015 11:53:41 +0000 (11:53 +0000)]
doc: improve FreeBSD guide layout
Fixed FreeBSD Getting Started Guide rst layout to improve
rendering in PDF.
Signed-off-by: John McNamara <john.mcnamara@intel.com>
John McNamara [Tue, 15 Dec 2015 11:12:01 +0000 (11:12 +0000)]
doc: remove unused references from faq
The faq refers to Linux*, with an asterisk, without any equivalent
note or footnote. This is a legacy from older versions of the docs.
This update removes it.
Signed-off-by: John McNamara <john.mcnamara@intel.com>
John McNamara [Tue, 15 Dec 2015 10:10:49 +0000 (10:10 +0000)]
doc: clean up index files
Remove **Contents** and |Today| from the rst doc index files since
these are already added automatically to PDF files and are of
little value to the Html files where the Contents is shown in a
sidebar.
Signed-off-by: John McNamara <john.mcnamara@intel.com>
Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
John McNamara [Tue, 15 Dec 2015 09:55:51 +0000 (09:55 +0000)]
doc: fix rendering of design section
Fix minor rst doc issues in the contributing/design.rst doc to correct
rendering of notes and code blocks.
Signed-off-by: John McNamara <john.mcnamara@intel.com>
Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
John McNamara [Tue, 15 Dec 2015 09:38:59 +0000 (09:38 +0000)]
doc: fix spellings
Fix various spellings in rst docs.
Signed-off-by: John McNamara <john.mcnamara@intel.com>
Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
Harry van Haaren [Tue, 15 Dec 2015 12:10:30 +0000 (12:10 +0000)]
doc: add statistics fixes in release notes
This patch updates the release notes to include the changes
made (by me), which were not appropriately documented at the time.
Hence, this patch fixes a number of missing docs,
Fixes:
e81a315e5dc5 ("ixgbe: add MAC short packet discard count to Rx errors")
Fixes:
48dd1a82a615 ("ixgbe: remove mac fault counts from Rx errors")
Fixes:
256ff05a9cae ("ixgbe: fix Rx errors statistics for UDP checksum")
Also, the CRC byte removal was not added to release notes, so
Fixes:
156c5a8cf913 ("e1000: remove CRC size from byte counters")
Fixes:
c03fcee9abbd ("ixgbe: remove CRC size from byte counters")
Fixes:
0834d1524dee ("i40e: remove CRC size from byte counters")
Signed-off-by: Harry van Haaren <harry.van.haaren@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Thomas Monjalon [Tue, 15 Dec 2015 10:27:37 +0000 (11:27 +0100)]
ethdev: remove old flow director symbols
The API has been removed but the symbols were still declared in the map.
Fixes:
a421b86a4a02 ("ethdev: remove old flow director API")
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Thomas Monjalon [Tue, 15 Dec 2015 09:26:20 +0000 (10:26 +0100)]
eal: remove zombie symbols
test_mp_secondary was initially added by mistake.
rte_snprintf has been removed.
Fixes:
9d41beed24b0 ("lib: provide initial versioning")
Fixes:
3185322809c1 ("eal: remove rte_snprintf")
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Thomas Monjalon [Tue, 15 Dec 2015 07:14:55 +0000 (08:14 +0100)]
doc: announce ABI change for link speed
A rework was prepared by Marc Sune:
http://dpdk.org/ml/archives/dev/2015-October/026037.html
The goal is to retrieve the supported link speed of a device
and to allow 100G devices while having a consistent API.
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Acked-by: Olga Shern <olgas@mellanox.com>
Acked-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
Acked-by: Jan Viktorin <viktorin@rehivetech.com>
Acked-by: Matej Vido <matejvido@gmail.com>
Jingjing Wu [Tue, 10 Nov 2015 03:49:46 +0000 (11:49 +0800)]
doc: announce ABI change for tunnel filtering
Signed-off-by: Jingjing Wu <jingjing.wu@intel.com>
Acked-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Acked-by: Helin Zhang <helin.zhang@intel.com>
Acked-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Jingjing Wu [Tue, 10 Nov 2015 03:11:26 +0000 (11:11 +0800)]
doc: announce ABI change for flow director
Signed-off-by: Jingjing Wu <jingjing.wu@intel.com>
Acked-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Acked-by: Helin Zhang <helin.zhang@intel.com>
Acked-by: Andrey Chilikin <andrey.chilikin@intel.com>
Nelio Laranjeiro [Mon, 9 Nov 2015 16:48:20 +0000 (17:48 +0100)]
doc: announce ABI change for RETA configuration
Signed-off-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
Acked-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Acked-by: Olga Shern <olgas@mellanox.com>
Acked-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Nelio Laranjeiro [Mon, 9 Nov 2015 16:48:19 +0000 (17:48 +0100)]
doc: announce ABI change for cmdline buffer size
Current buffer size are not enough for a few testpmd commands.
Signed-off-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Acked-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Acked-by: Olga Shern <olgas@mellanox.com>
John McNamara [Mon, 14 Dec 2015 18:51:16 +0000 (18:51 +0000)]
doc: fix release notes for 2.2
Fix grammar, spelling and formatting of DPDK 2.2 release notes.
Signed-off-by: John McNamara <john.mcnamara@intel.com>
Olga Shern [Mon, 14 Dec 2015 18:28:19 +0000 (20:28 +0200)]
mlx: fix typos and inaccuracies in docs
Signed-off-by: Olga Shern <olgas@mellanox.com>
Harry van Haaren [Mon, 14 Dec 2015 10:03:48 +0000 (10:03 +0000)]
doc: add patch submit cheatsheet
This patch adds the patch submission cheatsheet to
the contributers guide. Both HTML and PDF docs show
the cheatsheet on its own page.
Right clicking the SVG image in the HTML doc allows
for viewing the image on its own, useful for printing
in high quality.
The exact appearance of of the cheatsheet will depend
on the default monospace font installed.
Signed-off-by: Harry van Haaren <harry.van.haaren@intel.com>
John McNamara [Mon, 14 Dec 2015 20:45:54 +0000 (20:45 +0000)]
doc: add contributors guide
Add a document to explain the DPDK patch submission and review process.
Signed-off-by: John McNamara <john.mcnamara@intel.com>
Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
Thomas Monjalon [Sun, 13 Dec 2015 02:00:48 +0000 (03:00 +0100)]
scripts: add help for build testing
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Jasvinder Singh [Mon, 14 Dec 2015 14:20:42 +0000 (14:20 +0000)]
examples/ip_pipeline: add sample configurations and scripts
This patch includes the configuration and script files of the some
applications which can be built using DPDK Packet Framework. A
configuration file defines the application structure which include
packet processing stages (knowns as pipelines), their connectivity
and other parameters necessary to start and run the application. A
script file specifies CLI commands required for loading table entries
(rules/routes, etc). The configuration/script files for simple
applications such as l2 forwarding, l3 forwarding have been presented.
In addition, to demonstrate the use and inter-connectivity of various
pipeline modules (which are avilable in packet framework), a complex
packet processing workload i.e. edge router is considered. The
configuration of the pipeline stages used for upstream and downstream
flow processing has been specified separately in two configuration
files. All these configuration and script files don't affect the
compilation.
Signed-off-by: Jasvinder Singh <jasvinder.singh@intel.com>
Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
Andriy Berestovskyy [Tue, 8 Dec 2015 14:47:03 +0000 (15:47 +0100)]
bonding: fix reordering of IP fragments
Fragmented IPv4 packets have no TCP/UDP headers, so we hashed
random data introducing reordering of the fragments.
Signed-off-by: Andriy Berestovskyy <aber@semihalf.com>
Acked-by: Declan Doherty <declan.doherty@intel.com>
Andriy Berestovskyy [Tue, 8 Dec 2015 13:23:05 +0000 (14:23 +0100)]
bonding: fix LACP mempool size
The following messages might appear after some idle time:
"PMD: Failed to allocate LACP packet from pool"
The fix ensures the mempool size is greater than the sum
of TX descriptors.
Signed-off-by: Andriy Berestovskyy <aber@semihalf.com>
Acked-by: Declan Doherty <declan.doherty@intel.com>
Helin Zhang [Mon, 14 Dec 2015 01:12:34 +0000 (09:12 +0800)]
doc: add known VF issue when PF is reset
Add a known issue to warn that PF reset event/request is not
handled by any VF drivers till 2.2, and which should be fixed
in the future.
Reported-by: David Marchand <david.marchand@6wind.com>
Signed-off-by: Helin Zhang <helin.zhang@intel.com>
Yong Liu [Mon, 14 Dec 2015 02:32:52 +0000 (10:32 +0800)]
examples: skip unsupported ethtool and l3fwd-power on FreeBSD
Userspace ethtool and l3fwd-power not support FreeBSD.
So skip them when build samples.
Signed-off-by: Marvin Liu <yong.liu@intel.com>
Thomas Monjalon [Mon, 14 Dec 2015 00:40:20 +0000 (01:40 +0100)]
version: 2.2.0-rc4
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Jasvinder Singh [Wed, 4 Nov 2015 17:03:46 +0000 (17:03 +0000)]
examples/ip_pipeline: update release notes
This patch updates the release notes with the features
added to ip_pipeline application.
Signed-off-by: Jasvinder Singh <jasvinder.singh@intel.com>
Acked-by: Fan Zhang <roy.fan.zhang@intel.com>
Bernard Iremonger [Thu, 10 Dec 2015 11:23:04 +0000 (11:23 +0000)]
examples/vhost: fix guide
Fix typos in sample console commands.
Remove "user@target:~$" prefixes in command lines.
Add --socket-mem 1024 to vhost-switch command lines.
Without the --socket-mem parameter all hugepages will be allocated
to vhost-switch, leaving no memory for the VM.
Add --disable-hw-vlan-filter parameter to testpmd command lines.
Without this parameter testpmd fails on startup in the VM.
Increase value of --sock-mem parameter to testpmd as original
value was too small.
Fixes:
d0dff9ba445e ("doc: sample application user guide"
Fixes:
9bc23cb8209c ("doc: add vhost-user to sample guide")
Fixes:
43866bf71d58 ("doc: fix vhost sample parameter")
Signed-off-by: Bernard Iremonger <bernard.iremonger@intel.com>
Acked-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
Yuanhan Liu [Mon, 7 Dec 2015 03:25:52 +0000 (11:25 +0800)]
vhost: note the ABI changes
Note the ABI changes and update the ABI version to 2.
Signed-off-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
Matej Vido [Tue, 24 Nov 2015 12:07:13 +0000 (13:07 +0100)]
szedata2: note limited current support in guide
Add note to the documentation that only x86_64 versions of the external
libraries are currently provided.
Signed-off-by: Matej Vido <matejvido@gmail.com>
Olga Shern [Sat, 12 Dec 2015 22:13:25 +0000 (00:13 +0200)]
mlx: add known issues in release notes
Signed-off-by: Olga Shern <olgas@mellanox.com>
Olga Shern [Sat, 12 Dec 2015 22:13:24 +0000 (00:13 +0200)]
mlx4: update features and fixes in release notes
Signed-off-by: Olga Shern <olgas@mellanox.com>
Olga Shern [Sat, 12 Dec 2015 19:43:24 +0000 (21:43 +0200)]
mlx5: update documentation
- Update features, limitations, configuration and prerequisites sections.
- Add a note to describe RSS behavior differences with librte_pmd_mlx4 in
testpmd.
Signed-off-by: Olga Shern <olgas@mellanox.com>
Signed-off-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
Olga Shern [Sat, 12 Dec 2015 16:20:51 +0000 (18:20 +0200)]
mlx4: update documentation
-Split "Features" and "Limitations" sections.
-Update limitations with missing information.
-Update prerequisites with supported MLNX_OFED release, firmware and
CPU architectures.
-Enhance usage example with openibd script.
Signed-off-by: Olga Shern <olgas@mellanox.com>
Signed-off-by: Adrien Mazarguil <adrien.mazarguil@6wind.com>
John Daley [Sun, 13 Dec 2015 23:11:32 +0000 (15:11 -0800)]
enic: add guide
Signed-off-by: John Daley <johndale@cisco.com>
Chen Jing D(Mark) [Thu, 10 Dec 2015 07:00:21 +0000 (15:00 +0800)]
fm10k: add guide
This documentation covers introductions and limitations on Intel
FM10000 series products.
Signed-off-by: Chen Jing D(Mark) <jing.d.chen@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Helin Zhang [Thu, 12 Nov 2015 03:18:27 +0000 (11:18 +0800)]
i40e: add X722 support to release notes
Updated release notes about adding X722 support.
Signed-off-by: Helin Zhang <helin.zhang@intel.com>
Jingjing Wu [Tue, 27 Oct 2015 08:34:36 +0000 (16:34 +0800)]
i40e: add base driver update to release notes
Signed-off-by: Jingjing Wu <jingjing.wu@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Yong Liu [Fri, 30 Oct 2015 09:23:08 +0000 (17:23 +0800)]
e1000: add interrupt limitations in guide
Update interrupt related limitations for e1000em nic.
It only support one interrupt source and not support auto-clear.
Signed-off-by: Marvin Liu <yong.liu@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Wenzhuo Lu [Mon, 2 Nov 2015 06:13:40 +0000 (14:13 +0800)]
e1000: add base driver update to release notes
Signed-off-by: Wenzhuo Lu <wenzhuo.lu@intel.com>
Acked-by: John McNamara <john.mcnamara@intel.com>
Qian Xu [Wed, 18 Nov 2015 03:10:16 +0000 (11:10 +0800)]
doc: add NIC performance guide on Linux IA
Add a new guide doc as part of the Linux Getting Started Guide.
The document is a step-by-step guide on how to get high performance
with DPDK on an Intel platform.
It is designed for users who are not familiar with DPDK but would like
to get the best performance with NICs.
Signed-off-by: Qian Xu <qian.q.xu@intel.com>
John McNamara [Wed, 25 Nov 2015 14:26:00 +0000 (14:26 +0000)]
doc: increment minimum Linux kernel requirement
Update the documentation to reflect that the minimum Linux kernel
requirement for DPDK 2.2 has increased from 2.6.33 to 2.6.34.
Compatibility with kernel 2.6.33 was dropped, after discussion on
the mailing list, in the following commit:
2e6e9e215703 ("igb_uio: use existing PCI macros")
Signed-off-by: John McNamara <john.mcnamara@intel.com>
John McNamara [Fri, 11 Dec 2015 13:41:51 +0000 (13:41 +0000)]
doc: link examples to API
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>
John McNamara [Sun, 1 Nov 2015 23:29:13 +0000 (23:29 +0000)]
doc: change theme of guides
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>