OSDN Git Service

Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
authorJakub Kicinski <kuba@kernel.org>
Thu, 8 Oct 2020 22:44:50 +0000 (15:44 -0700)
committerJakub Kicinski <kuba@kernel.org>
Thu, 8 Oct 2020 22:44:50 +0000 (15:44 -0700)
Small conflict around locking in rxrpc_process_event() -
channel_lock moved to bundle in next, while state lock
needs _bh() from net.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
19 files changed:
1  2 
MAINTAINERS
drivers/net/dsa/ocelot/felix_vsc9959.c
drivers/net/dsa/ocelot/seville_vsc9953.c
drivers/net/ethernet/mscc/ocelot.c
drivers/net/ethernet/mscc/ocelot_vsc7514.c
drivers/net/ethernet/realtek/r8169_main.c
drivers/net/macsec.c
kernel/bpf/verifier.c
net/bridge/br_netlink.c
net/core/filter.c
net/ipv4/tcp_ipv4.c
net/mptcp/options.c
net/mptcp/subflow.c
net/openvswitch/conntrack.c
net/rxrpc/ar-internal.h
net/rxrpc/call_object.c
net/rxrpc/conn_event.c
net/sctp/auth.c
net/wireless/nl80211.c

diff --cc MAINTAINERS
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -341,8 -339,8 +341,8 @@@ static int rxrpc_process_event(struct r
                if (ret < 0)
                        return ret;
  
 -              spin_lock(&conn->channel_lock);
 +              spin_lock(&conn->bundle->channel_lock);
-               spin_lock(&conn->state_lock);
+               spin_lock_bh(&conn->state_lock);
  
                if (conn->state == RXRPC_CONN_SERVICE_CHALLENGING) {
                        conn->state = RXRPC_CONN_SERVICE;
                                rxrpc_call_is_secure(
                                        rcu_dereference_protected(
                                                conn->channels[loop].call,
 -                                              lockdep_is_held(&conn->channel_lock)));
 +                                              lockdep_is_held(&conn->bundle->channel_lock)));
                } else {
-                       spin_unlock(&conn->state_lock);
+                       spin_unlock_bh(&conn->state_lock);
                }
  
 -              spin_unlock(&conn->channel_lock);
 +              spin_unlock(&conn->bundle->channel_lock);
                return 0;
  
        default:
diff --cc net/sctp/auth.c
Simple merge
Simple merge