Revert "bridge: only expire the mdb entry when query is received"
While this commit was a good attempt to fix issues occuring when no
multicast querier is present, this commit still has two more issues:
1) There are cases where mdb entries do not expire even if there is a
querier present. The bridge will unnecessarily continue flooding
multicast packets on the according ports.
2) Never removing an mdb entry could be exploited for a Denial of
Service by an attacker on the local link, slowly, but steadily eating up
all memory.
Actually, this commit became obsolete with
"bridge: disable snooping if there is no querier" (
5231d8c6ad)
which included fixes for a few more cases.
Therefore reverting the following commits (the commit stated in the
commit message plus three of its follow up fixes):
====================
Revert "bridge: update mdb expiration timer upon reports."
This reverts commit
a28577ef876f7a6deacde157cf536d0590847ffa.
Revert "bridge: do not call setup_timer() multiple times"
This reverts commit
cfddccf711b795da756262704e93caa7652ad466.
Revert "bridge: fix some kernel warning in multicast timer"
This reverts commit
694e988d990e488d0c8b3a128ef37958d6ac6baf.
Revert "bridge: only expire the mdb entry when query is received"
This reverts commit
7be4f9fcd80b5692089fdab757f001210293b978.
====================
CC: Cong Wang <amwang@redhat.com>
Signed-off-by: Linus Lüssing <linus.luessing@web.de>
Reviewed-by: Vlad Yasevich <vyasevich@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>