net/smc: rework pnet table to support SMC-R failover
The pnet table stored pnet ids in the smc device structures. When a device is going down its smc device structure is freed, and when the device is brought online again it no longer has a pnet id set. Rework the pnet table implementation to store the device name with their assigned pnet id and apply the pnet id to devices when they are registered. Signed-off-by: Karsten Graul <kgraul@linux.ibm.com> Reviewed-by: Ursula Braun <ubraun@linux.ibm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
21615efa6a
commit
fdff704dc6
@@ -296,7 +296,8 @@ struct smcd_dev *smcd_alloc_dev(struct device *parent, const char *name,
|
||||
device_initialize(&smcd->dev);
|
||||
dev_set_name(&smcd->dev, name);
|
||||
smcd->ops = ops;
|
||||
smc_pnetid_by_dev_port(parent, 0, smcd->pnetid);
|
||||
if (smc_pnetid_by_dev_port(parent, 0, smcd->pnetid))
|
||||
smc_pnetid_by_table_smcd(smcd);
|
||||
|
||||
spin_lock_init(&smcd->lock);
|
||||
spin_lock_init(&smcd->lgr_lock);
|
||||
|
Reference in New Issue
Block a user