summaryrefslogtreecommitdiff
path: root/ipc
diff options
context:
space:
mode:
authorIdo Schimmel <idosch@nvidia.com>2022-12-10 17:56:26 +0300
committerJakub Kicinski <kuba@kernel.org>2022-12-13 02:33:37 +0300
commita01ecb1712ddbcd41360ad0c554b460adbac0528 (patch)
tree4d6d43f9292313a0b0e779607664be807d791e69 /ipc
parent083e353482b4c9b727846643ad6ca7b784dd486b (diff)
downloadlinux-a01ecb1712ddbcd41360ad0c554b460adbac0528.tar.xz
bridge: mcast: Add a flag for user installed source entries
There are a few places where the bridge driver differentiates between (S, G) entries installed by the kernel (in response to Membership Reports) and those installed by user space. One of them is when deleting an (S, G) entry corresponding to a source entry that is being deleted. While user space cannot currently add a source entry to a (*, G), it can add an (S, G) entry that later corresponds to a source entry created by the reception of a Membership Report. If this source entry is later deleted because its source timer expired or because the (*, G) entry is being deleted, the bridge driver will not delete the corresponding (S, G) entry if it was added by user space as permanent. This is going to be a problem when the ability to install a (*, G) with a source list is exposed to user space. In this case, when user space installs the (*, G) as permanent, then all the (S, G) entries corresponding to its source list will also be installed as permanent. When user space deletes the (*, G), all the source entries will be deleted and the expectation is that the corresponding (S, G) entries will be deleted as well. Solve this by introducing a new source entry flag denoting that the entry was installed by user space. When the entry is deleted, delete the corresponding (S, G) entry even if it was installed by user space as permanent, as the flag tells us that it was installed in response to the source entry being created. The flag will be set in a subsequent patch where source entries are created in response to user requests. Signed-off-by: Ido Schimmel <idosch@nvidia.com> Acked-by: Nikolay Aleksandrov <razor@blackwall.org> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'ipc')
0 files changed, 0 insertions, 0 deletions