From: Mike Maloney <malo...@google.com> Fanout uses a per net global namespace. A process that intends to create a new fanout group can accidentally join an existing group. It is not possible to detect this.
Add a socket option to specify on the first call to setsockopt(..., PACKET_FANOUT, ...) to ensure that a new group is created. Also add tests. Mike Maloney (3): selftests/net: cleanup unused parameter in psock_fanout packet: add PACKET_FANOUT_FLAG_UNIQUEID to assign new fanout group id. selftests/net: add tests for PACKET_FANOUT_FLAG_UNIQUEID include/uapi/linux/if_packet.h | 1 + net/packet/af_packet.c | 44 ++++++++++++++ tools/testing/selftests/net/psock_fanout.c | 93 ++++++++++++++++++++++++++---- 3 files changed, 128 insertions(+), 10 deletions(-) -- 2.12.2.816.g2cccc81164-goog