1
- idpf Linux* Base Driver Readme for Infrastructure Data-Plane Function
2
- *********************************************************************
1
+ 5.5.1. idpf Linux* Base Driver Readme for Infrastructure Data-Plane Function
2
+ ****************************************************************************
3
3
4
- Jun 24 , 2024
4
+ September 17 , 2024
5
5
6
6
7
7
On This Page
@@ -23,8 +23,8 @@ On This Page
23
23
* Known Issues/Troubleshooting
24
24
25
25
26
- Overview
27
- ========
26
+ 5.5.1.1. Overview
27
+ =================
28
28
29
29
This document provides the README for the out-of-tree idpf Linux
30
30
driver. The driver is compatible with devices based on the following:
@@ -46,12 +46,12 @@ This driver supports XDP (Express Data Path) and AF_XDP zero-copy.
46
46
Note that XDP is blocked for frame sizes larger than 3KB.
47
47
48
48
49
- Building and Installation
50
- =========================
49
+ 5.5.1.2. Building and Installation
50
+ ==================================
51
51
52
52
53
- To manually build the driver
54
- ----------------------------
53
+ 5.5.1. To manually build the driver
54
+ -----------------------------------
55
55
56
56
1. Move the base driver tar file to the directory of your choice. For
57
57
example, use "/home/username/idpf" or "/usr/local/src/idpf".
@@ -112,8 +112,8 @@ To manually build the driver
112
112
ping <IP_address>
113
113
114
114
115
- To build a binary RPM package of this driver
116
- --------------------------------------------
115
+ 5.5.1. To build a binary RPM package of this driver
116
+ ---------------------------------------------------
117
117
118
118
Note:
119
119
@@ -155,18 +155,18 @@ Note:
155
155
-r'/build".
156
156
157
157
158
- Command Line Parameters
159
- =======================
158
+ 5.5.1.3. Command Line Parameters
159
+ ================================
160
160
161
161
The idpf driver does not support any command line parameters.
162
162
163
163
164
- Additional Features and Configurations
165
- ======================================
164
+ 5.5.1.4. Additional Features and Configurations
165
+ ===============================================
166
166
167
167
168
- Configuring SR-IOV for improved network security
169
- ------------------------------------------------
168
+ 5.5.1. Configuring SR-IOV for improved network security
169
+ -------------------------------------------------------
170
170
171
171
In a virtualized environment, on Intel(R) Ethernet Network Adapters
172
172
that support SR-IOV or Intel(R) Scalable I/O Virtualization (Intel(R)
@@ -183,8 +183,8 @@ configuration allows unexpected, and potentially malicious, frames to
183
183
be dropped.
184
184
185
185
186
- ethtool
187
- -------
186
+ 5.5.1. ethtool
187
+ --------------
188
188
189
189
The driver utilizes the ethtool interface for driver configuration and
190
190
diagnostics, as well as displaying statistical information. The latest
@@ -193,8 +193,8 @@ one yet, you can obtain it at at:
193
193
https://kernel.org/pub/software/network/ethtool/.
194
194
195
195
196
- Viewing Link Messages
197
- ---------------------
196
+ 5.5.1. Viewing Link Messages
197
+ ----------------------------
198
198
199
199
Link messages will not be displayed to the console if the distribution
200
200
is restricting system messages. In order to see network driver link
@@ -204,8 +204,8 @@ following:
204
204
dmesg -n 8
205
205
206
206
207
- Jumbo Frames
208
- ------------
207
+ 5.5.1. Jumbo Frames
208
+ -------------------
209
209
210
210
Jumbo Frames support is enabled by changing the Maximum Transmission
211
211
Unit (MTU) to a value larger than the default value of 1500.
@@ -222,9 +222,10 @@ Note:
222
222
223
223
* The supported maximum MTU setting for jumbo frames on Intel(R) IPU
224
224
ASIC E2100 B1 Stepping is 7652 bytes as mentioned in the release
225
- notes for Release 1.3.0. This corresponds to the maximum frame
226
- size of 7678 bytes. Later revisions of the Intel IPU support the
227
- maximum MTU of 9188 bytes and maximum frame size of 9216 bytes.
225
+ notes for Release 1.3.0 Release Notes. This corresponds to the
226
+ maximum frame size of 7678 bytes. Later revisions of the Intel IPU
227
+ support the maximum MTU of 9188 bytes and maximum frame size of
228
+ 9216 bytes.
228
229
229
230
* This driver will attempt to use multiple page sized buffers to
230
231
receive each jumbo packet. This should help to avoid buffer
@@ -235,15 +236,15 @@ Note:
235
236
jumbo frames, enabling flow control may mitigate the issue.
236
237
237
238
238
- Subfunctions
239
- ------------
239
+ 5.5.1. Subfunctions
240
+ -------------------
240
241
241
242
Subfunctions are supported using the devlink interface to create,
242
243
activate or delete subfunction netdevs or dynamic vports.
243
244
244
245
245
- Configuring Subfunctions
246
- ~~~~~~~~~~~~~~~~~~~~~~~~
246
+ 5.5.1. Configuring Subfunctions
247
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
247
248
248
249
1. After loading the driver, run the following command to verify that
249
250
the IDPF driver supports devlink based interface:
@@ -349,16 +350,16 @@ Configuring Subfunctions
349
350
pci/0000:4b:00.1/0: type eth netdev ens785f1 flavour physical port 1 splittable false
350
351
351
352
352
- Performance Optimization
353
- ========================
353
+ 5.5.1.5. Performance Optimization
354
+ =================================
354
355
355
356
Driver defaults are meant to fit a wide variety of workloads, but if
356
357
further optimization is required, we recommend experimenting with the
357
358
following settings.
358
359
359
360
360
- IRQ to Adapter Queue Alignment
361
- ------------------------------
361
+ 5.5.1. IRQ to Adapter Queue Alignment
362
+ -------------------------------------
362
363
363
364
Pin the adapter's IRQs to specific cores by disabling the irqbalance
364
365
service and using the included "set_irq_affinity" script. Please see
@@ -378,8 +379,8 @@ the script's help text for further options.
378
379
all cores.
379
380
380
381
381
- Interrupt Rate Limiting
382
- -----------------------
382
+ 5.5.1. Interrupt Rate Limiting
383
+ ------------------------------
383
384
384
385
This driver supports an adaptive interrupt throttle rate (ITR)
385
386
mechanism that is tuned for general workloads. The user can customize
@@ -422,8 +423,8 @@ Per-queue interrupt rate settings:
422
423
ethtool --per-queue <ethX> queue_mask 0xa --show-coalesce
423
424
424
425
425
- Transmit/Receive Queue Allocation
426
- ---------------------------------
426
+ 5.5.1. Transmit/Receive Queue Allocation
427
+ ----------------------------------------
427
428
428
429
To set the number of symmetrical (Rx/Tx) or asymmetrical (mix of
429
430
combined and Tx or Rx) queues, use the "ethtool -L" option. For
@@ -442,8 +443,8 @@ Note:
442
443
Dedicated Tx and Rx queues are not supported.
443
444
444
445
445
- Virtualized Environments
446
- ------------------------
446
+ 5.5.1. Virtualized Environments
447
+ -------------------------------
447
448
448
449
The following methods may be helpful to optimize performance in
449
450
virtual machines (VMs):
@@ -462,36 +463,36 @@ virtual machines (VMs):
462
463
Dedicated Tx and Rx queues are not supported.
463
464
464
465
465
- Known Issues/Troubleshooting
466
- ============================
466
+ 5.5.1.6. Known Issues/Troubleshooting
467
+ =====================================
467
468
468
469
469
- Receive Error Counts May Be Higher Than the Actual Packet Error Count
470
- ---------------------------------------------------------------------
470
+ 5.5.1. Receive Error Counts May Be Higher Than the Actual Packet Error Count
471
+ ----------------------------------------------------------------------------
471
472
472
473
When a packet is received with more than one error, two bad packets
473
474
may be reported.
474
475
475
476
476
- "ethtool -S" Does Not Display Tx/Rx Packet Statistics
477
- -----------------------------------------------------
477
+ 5.5.1. "ethtool -S" Does Not Display Tx/Rx Packet Statistics
478
+ ------------------------------------------------------------
478
479
479
480
Issuing the command "ethtool -S" does not display Tx/Rx packet
480
481
statistics. This is by convention. Use other tools (such as the **ip**
481
482
command) that display standard netdev statistics such as Tx/Rx packet
482
483
statistics.
483
484
484
485
485
- Changing Ring Size During Heavy Traffic is Unstable
486
- ---------------------------------------------------
486
+ 5.5.1. Changing Ring Size During Heavy Traffic is Unstable
487
+ ----------------------------------------------------------
487
488
488
489
"ethtool -G" should not be used while the driver is being used to send
489
490
or receive heavy traffic. This can result in the interface going into
490
491
the no-carrier state.
491
492
492
493
493
- Unexpected Issues When the Device Driver and DPDK Share a Device
494
- ----------------------------------------------------------------
494
+ 5.5.1. Unexpected Issues When the Device Driver and DPDK Share a Device
495
+ -----------------------------------------------------------------------
495
496
496
497
Unexpected issues may result when an idpf device is in multi driver
497
498
mode and the kernel driver and DPDK driver are sharing the device.
@@ -503,19 +504,19 @@ device. Loading DPDK with the "multi-driver" module parameter may
503
504
mitigate some of the issues.
504
505
505
506
506
- Support
507
- =======
507
+ 5.5.1.7. Support
508
+ ================
508
509
509
510
For general information, go to the Intel support website at:
510
- *< http://www.intel.com/support/>*
511
+ http://www.intel.com/support/
511
512
512
513
If an issue is identified with the released source code on a supported
513
514
kernel with a supported adapter, email the specific information
514
515
related to the issue to
[email protected] .
515
516
516
517
517
- License
518
- =======
518
+ 5.5.1.8. License
519
+ ================
519
520
520
521
This program is free software; you can redistribute it and/or modify
521
522
it under the terms and conditions of the GNU General Public License,
@@ -537,8 +538,8 @@ in the file called "COPYING".
537
538
Copyright (c) 2019 - 2024 Intel Corporation.
538
539
539
540
540
- Trademarks
541
- ==========
541
+ 5.5.1.9. Trademarks
542
+ ===================
542
543
543
544
Intel is a trademark or registered trademark of Intel Corporation or
544
545
its subsidiaries in the United States and/or other countries.
0 commit comments