Re: [PATCH rdma-core 0/5] Common MMIO accessors for rdma-core

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

 



> On Apr 14, 2017, at 1:39 AM, Jason Gunthorpe <jgunthorpe@xxxxxxxxxxxxxxxxxxxx> wrote:
> 
> I've been threatening to do this for a while, here is a refactoring of the
> MMIO accessors into a common set of functions that unify all the weird
> options accumulated in the various providers:
> 
> - Normal 64 bit accessors
> - 32 bit emulation of 64 bit write
> - ia32 XMM support for 64 bit write
> - s390 syscall accessors
> 
> This is a big complex transformation that has lots of possibility for little
> mistakes, it would be good for other people to look closely at this before we
> merge it.
Hi Jason and Doug,

We are on holidays vacation until next Tuesday and thus we won't be able to review it until then.
Please hold on with merging it until we review/ack it.

Thanks
> 
> This is available on my github:
> 
> https://github.com/jgunthorpe/rdma-plumbing/tree/mmio
> 
> For this starting point I only converted the Mellanox drivers, because they
> are all basically the same.
> 
> This fixes one bug in the mlx_read_clock function which attempted to double
> read a register without telling the compiler, which was miscompiling :(
> 
> I have another series on top of this:
> 
> https://github.com/jgunthorpe/rdma-plumbing/tree/sparse4
> 
> Which does the last few things to make the Mellanox drivers sparse clean.
> 
> Jason Gunthorpe (5):
>  util: Add common mmio macros
>  mlx4: Use util/mmio.h
>  mlx5: Use util/mmio.h
>  mthca: Use util/mmio.h
>  Add mmio_memcpy_x64
> 
> CMakeLists.txt                |  16 +++
> buildlib/config.h.in          |   2 +
> buildlib/rdma_functions.cmake |   4 +-
> providers/mlx4/cq.c           |  14 ++-
> providers/mlx4/doorbell.h     |  70 -----------
> providers/mlx4/mlx4.c         |   1 -
> providers/mlx4/mlx4.h         |   1 -
> providers/mlx4/mmio.h         | 116 ------------------
> providers/mlx4/qp.c           |  10 +-
> providers/mlx4/srq.c          |   1 -
> providers/mlx4/verbs.c        |   9 +-
> providers/mlx5/cq.c           |  13 ++-
> providers/mlx5/doorbell.h     |  67 -----------
> providers/mlx5/mlx5.c         |   2 -
> providers/mlx5/mlx5.h         |   1 -
> providers/mlx5/qp.c           |  22 ++--
> providers/mlx5/srq.c          |   1 -
> providers/mlx5/verbs.c        |   9 +-
> providers/mthca/cq.c          |  38 +++---
> providers/mthca/doorbell.h    | 109 +----------------
> providers/mthca/qp.c          |  44 ++++---
> providers/mthca/srq.c         |  14 ++-
> util/CMakeLists.txt           |  20 +++-
> util/dummy.c                  |   0
> util/mmio.c                   |  83 +++++++++++++
> util/mmio.h                   | 265 ++++++++++++++++++++++++++++++++++++++++++
> 26 files changed, 480 insertions(+), 452 deletions(-)
> delete mode 100644 providers/mlx4/doorbell.h
> delete mode 100644 providers/mlx4/mmio.h
> delete mode 100644 providers/mlx5/doorbell.h
> create mode 100644 util/dummy.c
> create mode 100644 util/mmio.c
> create mode 100644 util/mmio.h
> 
> -- 
> 2.7.4
> 
> --
> 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
--
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




[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