Commit Graph

207 Commits

Author SHA1 Message Date
Intel
47cda8c470 kni: clean logs
The debug is now disabled by default and can be enabled with
configuration option CONFIG_RTE_KNI_KO_DEBUG.

Signed-off-by: Intel
2013-10-09 16:16:14 +02:00
Intel
abc3630ed3 kni: minor changes
Signed-off-by: Intel
2013-10-09 16:16:14 +02:00
Intel
c1f86306a0 virtio: add new driver
This PMD can be used in a VM having virtio-net NIC.

Note: it is a different implementation than virtio-usermap extension.

Signed-off-by: Intel
2013-10-09 16:16:14 +02:00
Intel
7ef0072910 ethdev: random MAC address
Factorize code by moving random_addr() function in only place.
It will be reused for virtio.

Signed-off-by: Intel
2013-10-09 16:16:14 +02:00
Intel
7bd128eae2 eal: increase I/O privilege
Set I/O privilege to the highest level (3).
It is needed for virtio.

Signed-off-by: Intel
2013-10-09 16:16:14 +02:00
Intel
4c173302c3 pcap: add new driver
This PMD uses libpcap to send/receive packets to/from any NIC.
It can also read/write to/from a file.

Signed-off-by: Intel
2013-10-09 16:16:14 +02:00
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
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
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
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
cc8f4d020c examples/ip_reassembly: initial import
Signed-off-by: Intel
2013-09-17 14:16:09 +02:00
Intel
301d75046c kni: disable ETHTOOL_GRXRINGS
Signed-off-by: Intel
2013-09-17 14:16:08 +02:00
Intel
630ca10798 kni: fix build with kernel 3.8
- timecompare (used for hardware timestamping) has been removed.
(see Linux commit 65f8f9a1c1db831e5159e3e3e50912d1f214cd0c)
Simply disable HW_TIME_STAMP feature because it is not used by KNI.

- annotations __devinit and __devexit have been removed.
(see Linux commit 54b956b903607f8f8878754dd4352da6a54a1da2)

Signed-off-by: Intel
2013-09-17 14:16:08 +02:00
Intel
f2e7592c47 kni: fix multi-process support
Signed-off-by: Intel
2013-09-17 14:16:08 +02:00