Spdk/lib/env_dpdk
Jin Yu 5957f2c479 env: extend the use of event listen
struct sockaddr_nl {
    sa_family_t     nl_family;  /* AF_NETLINK */
    unsigned short  nl_pad;     /* Zero */
    pid_t           nl_pid;     /* Port ID */
    __u32           nl_groups;  /* Multicast groups mask */
};

nl_pid is the unicast address of netlink socket.  It's always 0
if the destination is in the kernel.  For a user-space process,
nl_pid is usually the PID of the process owning the destination
socket.  However, nl_pid identifies a netlink socket, not a
process.  If a process owns several netlink sockets, then nl_pid
can be equal to the process ID only for at most one socket.
There are two ways to assign nl_pid to a netlink socket.  If the
application sets nl_pid before calling bind(), then it is up to
the application to make sure that nl_pid is unique.  If the
application sets it to 0, the kernel takes care of assigning it.
The kernel assigns the process ID to the first netlink socket the
process opens and assigns a unique nl_pid to every netlink socket
that the process subsequently creates.

Change-Id: Ic0688228105ea6ba4ebae1d130b9271126c37b0e
Signed-off-by: Jin Yu <jin.yu@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/7367
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
2021-04-16 19:21:13 +00:00
..
env_internal.h Revert "env: Register external memory with DPDK" 2021-04-15 20:22:26 +00:00
env.c Revert "env: Register external memory with DPDK" 2021-04-15 20:22:26 +00:00
env.mk build: swap pci with bus_pci libs on the list 2021-02-25 10:26:48 +00:00
init.c env/dpdk: Use the DPDK device count for IOMMU mapping 2021-01-22 18:32:53 +00:00
Makefile lib: add a hotplug lib for device 2021-04-12 09:48:21 +00:00
memory.c Revert "env: Register external memory with DPDK" 2021-04-15 20:22:26 +00:00
pci_event.c env: extend the use of event listen 2021-04-16 19:21:13 +00:00
pci_idxd.c env: fix pci driver registration 2020-08-27 08:36:43 +00:00
pci_ioat.c env: fix pci driver registration 2020-08-27 08:36:43 +00:00
pci_virtio.c env: fix pci driver registration 2020-08-27 08:36:43 +00:00
pci_vmd.c env: fix pci driver registration 2020-08-27 08:36:43 +00:00
pci.c env_pci: fix device_allow small issue 2021-03-31 08:55:59 +00:00
sigbus_handler.c lib: add a hotplug lib for device 2021-04-12 09:48:21 +00:00
spdk_env_dpdk.map lib: add a hotplug lib for device 2021-04-12 09:48:21 +00:00
threads.c Revert "thread: add spdk_env_get_primary_core" 2020-07-29 14:58:44 +00:00