On 17/04/18 15:03, Roger Pau Monne wrote: > Current interface to the gntdev in FreeBSD is wrong, and mostly worked > out of luck before the PTI FreeBSD fixes, when kernel and user-space > where sharing the same page tables. > > On FreeBSD ioctls have the size of the passed struct encoded in the ioctl > number, because the generic ioctl handler in the OS takes care of > copying the data from user-space to kernel space, and then calls the > device specific ioctl handler. Thus using ioctl structs with variable > sizes is not possible. > > The fix is to turn the array of structs at the end of > ioctl_gntdev_alloc_gref and ioctl_gntdev_map_grant_ref into pointers, > that can be properly accessed from the kernel gntdev driver using the > copyin/copyout functions. Note that this is exactly how it's done for > the privcmd driver. > > Signed-off-by: Roger Pau Monné <roger....@citrix.com>
Release-acked-by: Juergen Gross <jgr...@suse.com> Juergen _______________________________________________ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel