drm: Update todo.rst
Internship season is starting, let's review this. One thing that's pending is Maxime's work to roll out drm_atomic_state pointers to all callbacks, he said he'll remove that entry once it's all done. v2: Fix typos (Maxime) Acked-by: Maxime Ripard <maxime@cerno.tech> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Cc: Maxime Ripard <mripard@kernel.org> Cc: Thomas Zimmermann <tzimmermann@suse.de> Cc: David Airlie <airlied@linux.ie> Cc: Daniel Vetter <daniel@ffwll.ch> Link: https://patchwork.freedesktop.org/patch/msgid/20210121112919.1460322-1-daniel.vetter@ffwll.ch
This commit is contained in:
Родитель
8af8a109b3
Коммит
6a56d09bda
|
@ -577,20 +577,24 @@ Contact: Daniel Vetter
|
||||||
|
|
||||||
Level: Intermediate
|
Level: Intermediate
|
||||||
|
|
||||||
KMS cleanups
|
Object lifetime fixes
|
||||||
------------
|
---------------------
|
||||||
|
|
||||||
Some of these date from the very introduction of KMS in 2008 ...
|
There's two related issues here
|
||||||
|
|
||||||
- Make ->funcs and ->helper_private vtables optional. There's a bunch of empty
|
- Cleanup up the various ->destroy callbacks, which often are all the same
|
||||||
function tables in drivers, but before we can remove them we need to make sure
|
simple code.
|
||||||
that all the users in helpers and drivers do correctly check for a NULL
|
|
||||||
vtable.
|
|
||||||
|
|
||||||
- Cleanup up the various ->destroy callbacks. A lot of them just wrapt the
|
- Lots of drivers erroneously allocate DRM modeset objects using devm_kzalloc,
|
||||||
drm_*_cleanup implementations and can be removed. Some tack a kfree() at the
|
which results in use-after free issues on driver unload. This can be serious
|
||||||
end, for which we could add drm_*_cleanup_kfree(). And then there's the (for
|
trouble even for drivers for hardware integrated on the SoC due to
|
||||||
historical reasons) misnamed drm_primary_helper_destroy() function.
|
EPROBE_DEFERRED backoff.
|
||||||
|
|
||||||
|
Both these problems can be solved by switching over to drmm_kzalloc(), and the
|
||||||
|
various convenience wrappers provided, e.g. drmm_crtc_alloc_with_planes(),
|
||||||
|
drmm_universal_plane_alloc(), ... and so on.
|
||||||
|
|
||||||
|
Contact: Daniel Vetter
|
||||||
|
|
||||||
Level: Intermediate
|
Level: Intermediate
|
||||||
|
|
||||||
|
@ -626,8 +630,6 @@ See the documentation of :ref:`VKMS <vkms>` for more details. This is an ideal
|
||||||
internship task, since it only requires a virtual machine and can be sized to
|
internship task, since it only requires a virtual machine and can be sized to
|
||||||
fit the available time.
|
fit the available time.
|
||||||
|
|
||||||
Contact: Daniel Vetter
|
|
||||||
|
|
||||||
Level: See details
|
Level: See details
|
||||||
|
|
||||||
Backlight Refactoring
|
Backlight Refactoring
|
||||||
|
|
Загрузка…
Ссылка в новой задаче