From: eeb Date: Tue, 12 Apr 2005 10:59:46 +0000 (+0000) Subject: * fix for 4580 vibnal NULL deref in arp callback X-Git-Tag: 1.4.10~1278 X-Git-Url: https://git.whamcloud.com/?a=commitdiff_plain;h=b91884fa71c470b2b9e0e2c3de5d5e4293c17998;p=fs%2Flustre-release.git * fix for 4580 vibnal NULL deref in arp callback --- 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;