All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] opensm/osm_state_mgr.c: Don't rely on PortInfo:PortState for base SP0
@ 2011-04-18 13:29 Hal Rosenstock
       [not found] ` <4DAC3CCC.4090101-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
  0 siblings, 1 reply; 6+ messages in thread
From: Hal Rosenstock @ 2011-04-18 13:29 UTC (permalink / raw)
  To: Alex Netes; +Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA


For base SP0, PortState in SM PortInfo attribute is not used and base SP0
is always "active". 

Signed-off-by: Hal Rosenstock <hal-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
---
diff --git a/opensm/osm_state_mgr.c b/opensm/osm_state_mgr.c
index 2e1ef94..dd308f2 100644
--- a/opensm/osm_state_mgr.c
+++ b/opensm/osm_state_mgr.c
@@ -352,7 +352,11 @@ static boolean_t state_mgr_is_sm_port_down(IN osm_sm_t * sm)
 
 	CL_ASSERT(p_physp);
 
-	state = osm_physp_get_port_state(p_physp);
+	if (p_port->p_node->sw &&
+	    !ib_switch_info_is_enhanced_port0(&p_port->p_node->sw->switch_info))
+		state = IB_LINK_ACTIVE;	/* base SP0 */
+	else
+		state = osm_physp_get_port_state(p_physp);
 	CL_PLOCK_RELEASE(sm->p_lock);
 
 Exit:
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/2] opensm/osm_state_mgr.c: Don't rely on PortInfo:PortState for base SP0
       [not found] ` <4DAC3CCC.4090101-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
@ 2011-04-20 14:17   ` Alex Netes
       [not found]     ` <20110420141713.GD28761-iQai9MGU/dyyaiaB+Ve85laTQe2KTcn/@public.gmane.org>
  2011-04-27 16:09   ` Alex Netes
  1 sibling, 1 reply; 6+ messages in thread
From: Alex Netes @ 2011-04-20 14:17 UTC (permalink / raw)
  To: Hal Rosenstock; +Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA

Hi Hal,

On 09:29 Mon 18 Apr     , Hal Rosenstock wrote:
> 
> For base SP0, PortState in SM PortInfo attribute is not used and base SP0
> is always "active". 

How SM can be attached to base SP0?
Moreover, if during discovery we found that SM is attached to base SP0, don't
we want to act like the port is down?

> 
> Signed-off-by: Hal Rosenstock <hal-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
> ---
> diff --git a/opensm/osm_state_mgr.c b/opensm/osm_state_mgr.c
> index 2e1ef94..dd308f2 100644
> --- a/opensm/osm_state_mgr.c
> +++ b/opensm/osm_state_mgr.c
> @@ -352,7 +352,11 @@ static boolean_t state_mgr_is_sm_port_down(IN osm_sm_t * sm)
>  
>  	CL_ASSERT(p_physp);
>  
> -	state = osm_physp_get_port_state(p_physp);
> +	if (p_port->p_node->sw &&
> +	    !ib_switch_info_is_enhanced_port0(&p_port->p_node->sw->switch_info))
> +		state = IB_LINK_ACTIVE;	/* base SP0 */
> +	else
> +		state = osm_physp_get_port_state(p_physp);
>  	CL_PLOCK_RELEASE(sm->p_lock);
>  
>  Exit:
> --
> To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
> the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

-- Alex
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/2] opensm/osm_state_mgr.c: Don't rely on PortInfo:PortState for base SP0
       [not found]     ` <20110420141713.GD28761-iQai9MGU/dyyaiaB+Ve85laTQe2KTcn/@public.gmane.org>
@ 2011-04-20 14:43       ` Hal Rosenstock
       [not found]         ` <4DAEF103.1000706-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
  0 siblings, 1 reply; 6+ messages in thread
From: Hal Rosenstock @ 2011-04-20 14:43 UTC (permalink / raw)
  To: Alex Netes; +Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA

Hi Alex,

On 4/20/2011 10:17 AM, Alex Netes wrote:
> Hi Hal,
> 
> On 09:29 Mon 18 Apr     , Hal Rosenstock wrote:
>>
>> For base SP0, PortState in SM PortInfo attribute is not used and base SP0
>> is always "active". 
> 
> How SM can be attached to base SP0?

What precludes this ? AFAIK SM can run on any switch port 0 whether
enhanced or base.

> Moreover, if during discovery we found that SM is attached to base SP0, don't
> we want to act like the port is down?

For base SP0, PortState and PortPhysicalState are "not used" in the SM
PortInfo attribute. That means they're "vendor" specific and they should
not be relied upon to be valid.

The point of this patch is that base SP0 is always up regardless of what
PortInfo for that port says.

If SM wasn't allowed to run on base SP0, it would be a different patch:
to prohibit such a port from being used at all as the SM port so the
failure would be earlier in the code flow when the SM tries to bind to
such a port.

-- Hal

>>
>> Signed-off-by: Hal Rosenstock <hal-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
>> ---
>> diff --git a/opensm/osm_state_mgr.c b/opensm/osm_state_mgr.c
>> index 2e1ef94..dd308f2 100644
>> --- a/opensm/osm_state_mgr.c
>> +++ b/opensm/osm_state_mgr.c
>> @@ -352,7 +352,11 @@ static boolean_t state_mgr_is_sm_port_down(IN osm_sm_t * sm)
>>  
>>  	CL_ASSERT(p_physp);
>>  
>> -	state = osm_physp_get_port_state(p_physp);
>> +	if (p_port->p_node->sw &&
>> +	    !ib_switch_info_is_enhanced_port0(&p_port->p_node->sw->switch_info))
>> +		state = IB_LINK_ACTIVE;	/* base SP0 */
>> +	else
>> +		state = osm_physp_get_port_state(p_physp);
>>  	CL_PLOCK_RELEASE(sm->p_lock);
>>  
>>  Exit:
>> --

