numam-dpdk/lib
Xueming Li 85e1588ca7 ethdev: add API to get representor info
The NIC can have multiple PCIe links and can be attached to multiple
hosts, for example the same single NIC can be shared for multiple server
units in the rack. On each PCIe link NIC can provide multiple PFs and
VFs/SFs based on these ones. The full representor identifier consists of
three indices - controller index, PF index, and VF or SF index (if any).

This patch introduces a new API rte_eth_representor_info_get() to
retrieve representor corresponding info mapping:
 - caller controller index and pf index.
 - supported representor ID ranges.
 - type, controller, pf and start vf/sf ID of each range.
The API is useful to calculate representor from devargs to representor
ID.

New ethdev callback representor_info_get() is added to retrieve info
from PMD driver, optional for PMD that doesn't support new devargs
representor syntax.

Signed-off-by: Xueming Li <xuemingl@nvidia.com>
Acked-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
2021-03-17 19:11:56 +01:00
..
librte_acl build: remove library name from version map file name 2020-10-19 22:13:59 +02:00
librte_bbdev build: remove library name from version map file name 2020-10-19 22:13:59 +02:00
librte_bitratestats bitrate: fix missing header include 2021-01-21 10:27:44 +01:00
librte_bpf build: force pkg-config for dependency detection 2021-01-26 00:43:59 +01:00
librte_cfgfile build: remove library name from version map file name 2020-10-19 22:13:59 +02:00
librte_cmdline cmdline: avoid name clash with Windows system types 2020-11-05 17:49:00 +01:00
librte_compressdev lib: fix doxygen for parameters of function pointers 2021-01-29 15:58:06 +01:00
librte_cryptodev lib: fix doxygen for parameters of function pointers 2021-01-29 15:58:06 +01:00
librte_distributor build: remove library name from version map file name 2020-10-19 22:13:59 +02:00
librte_eal eal: mark version parts API as experimental 2021-03-19 16:20:30 +01:00
librte_efd efd: fix tailq entry leak in error path 2020-10-22 22:07:15 +02:00
librte_ethdev ethdev: add API to get representor info 2021-03-17 19:11:56 +01:00
librte_eventdev eventdev: fix a return value comment 2021-02-04 13:51:45 +01:00
librte_fib fib: fix missing header includes 2021-01-21 10:27:47 +01:00
librte_flow_classify build: remove library name from version map file name 2020-10-19 22:13:59 +02:00
librte_graph build: standardize component names and defines 2020-10-19 22:15:34 +02:00
librte_gro gro: fix packet type detection with IPv6 tunnel 2020-11-14 10:56:30 +01:00
librte_gso gso: support VXLAN UDP/IPv4 2021-01-15 11:31:28 +01:00
librte_hash build: add header includes check 2021-01-29 20:59:37 +01:00
librte_ip_frag ip_frag: remove padding length of fragment 2021-01-15 11:31:28 +01:00
librte_ipsec build: add header includes check 2021-01-29 20:59:37 +01:00
librte_jobstats build: remove library name from version map file name 2020-10-19 22:13:59 +02:00
librte_kni build: align wording of non-support reasons 2020-11-20 16:05:35 +01:00
librte_kvargs kvargs: support multiple lists 2021-03-16 20:15:29 +01:00
librte_latencystats latency: switch Rx timestamp to dynamic mbuf field 2020-11-03 16:21:15 +01:00
librte_lpm build: add header includes check 2021-01-29 20:59:37 +01:00
librte_mbuf mbuf: rename outer IP checksum macro 2021-03-02 10:57:28 +01:00
librte_member build: remove library name from version map file name 2020-10-19 22:13:59 +02:00
librte_mempool mempool: fix panic on dump or audit 2021-02-05 17:40:23 +01:00
librte_meter build: remove library name from version map file name 2020-10-19 22:13:59 +02:00
librte_metrics metrics: export telemetry stubs if no libjansson 2021-03-16 10:08:06 +01:00
librte_net net: fix comment in IPv6 header 2021-03-12 14:32:48 +01:00
librte_node node: fix missing header include 2021-01-21 10:27:47 +01:00
librte_pci build: remove library name from version map file name 2020-10-19 22:13:59 +02:00
librte_pdump pdump: cleanup logs and variables 2021-01-19 15:24:46 +01:00
librte_pipeline pipeline: fix missing header includes 2021-01-21 10:27:47 +01:00
librte_port lib: fix doxygen for parameters of function pointers 2021-01-29 15:58:06 +01:00
librte_power power: remove duplicated symbols from map file 2021-03-02 13:43:38 +01:00
librte_rawdev lib: fix doxygen for parameters of function pointers 2021-01-29 15:58:06 +01:00
librte_rcu rcu: use EAL memory barrier API 2021-01-11 15:34:21 +01:00
librte_regexdev build: add header includes check 2021-01-29 20:59:37 +01:00
librte_reorder reorder: switch sequence number to dynamic mbuf field 2020-10-31 22:14:30 +01:00
librte_rib rib: fix missing header include 2021-01-29 20:59:09 +01:00
librte_ring build: add header includes check 2021-01-29 20:59:37 +01:00
librte_sched build: remove library name from version map file name 2020-10-19 22:13:59 +02:00
librte_security lib: fix doxygen for parameters of function pointers 2021-01-29 15:58:06 +01:00
librte_stack build: add header includes check 2021-01-29 20:59:37 +01:00
librte_table build: add header includes check 2021-01-29 20:59:37 +01:00
librte_telemetry eal: fix querying DPDK version at runtime 2021-03-15 23:22:14 +01:00
librte_timer build: remove library name from version map file name 2020-10-19 22:13:59 +02:00
librte_vhost vhost: fix packed ring dequeue offloading 2021-02-10 22:17:47 +01:00
meson.build build: add header includes check 2021-01-29 20:59:37 +01:00