On Thu, Oct 29, 2009 at 9:23 PM, Sasha Khapyorsky <[email protected]> wrote:
<snip...>

>> diff --git a/opensm/opensm/osm_slvl_map_rcv.c 
>> b/opensm/opensm/osm_slvl_map_rcv.c
>> index 9c37442..67c71bd 100644
>> --- a/opensm/opensm/osm_slvl_map_rcv.c
>> +++ b/opensm/opensm/osm_slvl_map_rcv.c
>> @@ -2,6 +2,7 @@
>>   * Copyright (c) 2004-2008 Voltaire, Inc. All rights reserved.
>>   * Copyright (c) 2002-2005 Mellanox Technologies LTD. All rights reserved.
>>   * Copyright (c) 1996-2003 Intel Corporation. All rights reserved.
>> + * Copyright (c) 2009 HNR Consulting. All rights reserved.
>>   *
>>   * This software is available to you under a choice of one of two
>>   * licenses.  You may choose to be licensed under the terms of the GNU
>> @@ -72,7 +73,9 @@ void osm_slvl_rcv_process(IN void *context, IN void 
>> *p_data)
>>       osm_slvl_context_t *p_context;
>>       ib_net64_t port_guid;
>>       ib_net64_t node_guid;
>> -     uint8_t out_port_num, in_port_num;
>> +     uint32_t attr_mod;
>> +     uint8_t out_port_num, in_port_num, startinport, startoutport,
>> +             endinport, endoutport;
>>
>>       CL_ASSERT(sm);
>>
>> @@ -111,6 +114,9 @@ void osm_slvl_rcv_process(IN void *context, IN void 
>> *p_data)
>>                   (uint8_t) cl_ntoh32(p_smp->attr_mod & 0xFF000000);
>>               in_port_num =
>>                   (uint8_t) cl_ntoh32((p_smp->attr_mod & 0x00FF0000) << 8);
>> +             attr_mod = cl_ntoh32(p_smp->attr_mod);
>> +             if (attr_mod & 0x30000)
>> +                     goto opt_sl2vl;
>>               p_physp = osm_node_get_physp_ptr(p_node, out_port_num);
>>       } else {
>>               p_physp = p_port->p_physp;
>> @@ -123,7 +129,7 @@ void osm_slvl_rcv_process(IN void *context, IN void 
>> *p_data)
>>          all we want is to update the subnet.
>>        */
>>       OSM_LOG(sm->p_log, OSM_LOG_VERBOSE,
>> -             "Got SLtoVL get response in_port_num %u out_port_num %u with "
>> +             "Received SLtoVL GetResp in_port_num %u out_port_num %u with "
>>               "GUID 0x%" PRIx64 " for parent node GUID 0x%" PRIx64 ", TID 
>> 0x%"
>>               PRIx64 "\n", in_port_num, out_port_num, cl_ntoh64(port_guid),
>>               cl_ntoh64(node_guid), cl_ntoh64(p_smp->trans_id));
>> @@ -142,6 +148,39 @@ void osm_slvl_rcv_process(IN void *context, IN void 
>> *p_data)
>>                               out_port_num, p_slvl_tbl, OSM_LOG_DEBUG);
>>
>>       osm_physp_set_slvl_tbl(p_physp, p_slvl_tbl, in_port_num);
>> +     goto Exit;
>> +
>> +opt_sl2vl:
>
> I think that you need to use functions here.
>
>> +     OSM_LOG(sm->p_log, OSM_LOG_VERBOSE,
>> +             "Got optimized SLtoVL get response in_port_num %u out_port_num 
>> "
>> +             "%u with GUID 0x%" PRIx64 " for parent node GUID 0x%" PRIx64
>> +             ", TID 0x%" PRIx64 "\n", in_port_num, out_port_num,
>> +             cl_ntoh64(port_guid), cl_ntoh64(node_guid),
>> +             cl_ntoh64(p_smp->trans_id));
>> +

Is this a macro/va args limit ?

Does the existing log message this was modeled after need to change
too ? It is virtually the same (maybe one less arg).

-- Hal

<snip...>
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to