> 
> -- Alex


--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/2] opensm/osm_state_mgr.c: Don't rely on PortInfo:PortState for base SP0
       [not found]         ` <4DAEF103.1000706-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
@ 2011-04-21 12:22           ` Alex Netes
       [not found]             ` <20110421122243.GA2137-iQai9MGU/dyyaiaB+Ve85laTQe2KTcn/@public.gmane.org>
  0 siblings, 1 reply; 6+ messages in thread
From: Alex Netes @ 2011-04-21 12:22 UTC (permalink / raw)
  To: Hal Rosenstock; +Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA

On 10:43 Wed 20 Apr     , Hal Rosenstock wrote:
> Hi Alex,
> 
> On 4/20/2011 10:17 AM, Alex Netes wrote:
> > Hi Hal,
> > 
> > On 09:29 Mon 18 Apr     , Hal Rosenstock wrote:
> >>
> >> For base SP0, PortState in SM PortInfo attribute is not used and base SP0
> >> is always "active". 
> > 
> > How SM can be attached to base SP0?
> 
> What precludes this ? AFAIK SM can run on any switch port 0 whether
> enhanced or base.
> 

I'm probably missing something. Base Switch Port 0 - A Switch Port 0 which is
not an Endport (IBTA p71). 
If you look further, Endport defined as a Port which can be a destination of 
LID-routed communication within the same Subnet as the sender.

How can SM be attached to a port which isn't an Endport?

-- Alex
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/2] opensm/osm_state_mgr.c: Don't rely on PortInfo:PortState for base SP0
       [not found]             ` <20110421122243.GA2137-iQai9MGU/dyyaiaB+Ve85laTQe2KTcn/@public.gmane.org>
@ 2011-04-21 12:48               ` Hal Rosenstock
  0 siblings, 0 replies; 6+ messages in thread
From: Hal Rosenstock @ 2011-04-21 12:48 UTC (permalink / raw)
  To: Alex Netes; +Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA

On 4/21/2011 8:22 AM, Alex Netes wrote:
> On 10:43 Wed 20 Apr     , Hal Rosenstock wrote:
>> Hi Alex,
>>
>> On 4/20/2011 10:17 AM, Alex Netes wrote:
>>> Hi Hal,
>>>
>>> On 09:29 Mon 18 Apr     , Hal Rosenstock wrote:
>>>>
>>>> For base SP0, PortState in SM PortInfo attribute is not used and base SP0
>>>> is always "active". 
>>>
>>> How SM can be attached to base SP0?
>>
>> What precludes this ? AFAIK SM can run on any switch port 0 whether
>> enhanced or base.
>>
> 
> I'm probably missing something. Base Switch Port 0 - A Switch Port 0 which is
> not an Endport (IBTA p71). 

The glossary is only informative (and not compliance) and has a number
of such issues.

You can see that the Endport definition on p.73 contradicts this:
"All Channel Adapter ports on the subnet are
endports of that subnet, as is Port 0 of each Switch in the subnet.
Switch ports other than Port 0 may not be endports."

A spec comment (RefID 4352) was entered quite some time ago on this to
change this to something like:

A <Switch Port 0> with a set of basic capabilities (defined in this
specification). That set is less than the capabilities of an <Enhanced
Switch Port 0>, and also less than the minimum set of capabilities
required of a <Target Channel Adapter>.

> If you look further, Endport defined as a Port which can be a destination of 
> LID-routed communication within the same Subnet as the sender.

Actually this is imprecise as well as the phrase "within the same Subnet
as the sender" should be eliminated.

> How can SM be attached to a port which isn't an Endport?

Base SP0 does have a LID (look at PortInfo:LID Used By column is X'd).

-- Hal

> -- Alex
> --
> To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
> the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/2] opensm/osm_state_mgr.c: Don't rely on PortInfo:PortState for base SP0
       [not found] ` <4DAC3CCC.4090101-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
  2011-04-20 14:17   ` Alex Netes
@ 2011-04-27 16:09   ` Alex Netes
  1 sibling, 0 replies; 6+ messages in thread
From: Alex Netes @ 2011-04-27 16:09 UTC (permalink / raw)
  To: Hal Rosenstock; +Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA

Hi Hal,

On 09:29 Mon 18 Apr     , Hal Rosenstock wrote:
> 
> For base SP0, PortState in SM PortInfo attribute is not used and base SP0
> is always "active". 
> 
> Signed-off-by: Hal Rosenstock <hal-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
> ---

Applied. Thanks.
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2011-04-27 16:09 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-04-18 13:29 [PATCH 1/2] opensm/osm_state_mgr.c: Don't rely on PortInfo:PortState for base SP0 Hal Rosenstock
     [not found] ` <4DAC3CCC.4090101-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
2011-04-20 14:17   ` Alex Netes
     [not found]     ` <20110420141713.GD28761-iQai9MGU/dyyaiaB+Ve85laTQe2KTcn/@public.gmane.org>
2011-04-20 14:43       ` Hal Rosenstock
     [not found]         ` <4DAEF103.1000706-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
2011-04-21 12:22           ` Alex Netes
     [not found]             ` <20110421122243.GA2137-iQai9MGU/dyyaiaB+Ve85laTQe2KTcn/@public.gmane.org>
2011-04-21 12:48               ` Hal Rosenstock
2011-04-27 16:09   ` Alex Netes

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.