> -----Original Message-----
> From: Haggai Eran [mailto:hagg...@mellanox.com]
> Sent: Monday, July 06, 2015 2:09 AM
> To: Steve Wise; dledf...@redhat.com
> Cc: sa...@mellanox.com; ogerl...@mellanox.com; r...@mellanox.com; 
> linux-rdma@vger.kernel.org; e...@mellanox.com; target-
> de...@vger.kernel.org; linux-...@vger.kernel.org; 
> trond.mykleb...@primarydata.com; bfie...@fieldses.org
> Subject: Re: [PATCH V3 1/5] RDMA/core: Transport-independent access flags
> 
> On 06/07/2015 02:22, Steve Wise wrote:
> > +int rdma_device_access_flags(struct ib_pd *pd, int roles, int attrs)
> > +{
> > +   int access_flags = attrs;
> > +
> > +   if (roles & RDMA_MRR_RECV)
> > +           access_flags |= IB_ACCESS_LOCAL_WRITE;
> > +
> > +   if (roles & RDMA_MRR_WRITE_DEST)
> > +           access_flags |= IB_ACCESS_LOCAL_WRITE | IB_ACCESS_REMOTE_WRITE;
> > +
> > +   if (roles & RDMA_MRR_READ_DEST) {
> > +           access_flags |= IB_ACCESS_LOCAL_WRITE;
> > +           if (rdma_protocol_iwarp(pd->device,
> > +                                   rdma_start_port(pd->device)))
> > +                   access_flags |= IB_ACCESS_REMOTE_WRITE;
> > +   }
> > +
> > +   if (roles & RDMA_MRR_READ_SOURCE)
> > +           access_flags |= IB_ACCESS_REMOTE_READ;
> > +
> > +   if (roles & RDMA_MRR_ATOMIC_DEST)
> > +           access_flags |= IB_ACCESS_LOCAL_WRITE | IB_ACCESS_REMOTE_ATOMIC;
> 
> I think you need LOCAL_WRITE for ATOMIC_SOURCE in order to receive the
> results of the atomic operation.
> 

Ok.  I'm not familiar with atomics.  I'll verify with the IB spec and update 
the code as needed.


> > +
> > +   if (roles & RDMA_MRR_MW_BIND)
> > +           access_flags |= IB_ACCESS_MW_BIND;
> > +
> > +   return access_flags;
> > +}
> > +EXPORT_SYMBOL(rdma_device_access_flags);

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to