On Tue, Apr 02, 2013 at 09:57:38AM -0700, Roland Dreier wrote:On Tue, Apr 2, 2013 at 8:51 AM, Michael S. Tsirkin <mst@xxxxxxxxxx> wrote:The point really is that any writes by applicationThe patch itself is reasonable I guess, given the needs of this particular app.At the moment registering an MR breaks COW. This breaks memoryRoland, Michael is yet to test this but could you please
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@xxxxxxxxxx>
confirm whether this looks acceptable to you?
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.
won't be seen until re-registration, right?
OK, what's a better name? IBV_ACCESS_NON_COHERENT?
Please tell me what is preferable and we'll go ahead with it.