linux-next: manual merge of the net-next tree with the net tree
From: Stephen Rothwell
Date: Tue Feb 16 2021 - 20:44:44 EST
Hi all,
Today's linux-next merge of the net-next tree got conflicts in:
drivers/net/ethernet/ibm/ibmvnic.c
drivers/net/ethernet/ibm/ibmvnic.h
between commit:
4a41c421f367 ("ibmvnic: serialize access to work queue on remove")
from the net tree and commits:
bab08bedcdc3 ("ibmvnic: fix block comments")
a369d96ca554 ("ibmvnic: add comments for spinlock_t definitions")
from the net-next tree.
I fixed it up (see below) and can carry the fix as necessary. This
is now fixed as far as linux-next is concerned, but any non trivial
conflicts should be mentioned to your upstream maintainer when your tree
is submitted for merging. You may also want to consider cooperating
with the maintainer of the conflicting tree to minimise any particularly
complex conflicts.
--
Cheers,
Stephen Rothwell
diff --cc drivers/net/ethernet/ibm/ibmvnic.c
index 13ae7eee7ef5,927d5f36d308..000000000000
--- a/drivers/net/ethernet/ibm/ibmvnic.c
+++ b/drivers/net/ethernet/ibm/ibmvnic.c
@@@ -2395,10 -2288,7 +2294,9 @@@ static int ibmvnic_reset(struct ibmvnic
unsigned long flags;
int ret;
+ spin_lock_irqsave(&adapter->rwi_lock, flags);
+
- /*
- * If failover is pending don't schedule any other reset.
+ /* If failover is pending don't schedule any other reset.
* Instead let the failover complete. If there is already a
* a failover reset scheduled, we will detect and drop the
* duplicate reset when walking the ->rwi_list below.
diff --cc drivers/net/ethernet/ibm/ibmvnic.h
index 72fea3b1c87d,270d1cac86a4..000000000000
--- a/drivers/net/ethernet/ibm/ibmvnic.h
+++ b/drivers/net/ethernet/ibm/ibmvnic.h
@@@ -1080,10 -1081,12 +1081,16 @@@ struct ibmvnic_adapter
struct tasklet_struct tasklet;
enum vnic_state state;
- /* Used for serializatin of state field */
++ /* Used for serialization of state field. When taking both state
++ * and rwi locks, take state lock first.
++ */
+ spinlock_t state_lock;
enum ibmvnic_reset_reason reset_reason;
- /* when taking both state and rwi locks, take state lock first */
- spinlock_t rwi_lock;
struct list_head rwi_list;
- /* Used for serialization of rwi_list */
++ /* Used for serialization of rwi_list. When taking both state
++ * and rwi locks, take state lock first
++ */
+ spinlock_t rwi_lock;
struct work_struct ibmvnic_reset;
struct delayed_work ibmvnic_delayed_reset;
unsigned long resetting;
Attachment:
pgp9ihC5EwEST.pgp
Description: OpenPGP digital signature