mirror of
https://github.com/ipxe/ipxe
synced 2025-12-23 21:41:43 +03:00
[infiniband] Add node GUID as distinct from the first port GUID
iPXE currently uses the first port's port GUID as the node GUID, rather than using the (possibly distinct) real node GUID. This can confuse opensm during the handover to a loaded OS: it thinks the port already belongs to a different node and so discards our port information with a warning message about duplicate ports. Everything is picked up correctly on the second subnet sweep, after opensm has established that the "old" node no longer exists, but this can delay link-up unnecessarily by several seconds. Fix by using the real node GUID. Signed-off-by: Michael Brown <mcb30@ipxe.org>
This commit is contained in:
@@ -364,7 +364,7 @@ static void ib_cm_path_complete ( struct ib_device *ibdev,
|
||||
req->local_id = htonl ( conn->local_id );
|
||||
memcpy ( &req->service_id, &conn->service_id,
|
||||
sizeof ( req->service_id ) );
|
||||
ib_get_hca_info ( ibdev, &req->local_ca );
|
||||
memcpy ( &req->local_ca, &ibdev->node_guid, sizeof ( req->local_ca ) );
|
||||
req->local_qpn__responder_resources = htonl ( ( qp->qpn << 8 ) | 1 );
|
||||
req->local_eecn__initiator_depth = htonl ( ( 0 << 8 ) | 1 );
|
||||
req->remote_eecn__remote_timeout__service_type__ee_flow_ctrl =
|
||||
|
||||
Reference in New Issue
Block a user