devlink: add a command to set notification filter and use it for multicasts
authorJiri Pirko <jiri@nvidia.com>
Sat, 16 Dec 2023 12:30:00 +0000 (13:30 +0100)
committerPaolo Abeni <pabeni@redhat.com>
Tue, 19 Dec 2023 14:31:40 +0000 (15:31 +0100)
commit13b127d2578432e1e521310b69944c5a1b30679c
tree53fcf26673d7240f79d6fd8df83a4038c0be7fa8
parent971b4ad88293bef00160e1d38659077fe3a93af6
devlink: add a command to set notification filter and use it for multicasts

Currently the user listening on a socket for devlink notifications
gets always all messages for all existing instances, even if he is
interested only in one of those. That may cause unnecessary overhead
on setups with thousands of instances present.

User is currently able to narrow down the devlink objects replies
to dump commands by specifying select attributes.

Allow similar approach for notifications. Introduce a new devlink
NOTIFY_FILTER_SET which the user passes the select attributes. Store
these per-socket and use them for filtering messages
during multicast send.

Signed-off-by: Jiri Pirko <jiri@nvidia.com>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Documentation/netlink/specs/devlink.yaml
include/uapi/linux/devlink.h
net/devlink/devl_internal.h
net/devlink/netlink.c
net/devlink/netlink_gen.c
net/devlink/netlink_gen.h