Subject: Re: [RFC PATCH 00/11] IB/Verbs: IB Management Helpers

From: Michael Wang <[email-masked]>
Date: Tue, 07 Apr 2015 14:48:39 +0200

On 04/06/2015 10:22 PM, ira.weiny wrote:
> On Fri, Mar 27, 2015 at 04:39:54PM +0100, Michael Wang wrote:
>>
>> There are plenty of lengthy code to check the transport type of IB device,
>> or the link layer type of it's port, but actually we are just speculating
>> whether a particular management is supported by the device/port.
> 
> Michael,
> 
> There was a lot of input on this patch series which I believe indicates we
> would like to move forward.  Were you working through another version of the
> series with the suggested changes?

I've sent the v2 which is more complete as a solution IMHO, let's see if it
match the requirements :-)

Regards,
Michael Wang

> 
> Thanks,
> Ira
> 
> 
>>
>> Thus instead of inferring, we should have our own mechanism for
>> IB management capability/protocol checking, several proposals below.
>>
>> This patch set is the pioneer which try to collecting all the cases where
>> a management helper applicable, and put all the speculating logical together,
>> in order to be easily integrated to the new querying mechanism in future.
>>
>> TODO:
>>     The helper in patch 10 and 11 are still to be classified, that is
>>     cap_ib() and cap_eth().
>>
>>     The name/description of each helper may not correct enough, those folks
>>     who are familiar with these particular parts, your suggestion would be
>>     invaluable ;-)
>>
>> Proposals:
>>     Sean:
>>     https://www.mail-archive.com/[email-masked]/msg23339.html
>>     Doug:
>>     https://www.mail-archive.com/[email-masked]/msg23418.html
>>     Jason:
>>     https://www.mail-archive.com/[email-masked]/msg23425.html
>>
>> Michael Wang (11):
>>     [PATCH 01/11] IB/Verbs: Use helpers to check transport and link layer
>>     [RFC PATCH 02/11] IB/Verbs: Use management helper tech_iboe() for iboe-check
>>     [RFC PATCH 03/11] IB/Verbs: Use management helper has_mad() for mad-check
>>     [RFC PATCH 04/11] IB/Verbs: Use management helper cap_smi() for smi-check
>>     [RFC PATCH 05/11] IB/Verbs: Use management helper has_cm() for cm-check
>>     [RFC PATCH 06/11] IB/Verbs: Use management helper has_sa() and cap_sa() for sa-check
>>     [RFC PATCH 07/11] IB/Verbs: Use management helper has_mcast() and cap_mcast() for mcast-check
>>     [RFC PATCH 08/11] IB/Verbs: Use management helper has_iwarp() for iwarp-check
>>     [RFC PATCH 09/11] IB/Verbs: Use management helper has_ipoib() and cap_ipoib() for ipoib-check
>>     [RFC PATCH 10/11] IB/Verbs: Use management helper cap_ib() for ib-check
>>     [RFC PATCH 11/11] IB/Verbs: Use management helper cap_eth() for eth-check
>>
>> ---
>>  drivers/infiniband/core/agent.c           |    6
>>  drivers/infiniband/core/cm.c              |    6
>>  drivers/infiniband/core/cma.c             |   79 ++++------
>>  drivers/infiniband/core/mad.c             |   18 +-
>>  drivers/infiniband/core/multicast.c       |   30 +---
>>  drivers/infiniband/core/sa_query.c        |   42 ++---
>>  drivers/infiniband/core/ucm.c             |    8 -
>>  drivers/infiniband/core/user_mad.c        |    6
>>  drivers/infiniband/core/verbs.c           |   14 -
>>  drivers/infiniband/hw/mlx4/ah.c           |    6
>>  drivers/infiniband/hw/mlx4/cq.c           |   10 -
>>  drivers/infiniband/hw/mlx4/mad.c          |   36 +---
>>  drivers/infiniband/hw/mlx4/main.c         |   23 +--
>>  drivers/infiniband/hw/mlx4/mlx4_ib.h      |    6
>>  drivers/infiniband/hw/mlx4/qp.c           |   57 ++-----
>>  drivers/infiniband/hw/mlx4/sysfs.c        |   16 --
>>  drivers/infiniband/ulp/ipoib/ipoib_main.c |   18 +-
>>  include/rdma/ib_verbs.h                   |  218 ++++++++++++++++++++++++++++++
>>  net/sunrpc/xprtrdma/svc_rdma_recvfrom.c   |    8 -
>>  19 files changed, 381 insertions(+), 226 deletions(-)
>>