aboutsummaryrefslogtreecommitdiff
path: root/mm/util.c
diff options
context:
space:
mode:
authorEric Biederman <ebiederm@aristanetworks.com>2009-03-13 13:16:13 -0700
committerDavid S. Miller <davem@davemloft.net>2009-03-13 13:16:13 -0700
commitf9ac30f080d23ef0a2d4a1b7c6806c9a21c0f324 (patch)
treed10817f083028f8be53d48693f7cf3fadd24a3e0 /mm/util.c
parentb0832a2961022a076c812384435b5f0290b3fc91 (diff)
macvlan: Deterministic ingress packet delivery
Changing the mac address when a macvlan device is up will leave the device on the wrong hash chain making it impossible to receive packets. There is no checking of the mac address set on the macvlan. Allowing a misconfiguration to grab packets from the the underlying device or another macvlan. To resolve these problems I update the hash table of macvlans when the mac address of a macvlan changes, and when updating the hash table I verify that the new mac address is usable. The result is well defined and predictable if not perfect handling of mac vlan mac addresses. To keep the code clear I have created a set of hash table maintenance in macvlan so I am not open coding the hash function and the logic needed to update the hash table all over the place. Signed-off-by: Eric Biederman <ebiederm@aristanetworks.com> Acked-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'mm/util.c')
0 files changed, 0 insertions, 0 deletions