Commit Graph

1739 Commits

Author SHA1 Message Date
Intel
e1e4017751 ring: add new driver
This PMD is a set of FIFOs using rte_ring without any NIC.
It can be used as a loopback.

Signed-off-by: Intel
2013-10-09 16:16:14 +02:00
Intel
dc5026b485 ethdev: allow device without registered driver
It is needed for non-pci devices (ring and pcap).

Signed-off-by: Intel
2013-10-09 16:16:14 +02:00
Intel
0b33b68d12 ethdev: export allocate function
The function rte_eth_dev_allocate() was called by rte_eth_dev_init().
In order to use it for non-pci devices, it is now in public API.

Signed-off-by: Intel
2013-10-09 16:16:14 +02:00
Intel
2c502225c6 eal: introduce non-pci devices
This type of pseudo-device is needed for ring and pcap PMDs.
They are compatible with whitelist and are initialized in rte_eal_init().

Signed-off-by: Intel
2013-10-09 16:16:14 +02:00
Intel
fe3a45fd41 ixgbe: add VMDq support
Signed-off-by: Intel
2013-10-09 16:16:14 +02:00
Intel
d52147ec28 igb: add VMDq support
Signed-off-by: Intel
2013-10-09 16:16:14 +02:00
Intel
88ac4396ad ethdev: add VMDq support
Signed-off-by: Intel
2013-10-09 16:16:14 +02:00
Intel
0105ba4c6b ixgbe: fix VF init without setup
In case of multi-process application, the secondary process can initialize
the driver without configuring queues. In this case the Rx/Tx functions
were not initialized because it was only done in queue setup.

Fix by reproducing the same behaviour as in eth_ixgbe_dev_init().

Signed-off-by: Intel
2013-10-09 16:16:14 +02:00
Intel
5caeb1b143 igb: fix VF init without setup
In case of multi-process application, the secondary process can initialize
the driver without configuring queues. In this case the Rx/Tx functions
were not initialized because it was only done in queue setup.

Fix by reproducing the same behaviour as in eth_igb_dev_init().

Signed-off-by: Intel
2013-10-09 16:16:14 +02:00
Intel
a84f185a8a e1000: fix descriptor overflow
Allow rxq->rx_tail + offset > 65535
in eth_em_rx_descriptor_done().

Signed-off-by: Intel
2013-10-09 16:16:14 +02:00
Intel
b967915a03 e1000: minor changes
Signed-off-by: Intel
2013-10-09 16:16:14 +02:00
Intel
02331c16ec ethdev: reset unsupported stats
Initialize statistics structure to 0 before passing it to the PMD.
This way, the unsupported fields will be 0.

Signed-off-by: Intel
2013-10-09 16:14:52 +02:00
Intel
d15808aa1e mem: retrieve mempool cache only when needed
It is an optimization for the single consumer case,
or when cache is too small,
or when cache is disabled.

Signed-off-by: Intel
2013-10-09 16:04:09 +02:00
Intel
7c60fd9ef6 mem: retry malloc with smaller block size when failure
rte_malloc try to allocate memzone blocks with a minimum size.
It it fails, it retries for a smaller size than the standard one.
It will really fail if it cannot allocate block of the requested size.

Signed-off-by: Intel
2013-10-09 16:04:09 +02:00
Intel
9b15ba895b timer: use a skip list
The skip list algorithm allows to improve the scalability.

Signed-off-by: Intel
2013-10-09 16:04:09 +02:00
Intel
ef8ff191a4 lpm: rework rules storage
Signed-off-by: Intel
2013-10-09 16:04:09 +02:00
Intel
0260e5e43f sched: minor changes
Do not define grinder_credits_check() if it is not used.

Signed-off-by: Intel
2013-10-09 16:04:09 +02:00
Intel
5140eb165f eal: use pause only with SSE2
The pause instruction is part of SSE2 extensions.
Note that some compilers define _mm_pause as "rep; nop" instead of "pause".
For compatible processors, they are equivalent.

http://www.intel.com/Assets/PDF/manual/325383.pdf:
"
When executing a spin-wait loop, a Pentium 4 or Intel Xeon processor suffers
a severe performance penalty when exiting the loop because it detects a
possible memory order violation.
The PAUSE instruction provides a hint to the processor that the code sequence
is a spin-wait loop. The processor uses this hint to avoid the memory order
violation in most situations, which greatly improves processor performance.
"

Signed-off-by: Intel
2013-10-09 16:04:09 +02:00
Intel
cd5b32ee33 eal: allow to whitelist devices
The new option --use-device is a PCI whitelist.
It is the opposite to -b option.

Signed-off-by: Intel
2013-10-09 16:03:59 +02:00
Intel
5a55b9ac91 eal: allow to blacklist address without domain prefix
These 2 formats are now accepted:
    domain🚌device.function
           bus:device.function

