• Jesse Gross's avatar
    geneve: Simplify locking. · 829a3ada
    Jesse Gross authored
    The existing Geneve locking scheme was pulled over directly from
    VXLAN. However, VXLAN has a number of built in mechanisms which make
    the locking more complex and are unlikely to be necessary with Geneve.
    This simplifies the locking to use a basic scheme of a mutex
    when doing updates plus RCU on receive.
    
    In addition to making the code easier to read, this also avoids the
    possibility of a race when creating or destroying sockets since
    UDP sockets and the list of Geneve sockets are protected by different
    locks. After this change, the entire operation is atomic.
    Signed-off-by: default avatarJesse Gross <jesse@nicira.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    829a3ada
geneve.c 10.3 KB