/* Get a anonymous page for the mapping. Make sure we can DMA to that memory location with 32bit PCI devices (i.e. don't use highmem for now ...). Bounce buffers don't work very well for the data rates video capture has.  */
static int videobuf_vm_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
/* Get a anonymous page for the mapping. Make sure we can DMA to that memory location with 32bit PCI devices (i.e. don't use highmem for now ...). Bounce buffers don't work very well for the data rates video capture has.  */
static int videobuf_vm_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
{
	struct page *page;
	dprintk(3,"fault: fault @ %08lx [vma %08lx-%08lx]\n",
		(unsigned long)vmf->virtual_address,vma->vm_start,vma->vm_end);
	page = alloc_page(GFP_USER | __GFP_DMA32);
	if (!page)
		return VM_FAULT_OOM;
	clear_user_highpage(page, (unsigned long)vmf->virtual_address);
	vmf->page = page;
	return 0;
}