android_kernel_sony_sdm845/include/drm
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Lukas Wunner d006d9047c drm: Allow determining if current task is output poll worker
commit 25c058ccaf2ebbc3e250ec1e199e161f91fe27d4 upstream.

Introduce a helper to determine if the current task is an output poll
worker.

This allows us to fix a long-standing deadlock in several DRM drivers
wherein the ->runtime_suspend callback waits for the output poll worker
to finish and the worker in turn calls a ->detect callback which waits
for runtime suspend to finish.  The ->detect callback is invoked from
multiple call sites and waiting for runtime suspend to finish is the
correct thing to do except if it's executing in the context of the
worker.

v2: Expand kerneldoc to specifically mention deadlock between
    output poll worker and autosuspend worker as use case. (Lyude)

Cc: Dave Airlie <airlied@redhat.com>
Cc: Ben Skeggs <bskeggs@redhat.com>
Cc: Alex Deucher <alexander.deucher@amd.com>
Reviewed-by: Lyude Paul <lyude@redhat.com>
Signed-off-by: Lukas Wunner <lukas@wunner.de>
Link: https://patchwork.freedesktop.org/patch/msgid/3549ce32e7f1467102e70d3e9cbf70c46bfe108e.1518593424.git.lukas@wunner.de
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-03-18 11:18:48 +01:00
..
bridge drm/bridge: analogix_dp: Add analogix_dp_psr_supported 2016-10-04 08:23:16 +02:00
i2c drm/i2c: tda998x: Register ASoC hdmi-codec and add audio DT binding 2016-09-07 13:10:10 +01:00
ttm drm/ttm, drm/vmwgfx: Relax permission checking when opening surfaces 2017-04-12 12:41:10 +02:00
ati_pcigart.h drm: Move legacy buffer structures to <drm/drm_legacy.h> 2014-09-12 15:28:12 +02:00
drm_agpsupport.h drm: Give drm_agp_clear drm_legacy_ prefix 2016-04-27 08:41:34 +02:00
drm_atomic.h drm: Extract drm_plane.[hc] 2016-09-22 00:01:56 -07:00
drm_atomic_helper.h drm/fence: allow fence waiting to be interrupted by userspace 2016-09-12 16:59:15 -04:00
drm_auth.h drm: document drm_auth.c 2016-06-21 22:10:55 +02:00
drm_blend.h drm: Fix plane type uabi breakage 2016-09-22 23:52:12 -07:00
drm_bridge.h drm: Extract drm_bridge.h 2016-09-19 15:04:15 +02:00
drm_cache.h drm: Loongson-3 doesn't fully support wc memory 2016-04-22 10:24:11 +10:00
drm_color_mgmt.h drm/doc: Document color space handling 2016-09-22 00:04:03 -07:00
drm_connector.h drm: prevent double-(un)registration for connectors 2017-06-17 06:41:53 +02:00
drm_crtc.h drm/crtc: constify drm_crtc_index parameter 2016-10-10 17:28:58 +02:00
drm_crtc_helper.h drm: Allow determining if current task is output poll worker 2018-03-18 11:18:48 +01:00
drm_displayid.h drm/edid: add displayid detailed 1 timings to the modelist. (v1.1) 2016-05-23 11:35:31 +10:00
drm_dp_dual_mode_helper.h drm: Add helper for DP++ adaptors 2016-05-23 11:10:46 +03:00
drm_dp_helper.h drm: Add DP branch device info on debugfs 2016-09-15 14:51:07 +03:00
drm_dp_mst_helper.h drm/dp-mst: Missing kernel doc 2016-07-19 10:31:53 +02:00
drm_edid.h drm: Move all decl for drm_edid.c to drm_edid.h 2016-09-19 15:04:32 +02:00
drm_encoder.h drm: Move a few macros away from drm_crtc.h 2016-09-19 15:03:46 +02:00
drm_encoder_slave.h drm: Constify drm_encoder_slave_funcs 2015-12-15 13:41:17 +01:00
drm_fb_cma_helper.h drm/fb_cma_helper: add suspend helper 2016-06-18 18:33:54 -07:00
drm_fb_helper.h drm/fb-helper: fix sphinx markup for DRM_FB_HELPER_DEFAULT_OPS 2016-10-10 11:19:42 +02:00
drm_fixed.h drm: Add drm_fixp_from_fraction and drm_fixp2int_ceil 2016-02-05 15:23:48 +10:00
drm_flip_work.h drm: flip-work: change drm_flip_work_init prototype 2014-11-15 09:29:14 +10:00
drm_fourcc.h drm: move drm_mode_legacy_fb_format to drm_fourcc.c 2016-08-29 15:37:28 +02:00
drm_framebuffer.h drm: Move a few macros away from drm_crtc.h 2016-09-19 15:03:46 +02:00
drm_gem.h drm/doc: Fix more kerneldoc/sphinx warnings 2016-08-16 16:09:58 +02:00
drm_gem_cma_helper.h drm/cma: Introduce drm_gem_cma_dumb_create_internal() 2014-11-13 13:27:17 +01:00
drm_global.h
drm_hashtab.h drm: Add a hash-tab rcu-safe API 2012-11-28 18:36:05 +10:00
drm_irq.h drm: Extract&Document drm_irq.h 2016-07-19 10:29:47 +02:00
drm_legacy.h drm: document drm_auth.c 2016-06-21 22:10:55 +02:00
drm_mem_util.h drm,i915: Introduce drm_malloc_gfp() 2016-04-11 17:13:10 +01:00
drm_mipi_dsi.h drm/dsi: Implement DCS set/get display brightness 2016-08-24 13:34:00 +02:00
drm_mm.h drm: Track drm_mm nodes with an interval tree 2016-08-08 10:05:16 +02:00
drm_mode_object.h drm: Extract drm_bridge.h 2016-09-19 15:04:15 +02:00
drm_modes.h drm: Extract drm_bridge.h 2016-09-19 15:04:15 +02:00
drm_modeset_helper.h drm/kms-helpers: Extract drm_modeset_helper.[hc] 2016-08-16 16:10:19 +02:00
drm_modeset_helper_vtables.h drm/atomic-helper: Add atomic_disable CRTC helper callback 2016-08-29 10:21:52 +02:00
drm_modeset_lock.h drm: Implement drm_modeset_lock_all_ctx() 2015-12-02 23:10:59 +01:00
drm_of.h drm: add drm_of_encoder_active_endpoint helpers 2016-02-10 14:19:21 +01:00
drm_os_linux.h drm: Kill DRM_SUSER 2013-12-18 11:35:45 +10:00
drm_panel.h drm/panel: Flesh out kerneldoc 2016-05-06 16:04:48 +02:00
drm_pciids.h drm/radeon: add new OLAND pci id 2015-08-12 12:24:05 -04:00
drm_plane.h drm: Don't force all planes to be added to the state due to zpos 2016-10-26 18:48:05 +02:00
drm_plane_helper.h drm/kms-helpers: Extract drm_modeset_helper.[hc] 2016-08-16 16:10:19 +02:00
drm_property.h drm: Move a few macros away from drm_crtc.h 2016-09-19 15:03:46 +02:00
drm_rect.h drm: Add "prefix" parameter to drm_rect_debug_print() 2015-11-24 11:47:46 +01:00
drm_simple_kms_helper.h drm: simple_kms_helper: Add prepare_fb and cleanup_fb hooks 2016-10-05 15:18:02 +02:00
drm_sysfs.h
drm_vma_manager.h drm: use drm_file to tag vm-bos 2016-09-19 11:22:08 +02:00
drmP.h drm: Don't race connector registration 2017-06-17 06:41:53 +02:00
gma_drm.h drm/gma500: Remove unused ioctls 2014-03-17 20:11:57 +01:00
i915_component.h drm/i915: Add get_eld audio component 2015-12-10 13:39:27 +01:00
i915_drm.h drm: avoid "possible bad bitmask?" warning 2016-08-09 22:18:26 +02:00
i915_pciids.h drm/i915: more .is_mobile cleanups for BDW 2017-04-12 12:41:18 +02:00
intel-gtt.h drm/i915: Add support for mapping an object page by page 2016-06-13 10:03:54 +01:00