On Wed, Jan 25, 2017 at 12:05:51PM -0600, Shiraz Saleem wrote: > On Wed, Jan 25, 2017 at 04:29:55PM +0200, Or Gerlitz wrote: > > On Wed, Jan 25, 2017 at 2:39 PM, Leon Romanovsky <leon@xxxxxxxxxx> wrote: > > > > > > On Tue, Jan 24, 2017 at 02:59:38PM -0600, Shiraz Saleem wrote: > > > > > > > > > > > --- a/drivers/infiniband/hw/mlx4/alias_GUID.c > > > > > +++ b/drivers/infiniband/hw/mlx4/alias_GUID.c > > > > > @@ -499,6 +499,7 @@ static int set_guid_rec(struct ib_device *ibdev, > > > > > struct list_head *head = > > > > > &dev->sriov.alias_guid.ports_guid[port - 1].cb_list; > > > > > > > > > > + memset(&attr, 0, sizeof(struct ib_port_attr)); > > > > > err = __mlx4_ib_query_port(ibdev, port, &attr, 1); > > > > > > > > So why not call ib_query_port here as opposed to driver handler? As stated in your subject line. > > > > > > This is call to mlx4 internal implementation of ib_query_port. This > > > implementation takes an additional parameter. In this case it is "1", > > > while call to ib_query_port will call to this function with "0". > > > > The mlx4 IB driver is used all of native, SRIOV PF and SRIOV VF instances. > > > > Under SRIOV, the port has network view and host view. This internal query port > > call (and the other one you commented on) is done in a network view by the PF. > > > > The calls that come from the IB core are done with host view. > > > > As such I had to retain these two internal calls. > > Ok. Understand it better now. BTW this parameter 'netw_view' doesnt appear to > be used in one of the functions eth_link_query_port called from mlx4 query port > implementation. Thanks for pointing it. I sent cleanup patch to ML. > -- > To unsubscribe from this list: send the line "unsubscribe linux-rdma" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html
Attachment:
signature.asc
Description: PGP signature