From b91884fa71c470b2b9e0e2c3de5d5e4293c17998 Mon Sep 17 00:00:00 2001 From: eeb Date: Tue, 12 Apr 2005 10:59:46 +0000 Subject: [PATCH] * fix for 4580 vibnal NULL deref in arp callback --- lnet/klnds/viblnd/viblnd_cb.c | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/lnet/klnds/viblnd/viblnd_cb.c b/lnet/klnds/viblnd/viblnd_cb.c index 1642b98..83ea106 100644 --- a/lnet/klnds/viblnd/viblnd_cb.c +++ b/lnet/klnds/viblnd/viblnd_cb.c @@ -2753,11 +2753,16 @@ kibnal_arp_callback (ibat_stat_t arprc, ibat_arp_data_t *arp_data, void *arg) kib_peer_t *peer = conn->ibc_peer; unsigned long flags; - CDEBUG(arprc == ibat_stat_ok ? D_NET : D_ERROR, - "Arp "LPX64"@%u.%u.%u.%u rc %d LID %s PATH %s\n", - peer->ibp_nid, HIPQUAD(peer->ibp_ip), arprc, - (arp_data->mask & IBAT_LID_VALID) == 0 ? "invalid" : "valid", - (arp_data->mask & IBAT_PRI_PATH_VALID) == 0 ? "invalid" : "valid"); + if (arprc != ibat_stat_ok) + CERROR("Arp "LPX64"@%u.%u.%u.%u failed: %d\n", + peer->ibp_nid, HIPQUAD(peer->ibp_ip), arprc); + else + CDEBUG(D_NET, "Arp "LPX64"@%u.%u.%u.%u OK: LID %s PATH %s\n", + peer->ibp_nid, HIPQUAD(peer->ibp_ip), + (arp_data->mask & IBAT_LID_VALID) == 0 ? "invalid" : "valid", + (arp_data->mask & IBAT_PRI_PATH_VALID) == 0 ? "invalid" : "valid"); + + LASSERT (conn != NULL); LASSERT (conn->ibc_state == IBNAL_CONN_ACTIVE_ARP); conn->ibc_connvars->cv_arprc = arprc; -- 1.8.3.1