* drm/cma-helper: Set VM_DONTEXPAND

* drm/atomic: Fix error handling in drm_atomic_set_mode_for_crtc()
 -----BEGIN PGP SIGNATURE-----
 
 iQEzBAABCAAdFiEEchf7rIzpz2NEoWjlaA3BHVMLeiMFAmIOJqQACgkQaA3BHVML
 eiOETAf/VbMUCR9KTb2rtVQ7Rb2/GMDZeOKoo5+jXaXgYeb0vjSChNI6yvp+NclV
 u6gkB7dnWwSO0VKd+Sahr6SPPT1GqhOuvrGAE80DMnjMIqb+7X8NU/xHtmFOc55R
 mgxQV3TbOC3psbMzZ9zKUQNKchctxuUVmTub0v1BQrx9+GXE8pew/owbF3PVD5Ho
 deIOXZCYHk/hEqI93M2GZoUlVxZLfBm8AvwD9U2FoF7QterX7fu9IBfvLJJA+v91
 jIe9ZHtg+WpkluK0fL9EX6S2qD4IzEmboHfFxpMwDDbewJ4D5Q/0fBSLZrEZh8+c
 y6fnoZg8lLtduOoGizaJDR6rg1nZ5w==
 =OpKp
 -----END PGP SIGNATURE-----

Merge tag 'drm-misc-fixes-2022-02-17' of git://anongit.freedesktop.org/drm/drm-misc into drm-fixes

 * drm/cma-helper: Set VM_DONTEXPAND
 * drm/atomic: Fix error handling in drm_atomic_set_mode_for_crtc()

Signed-off-by: Dave Airlie <airlied@redhat.com>

From: Thomas Zimmermann <tzimmermann@suse.de>
Link: https://patchwork.freedesktop.org/patch/msgid/Yg4mzQALMX69UmA3@linux-uq9g
This commit is contained in:
Dave Airlie 2022-02-18 05:39:53 +10:00
commit babb1fc323
2 changed files with 9 additions and 6 deletions

View File

@ -76,15 +76,17 @@ int drm_atomic_set_mode_for_crtc(struct drm_crtc_state *state,
state->mode_blob = NULL;
if (mode) {
struct drm_property_blob *blob;
drm_mode_convert_to_umode(&umode, mode);
state->mode_blob =
drm_property_create_blob(state->crtc->dev,
sizeof(umode),
&umode);
if (IS_ERR(state->mode_blob))
return PTR_ERR(state->mode_blob);
blob = drm_property_create_blob(crtc->dev,
sizeof(umode), &umode);
if (IS_ERR(blob))
return PTR_ERR(blob);
drm_mode_copy(&state->mode, mode);
state->mode_blob = blob;
state->enable = true;
drm_dbg_atomic(crtc->dev,
"Set [MODE:%s] for [CRTC:%d:%s] state %p\n",

View File

@ -512,6 +512,7 @@ int drm_gem_cma_mmap(struct drm_gem_cma_object *cma_obj, struct vm_area_struct *
*/
vma->vm_pgoff -= drm_vma_node_start(&obj->vma_node);
vma->vm_flags &= ~VM_PFNMAP;
vma->vm_flags |= VM_DONTEXPAND;
if (cma_obj->map_noncoherent) {
vma->vm_page_prot = vm_get_page_prot(vma->vm_flags);