[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <56713C5F.5020507@profitbricks.com>
Date: Wed, 16 Dec 2015 11:26:39 +0100
From: Michael Wang <yun.wang@...fitbricks.com>
To: Jason Gunthorpe <jgunthorpe@...idianresearch.com>
Cc: Nicholas Krause <xerofoify@...il.com>, dledford@...hat.com,
sean.hefty@...el.com, hal.rosenstock@...il.com,
haggaie@...lanox.com, matanb@...lanox.com, doront@...lanox.com,
david.ahern@...cle.com, erezsh@...lanox.com,
linux-rdma@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH RESEND] infiniband:core:Add needed error path in
cm_init_av_by_path
On 12/15/2015 06:30 PM, Jason Gunthorpe wrote:
> On Tue, Dec 15, 2015 at 05:38:34PM +0100, Michael Wang wrote:
>> The hop_limit is only suggest that the package allowed to be
>> routed, not have to, correct?
>
> If the hop limit is >= 2 (?) then the GRH is mandatory. The
> SM will return this information in the PathRecord if it determines a
> GRH is required. The whole stack follows this protocol.
>
> The GRH is optional for in-subnet communications.
Thanks for the explain :-)
I've rechecked the ib_init_ah_from_path() again, and found it
still set IB_AH_GRH when the GID cache missing, but with:
grh.sgid_index = 0
grh.flow_label = 0
grh.hop_limit = 0
grh.traffic_class = 0
Not sure if it's just coincidence, hop_limit is 0, so router
will discard the pkg and GRH won't be used, the transaction in
subnet still works.
Could this by designed as an optimization for the case like when
SM reassigning the GID?
BTW, cma_sidr_rep_handler() also call ib_init_ah_from_path() with out
a check on return.
Regards,
Michael Wang
>
> Jason
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists