I was sure I already responded, my apologizes. I am ok to commit it. But generally, I do not believe that passing p_port parameter on the stack will work faster than taking it from the parent struct by macro. In addition, the function __endpt_parent still be in use while referencing or dereferencing endpoints
Please, note that we can do the same for CM flow: remove ipoib_endpt_parent() function at all and add p_port parameter to endpt_cm_recv_mgr_filter (if you decided to use CM code that Alex worked on it) -----Original Message----- From: Smith, Stan [mailto:[email protected]] Sent: Tuesday, November 16, 2010 7:01 PM To: Alex Naslednikov Cc: [email protected] Subject: FW: [PATCH] remove call to generate port, pass in port arg Alex, Did you have any issues with this patch? thanks, stan. Smith, Stan wrote: > Hello, > In the function ipoib_endpt_queue(), pass in the p_port arg instead > of calling a function to generate the p_port arg. > > signed-off-by: stan smith <[email protected]> > --- A/ulp/ipoib_NDIS6_CM/kernel/ipoib_endpoint.h Wed Nov 10 17:06:11 2010 +++ B/ulp/ipoib_NDIS6_CM/kernel/ipoib_endpoint.h Wed Nov 10 17:02:46 2010 @@ -223,7 +223,8 @@ NDIS_STATUS ipoib_endpt_queue( - IN ipoib_endpt_t* const p_endpt ); + IN ipoib_port_t* const p_port, + IN ipoib_endpt_t* const p_endpt ); struct _ipoib_port * ipoib_endpt_parent( --- A/ulp/ipoib_NDIS6_CM/kernel/ipoib_endpoint.cpp Wed Nov 10 17:06:48 2010 +++ B/ulp/ipoib_NDIS6_CM/kernel/ipoib_endpoint.cpp Wed Nov 10 17:04:26 2010 @@ -367,10 +367,10 @@ */ NDIS_STATUS ipoib_endpt_queue( + IN ipoib_port_t* const p_port, IN ipoib_endpt_t* const p_endpt ) { ib_api_status_t status; - ipoib_port_t *p_port; ib_av_attr_t av_attr; net32_t flow_lbl; @@ -400,8 +400,6 @@ } /* This is the first packet for this endpoint. Create the AV. */ - p_port = __endpt_parent( p_endpt ); - cl_memclr( &av_attr, sizeof(ib_av_attr_t) ); av_attr.port_num = p_port->port_num; --- A/ipoib_NDIS6_CM/kernel/ipoib_port.cpp Wed Nov 10 17:05:24 2010 +++ B/ipoib_NDIS6_CM/kernel/ipoib_port.cpp Wed Nov 10 17:05:07 2010 @@ -6732,7 +6732,7 @@ cl_obj_unlock( &p_port->obj ); cl_perf_start( EndptQueue ); - status = ipoib_endpt_queue( *pp_endpt ); + status = ipoib_endpt_queue( p_port, *pp_endpt ); cl_perf_stop( &p_port->p_adapter->perf, EndptQueue ); if( status != NDIS_STATUS_SUCCESS ) *pp_endpt = NULL; _______________________________________________ ofw mailing list [email protected] http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ofw
