Explorar el Código

[ipoib] Always set the "full membership" bit in the IPv4 broadcast GID

The SM always creates the IPoIB multicast groups with full membership
partition keys.
tags/v1.0.0-rc1
Michael Brown hace 14 años
padre
commit
50242e4202
Se han modificado 2 ficheros con 5 adiciones y 1 borrados
  1. 2
    1
      src/drivers/net/ipoib.c
  2. 3
    0
      src/include/gpxe/infiniband.h

+ 2
- 1
src/drivers/net/ipoib.c Ver fichero

@@ -708,7 +708,8 @@ void ipoib_link_state_changed ( struct ib_device *ibdev ) {
708 708
 		 sizeof ( mac->gid.u.half[0] ) );
709 709
 
710 710
 	/* Update broadcast GID based on potentially-new partition key */
711
-	ipoib->broadcast.gid.u.words[2] = htons ( ibdev->pkey );
711
+	ipoib->broadcast.gid.u.words[2] =
712
+		htons ( ibdev->pkey | IB_PKEY_FULL );
712 713
 
713 714
 	/* Set net device link state to reflect Infiniband link state */
714 715
 	rc = ib_link_rc ( ibdev );

+ 3
- 0
src/include/gpxe/infiniband.h Ver fichero

@@ -33,6 +33,9 @@ FILE_LICENCE ( GPL2_OR_LATER );
33 33
 /** Default Infiniband partition key */
34 34
 #define IB_PKEY_DEFAULT 0xffff
35 35
 
36
+/** Infiniband partition key full membership flag */
37
+#define IB_PKEY_FULL 0x8000
38
+
36 39
 /**
37 40
  * Maximum payload size
38 41
  *

Loading…
Cancelar
Guardar