net/smc: rework pnet table
If a device does not have a pnetid, users can set a temporary pnetid for said device in the pnet table. This patch reworks the pnet table to make it more flexible. Multiple entries with the same pnetid but differing devices are now allowed. Additionally, the netlink interface now sends each mapping from pnetid to device separately to the user while maintaining the message format existing applications might expect. Also, the SMC data structure for ib devices already has a pnetid attribute. So, it is used to store the user defined pnetids. As a result, the pnet table entries are only used for netdevs. Signed-off-by: Hans Wippel <hwippel@linux.ibm.com> Signed-off-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
390dde0844
commit
890a2cb4a9
@@ -42,6 +42,8 @@ struct smc_ib_device { /* ib-device infos for smc */
|
||||
/* mac address per port*/
|
||||
u8 pnetid[SMC_MAX_PORTS][SMC_MAX_PNETID_LEN];
|
||||
/* pnetid per port */
|
||||
bool pnetid_by_user[SMC_MAX_PORTS];
|
||||
/* pnetid defined by user? */
|
||||
u8 initialized : 1; /* ib dev CQ, evthdl done */
|
||||
struct work_struct port_event_work;
|
||||
unsigned long port_event_mask;
|
||||
|
Reference in New Issue
Block a user