On 05/07/2015 05:33 PM, Andrea Arcangeli wrote: > On Thu, May 07, 2015 at 05:28:46PM +0300, Pavel Emelyanov wrote: >> Yup, this is very close to what I did in my set -- introduced a message to >> report back to the user-space on read. But my message is more than 8+2*1 bytes, >> so we'll have one message for 0xAA API and another one for 0xAB (new) one :) > > I slightly altered it to fix an issue with packet alignments so it'd > be 16bytes. > > How big is your msg currently? Could we get to use the same API? Right now it's like this struct uffd_event { __u64 type; union { struct { __u64 addr; } pagefault; struct { __u32 ufd; } fork; struct { __u64 from; __u64 to; __u64 len; } remap; } arg; }; where .type is your uffd_msg.event and the rest is event-specific. > UFFDIO_REGISTER_MODE_FORK > > or > > UFFDIO_REGISTER_MODE_NON_COOPERATIVE would differentiate if you want > to register for fork/mremap/dontneed events as well or only the > default (UFFD_EVENT_PAGEFAULT). I planned to use this in UFFDIO_API call -- the uffdio_api.features will be in-out argument denoting the bits user needs and reporting what kernel can. -- Pavel -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>