drm: Check mode object lease status in all master ioctl paths [v4]
Attempts to modify un-leased objects are rejected with an error. Information returned about unleased objects is modified to make them appear unusable and/or disconnected. Changes for v2 as suggested by Daniel Vetter <daniel.vetter@ffwll.ch>: * With the change in the __drm_mode_object_find API to pass the file_priv along, we can now centralize most of the lease-based access checks in that function. * A few places skip that API and require in-line checks. Changes for v3 provided by Dave Airlie <airlied@redhat.com> * remove support for leasing encoders. * add support for leasing planes. Changes for v4 * Only call drm_lease_held if DRIVER_MODESET. Signed-off-by:Keith Packard <keithp@keithp.com> Signed-off-by:
Dave Airlie <airlied@redhat.com>
Showing
- drivers/gpu/drm/drm_auth.c 1 addition, 1 deletiondrivers/gpu/drm/drm_auth.c
- drivers/gpu/drm/drm_encoder.c 3 additions, 2 deletionsdrivers/gpu/drm/drm_encoder.c
- drivers/gpu/drm/drm_mode_config.c 13 additions, 9 deletionsdrivers/gpu/drm/drm_mode_config.c
- drivers/gpu/drm/drm_mode_object.c 22 additions, 0 deletionsdrivers/gpu/drm/drm_mode_object.c
- drivers/gpu/drm/drm_plane.c 11 additions, 7 deletionsdrivers/gpu/drm/drm_plane.c
- drivers/gpu/drm/drm_vblank.c 20 additions, 2 deletionsdrivers/gpu/drm/drm_vblank.c
- include/drm/drm_lease.h 0 additions, 2 deletionsinclude/drm/drm_lease.h
Please register or sign in to comment