Re: [PATCHv2] rdma: add a new IB_ACCESS_GIFT flag

Roland Dreier
2013-04-02T16:58:03Z

On Tue, Apr 2, 2013 at 8:51 AM, Michael S. Tsirkin <mst@redhat.com> wrote:
>> At the moment registering an MR breaks COW. This breaks memory
>> overcommit for users such as KVM: we have a lot of COW pages, e.g.
>> instances of the zero page or pages shared using KSM.
>>
>> If the application does not care that adapter sees stale data (for
>> example, it tracks writes reregisters and resends), it can use a new
>> IBV_ACCESS_GIFT flag to prevent registration from breaking COW.
>>
>> The semantics are similar to that of SPLICE_F_GIFT thus the name.
>>
>> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
>
> Roland, Michael is yet to test this but could you please
> confirm whether this looks acceptable to you?

The patch itself is reasonable I guess, given the needs of this particular app.

I'm not particularly happy with the name of the flag. The analogy
with SPLICE_F_GIFT doesn't seem particularly strong and I'm not
convinced even the splice flag name is very understandable. But in
the RDMA case there's not really any sense in which we're "gifting"
memory to the adapter -- we're just telling the library "please don't
trigger copy-on-write" and it doesn't seem particularly easy for users
to understand that from the flag name.

- R.