Hi Hans, On Fri, Mar 23, 2012 at 08:19:45AM +0100, Hans Petter Selasky wrote: > Hi, > > I have a question about V4L2_MEMORY_USERPTR: > > From which context are the kernel's "copy_to_user()" functions called in > relation to V4L2_MEMORY_USERPTR ? Can this be a USB callback function or is it > only syscalls, like read/write/ioctl that are allowed to call "copy_to_user()" > ? > > The reason for asking is that I am maintaining a userland port of the media > tree's USB drivers for FreeBSD. At the present moment it is not allowed to > call copy_to_user() or copy_from_user() unless the backtrace shows a syscall, > so the V4L2_MEMORY_USERPTR feature is simply removed and disabled. I'm > currently thinking how I can enable this feature. I hope this is still relevant --- I just read your message the first time. I don't know how V4L2 is being used in FreeBSD userland, but the intent of copy_to_user() function is to copy the contents of kernel memory to somewhere the user space has a mapping to (and the other way around for copy_from_user()). Are your video buffers allocated by the kernel or not? How is USB accessed when you don't have the Linux kernel USB framework around? Kind regards, -- Sakari Ailus e-mail: sakari.ailus@xxxxxx jabber/XMPP/Gmail: sailus@xxxxxxxxxxxxxx -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html