Signed-off-by: Intel
2013-10-09 15:46:52 +02:00
Intel
0058a97b6a eal: rework CPU mask parsing
The CPU mask was limited to "unsigned long long".
The limit was removed and parsing/init is less loosy.

Signed-off-by: Intel
2013-10-09 15:46:52 +02:00
Intel
e740686611 eal: minor changes
Signed-off-by: Intel
2013-10-09 15:46:52 +02:00
Intel
4d3d79e7a5 mk: combined library
Allow to merge all libraries (shared or static) into one.

Signed-off-by: Intel
2013-10-09 15:46:49 +02:00
Intel
e25e4d7ef1 mk: shared libraries
Allow to build shared libraries (.so) instead of static ones (.a).

Signed-off-by: Intel
2013-10-09 15:35:36 +02:00
Intel
6da94b7a92 mk: link with libm
Signed-off-by: Intel
2013-10-09 14:51:56 +02:00
Intel
1c1d4d7a92 doc: whitespace changes in licenses
Signed-off-by: Intel
2013-10-09 14:51:55 +02:00
Intel
cd449b929b update version to 1.4.1
Signed-off-by: Intel
2013-09-17 14:16:10 +02:00
Intel
595ea7dc80 examples/ip_reassembly: various updates
- postpone calls to rte_pktmbuf_free() when a mbuf is not used anymore
- add some tx statistics

Signed-off-by: Intel
2013-09-17 14:16:10 +02:00
Intel
7e0fa599bc examples/dpdk_qat: rework port discovery
Signed-off-by: Intel
2013-09-17 14:16:10 +02:00
Intel
624148d2b1 examples/qos_sched: minor changes
Signed-off-by: Intel
2013-09-17 14:16:10 +02:00
Intel
e93b24a3da examples/qos_sched: add --msz for mempool size
Signed-off-by: Intel
2013-09-17 14:16:10 +02:00
Intel
b451aa39db examples/l3fwd-power: use DD bit rather than RX queue count
Prefer use of rte_eth_rx_descriptor_done to rte_eth_rx_queue_count.

Signed-off-by: Intel
2013-09-17 14:16:10 +02:00
Intel
0b3144a905 ixgbe: fix DCB setup
Signed-off-by: Intel
2013-09-17 14:16:10 +02:00
Intel
11c378b199 ixgbe: check DD bit for specific RX descriptor
Signed-off-by: Intel
2013-09-17 14:16:10 +02:00
Intel
c32ee651a4 igb: check DD bit of specific RX descriptor
Signed-off-by: Intel
2013-09-17 14:16:10 +02:00
Intel
6a6f2b57a3 ethdev: check DD bit of specific RX descriptor
Signed-off-by: Intel
2013-09-17 14:16:10 +02:00
Intel
525ef82c4e ixgbe: RX queue count is not implemented for VF
It was introduced by mistake in version 1.4.0.

Signed-off-by: Intel
2013-09-17 14:16:10 +02:00
Intel
90b2eeb80a ixgbe: use DD bit to count RX available descriptors
Signed-off-by: Intel
2013-09-17 14:16:10 +02:00
Intel
0f6b7c7f7a igb: use DD bit to count RX available descriptors
Signed-off-by: Intel
2013-09-17 14:16:10 +02:00
Intel
c25e53e079 ethdev: fix doxygen comment for rte_eth_rx_queue_count
Signed-off-by: Intel
2013-09-17 14:16:10 +02:00
Intel
9dc8cd6ef7 pci: check driver probe return code
Signed-off-by: Intel
2013-09-17 14:16:10 +02:00
Intel
096ff2e82d mem: rework huge page mapping for secondary process
Signed-off-by: Intel
2013-09-17 14:16:10 +02:00
Intel
835c5409a7 sched: only support TC 3 oversubscription
Signed-off-by: Intel
2013-09-17 14:16:10 +02:00
Intel
a91c3cadb8 sched: add mtu parameter
Signed-off-by: Intel
2013-09-17 14:16:10 +02:00
Intel
602c9ca33a sched: bitmap is now dynamically allocated
Signed-off-by: Intel
2013-09-17 14:16:10 +02:00
Intel
03f6bced5b eal: use intrinsic function
Signed-off-by: Intel
2013-09-17 14:16:09 +02:00
Intel
8b7efc04a0 update version to 1.4.0
Signed-off-by: Intel
2013-09-17 14:16:09 +02:00
Intel
1d6c3ee332 examples/quota_watermark: initial import
Signed-off-by: Intel
2013-09-17 14:16:09 +02:00
Intel
cc8f4d020c examples/ip_reassembly: initial import
Signed-off-by: Intel
2013-09-17 14:16:09 +02:00
Intel
0e8d0d8f05 examples/l3fwd-vf: release resources on SIGINT
Signed-off-by: Intel
2013-09-17 14:16:09 +02:00