[Linux-ha-dev] [PATCH] IPaddr2: support IPoIB gratuitous arps
Anibal Monsalve Salazar
anibal at sgi.com
Sun Oct 26 19:41:53 MDT 2008
IPaddr2: support IPoIB gratuitous arps
This patch allows the configuration of a heartbeat based NFS export of
CXFS clients on a cluster using NFS/IPoIB.
It sends gratuitous arps usin IPoIB by using ipoibarping instead of
send_arp, which relies on libnet and doesn't know IB.
Signed-off-by: Ivan Rayner <ivanr at sgi.com>
Signed-off-by: Anibal Monsalve Salazar <anibal at sgi.com>
diff -u resources/OCF/IPaddr2 resources/OCF/IPaddr2
--- resources/OCF/IPaddr2 2008-01-15 21:17:35.000000000 +1100
+++ resources/OCF/IPaddr2 2008-08-15 14:08:12.330442560 +1000
@@ -513,6 +513,29 @@
esac
}
+#
+# Run ipoibarping to note peers about new Infiniband address
+#
+run_send_ib_arp() {
+ SENDIBARP="/sbin/ipoibarping"
+
+ if [ ! -x $SENDIBARP ] ; then
+ ocf_log err "Could not send gratuitous Infiniband arps: file not found: $SENDIBPARP"
+ return
+ fi
+
+ ARGS="-q -c $ARP_REPEAT -U -I $NIC $BASEIP"
+ ocf_log info "$SENDIBARP $ARGS"
+ case $ARP_BACKGROUND in
+ yes)
+ ($SENDIBARP $ARGS || ocf_log err "Could not send gratuitous arps" &) >&2
+ ;;
+ *)
+ $SENDIBARP $ARGS || ocf_log err "Could not send gratuitous arps"
+ ;;
+ esac
+}
+
# Do we already serve this IP address?
#
# returns:
@@ -622,6 +645,9 @@
lo*)
: no need to run send_arp on loopback
;;
+ ib*)
+ run_send_ib_arp
+ ;;
*)
run_send_arp
;;
More information about the Linux-HA-Dev
mailing list