Re: [PATCH rdma-next v1 2/2] RDMA/mlx5: Allow modifying Relaxed Ordering via fast registration

From: Jason Gunthorpe
Date: Thu May 27 2021 - 10:57:18 EST


On Thu, May 27, 2021 at 12:09:13PM +0100, Christoph Hellwig wrote:
> 1) qp_access_flags as a bitmask of possible operations on the queue pair
> The way I understood the queue pairs this should really be just bits
> for remote read, remote write and atomics, but a few places also
> mess with memory windows and local write, which seems to be some
> sort of iWarp cludge

Honestly I'm not completely sure what the QP access flags are for
anymore, will have to go look at some point.

> 2) IB_UVERBS_ACCESS_*. These just get checked using ib_check_mr_access
> and then passed into ->reg_user_mr, ->rereg_user_mr and
> ->reg_user_mr_dmabuf

Yes. Using the kernerl flags for those user marked APIs is intended to
simplify the drivers as the user/kernel MR logic should have shared
elements

> 3) in-kernel FRWR uses IB_ACCESS_*, but all users seem to hardcode it
> to IB_ACCESS_LOCAL_WRITE | IB_ACCESS_REMOTE_READ |
> IB_ACCESS_REMOTE_WRITE anyway

So when a ULP is processing a READ it doesn't create a FRWR with
read-only rights? Isn't that security wrong?

Jason