On Tue, Oct 31, 2017 at 5:41 AM, Björn Töpel <bjorn.to...@gmail.com> wrote: > From: Björn Töpel <bjorn.to...@intel.com> >
> +/* > + * struct tpacket_memreg_req is used in conjunction with PACKET_MEMREG > + * to register user memory which should be used to store the packet > + * data. > + * > + * There are some constraints for the memory being registered: > + * - The memory area has to be memory page size aligned. > + * - The frame size has to be a power of 2. > + * - The frame size cannot be smaller than 2048B. > + * - The frame size cannot be larger than the memory page size. > + * > + * Corollary: The number of frames that can be stored is > + * len / frame_size. > + * > + */ > +struct tpacket_memreg_req { > + unsigned long addr; /* Start of packet data area */ > + unsigned long len; /* Length of packet data area */ > + unsigned int frame_size; /* Frame size */ > + unsigned int data_headroom; /* Frame head room */ > +}; > + I have not reviewed the entire patchset but I think if we could add a version_hdr and then unionize the fields, it might be easier to add SVM support without having to spin v5. I could be wrong though. Chetan