RE: [PATCH v2 11/17] IB/Verbs: Reform link_layer_show() and ib_uverbs_query_port()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> diff --git a/drivers/infiniband/core/sysfs.c
> b/drivers/infiniband/core/sysfs.c
> index cbd0383..aa53e40 100644
> --- a/drivers/infiniband/core/sysfs.c
> +++ b/drivers/infiniband/core/sysfs.c
> @@ -248,14 +248,10 @@ static ssize_t phys_state_show(struct ib_port *p,
> struct port_attribute *unused,
>  static ssize_t link_layer_show(struct ib_port *p, struct port_attribute
> *unused,
>  			       char *buf)
>  {
> -	switch (rdma_port_get_link_layer(p->ibdev, p->port_num)) {
> -	case IB_LINK_LAYER_INFINIBAND:
> +	if (rdma_transport_ib(p->ibdev, p->port_num))
>  		return sprintf(buf, "%s\n", "InfiniBand");
> -	case IB_LINK_LAYER_ETHERNET:
> +	else
>  		return sprintf(buf, "%s\n", "Ethernet");
> -	default:
> -		return sprintf(buf, "%s\n", "Unknown");
> -	}
>  }
> 
>  static PORT_ATTR_RO(state);
> diff --git a/drivers/infiniband/core/uverbs_cmd.c
> b/drivers/infiniband/core/uverbs_cmd.c
> index a9f0489..3eb6eb5 100644
> --- a/drivers/infiniband/core/uverbs_cmd.c
> +++ b/drivers/infiniband/core/uverbs_cmd.c
> @@ -515,8 +515,10 @@ ssize_t ib_uverbs_query_port(struct ib_uverbs_file
> *file,
>  	resp.active_width    = attr.active_width;
>  	resp.active_speed    = attr.active_speed;
>  	resp.phys_state      = attr.phys_state;
> -	resp.link_layer      = rdma_port_get_link_layer(file->device-
> >ib_dev,
> -							cmd.port_num);
> +	resp.link_layer      = rdma_transport_ib(file->device->ib_dev,
> +							cmd.port_num) ?
> +			       IB_LINK_LAYER_INFINIBAND :
> +			       IB_LINK_LAYER_ETHERNET;
> 
>  	if (copy_to_user((void __user *) (unsigned long) cmd.response,
>  			 &resp, sizeof resp))

Both of the above check the transport in order to determine the link layer.

These values are exposed to user space.  Does anyone know what link layer iWarp returns to user space? 
��.n��������+%������w��{.n�����{���fk��ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f





[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux