Commit ad9f266b authored by Boris Brezillon's avatar Boris Brezillon
Browse files

drm/gem: Fix builds with CONFIG_MMU=n



drm_gem_get_unmapped_area() relies on mm_get_unmapped_area() which is
only available if CONFIG_MMU=y.

Fixes: 99bda20d ("drm/gem: Introduce drm_gem_get_unmapped_area() fop")
Cc: Loïc Molinari <loic.molinari@collabora.com>
Reviewed-by: default avatarLoïc Molinari <loic.molinari@collabora.com>
Link: https://patch.msgid.link/20251209171151.2449120-1-boris.brezillon@collabora.com


Signed-off-by: default avatarBoris Brezillon <boris.brezillon@collabora.com>
parent 22ba3bb3
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -1267,6 +1267,7 @@ drm_gem_object_lookup_at_offset(struct file *filp, unsigned long start,
	return obj;
}

#ifdef CONFIG_MMU
/**
 * drm_gem_get_unmapped_area - get memory mapping region routine for GEM objects
 * @filp: DRM file pointer
@@ -1309,6 +1310,7 @@ unsigned long drm_gem_get_unmapped_area(struct file *filp, unsigned long uaddr,
	return ret;
}
EXPORT_SYMBOL_GPL(drm_gem_get_unmapped_area);
#endif

/**
 * drm_gem_mmap - memory map routine for GEM objects
+5 −0
Original line number Diff line number Diff line
@@ -537,9 +537,14 @@ void drm_gem_vm_close(struct vm_area_struct *vma);
int drm_gem_mmap_obj(struct drm_gem_object *obj, unsigned long obj_size,
		     struct vm_area_struct *vma);
int drm_gem_mmap(struct file *filp, struct vm_area_struct *vma);

#ifdef CONFIG_MMU
unsigned long drm_gem_get_unmapped_area(struct file *filp, unsigned long uaddr,
					unsigned long len, unsigned long pgoff,
					unsigned long flags);
#else
#define drm_gem_get_unmapped_area NULL
#endif

/**
 * drm_gem_object_get - acquire a GEM buffer object reference