linux_dsm_epyc7002/drivers/gpu/drm
Thomas Hellstrom e14c02e6b6 drm/vmwgfx: Look up objects without taking a reference
Typically when we look up objects under the rcu lock, we take a reference
to make sure the returned object pointer is valid.
Now provide a function to look up an object and instead of taking a
reference to it, keep the rcu lock held when returning the object pointer.
This means that the object pointer is valid as long as the rcu lock is
held, but the object may be doomed (its refcount may be zero). Any
persistent usage of the object pointer outside of the rcu lock requires
a reference to be taken using kref_get_unless_zero().

Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
Reviewed-by: Sinclair Yeh <syeh@vmware.com>
2018-09-27 16:14:48 +02:00
..
amd Merge branch 'drm-next-4.20' of git://people.freedesktop.org/~agd5f/linux into drm-next 2018-09-21 09:52:53 +10:00
arc
arm
armada drm: extract drm_atomic_uapi.c 2018-09-09 14:19:18 +02:00
ast
atmel-hlcdc drm/atmel-hlcdc: support bus-width (12/16/18/24) in endpoint nodes 2018-08-27 21:22:52 +02:00
bochs bochs: convert to drm_dev_register 2018-09-10 07:10:38 +02:00
bridge drm/bridge: analogix_dp: Downgrade "Link Training" messages to dev_dbg 2018-09-13 10:47:17 +02:00
cirrus drm/cirrus: use simpler remove_conflicting_pci_framebuffers() 2018-09-03 18:16:47 +02:00
etnaviv
exynos
fsl-dcu
gma500
hisilicon
i2c
i810
i915 drm-misc-next for 4.20: 2018-09-20 10:15:05 +10:00
imx
lib
mediatek
meson
mga
mgag200 drm/mgag200: use simpler remove_conflicting_pci_framebuffers() 2018-09-03 18:17:32 +02:00
msm drm: extract drm_atomic_uapi.c 2018-09-09 14:19:18 +02:00
mxsfb
nouveau fbdev: Drop FBINFO_CAN_FORCE_OUTPUT flag 2018-09-11 14:11:01 +02:00
omapdrm drm/omap: Don't call .set_timings() operation recursively 2018-09-03 16:13:30 +03:00
panel drm: panel-lvds: convert to SPDX identifiers 2018-09-14 13:54:02 +03:00
pl111
qxl qxl: refactor to use drm_fb_helper_fbdev_setup 2018-09-12 09:01:18 +02:00
r128
radeon Merge branch 'drm-next-4.20' of git://people.freedesktop.org/~agd5f/linux into drm-next 2018-09-21 09:52:53 +10:00
rcar-du drm: rcar-du: Remove packed VYUY support 2018-09-15 17:28:34 +03:00
rockchip drm/rockchip: Allow driver to be shutdown on reboot/kexec 2018-09-10 10:52:27 +02:00
savage
scheduler drm/scheduler: avoid redundant shifting of the entity v2 2018-08-27 11:11:14 -05:00
selftests
shmobile drm: shmobile: convert to SPDX identifiers 2018-09-14 13:54:02 +03:00
sis
sti
stm
sun4i drm/sun4i: add support for R40 HDMI PHY 2018-09-19 10:59:21 +02:00
tdfx
tegra drm/tegra: kick out simplefb 2018-09-03 18:18:08 +02:00
tilcdc
tinydrm
ttm drm/ttm, drm/vmwgfx: Move the lock- and object functionality to the vmwgfx driver 2018-09-27 15:19:20 +02:00
tve200
udl
v3d drm: expand replace_fence to support timeline point v2 2018-09-06 11:09:31 +02:00
vc4 drm: extract drm_atomic_uapi.c 2018-09-09 14:19:18 +02:00
vgem
via
virtio drm/virtio: add dma sync for dma mapped virtio gpu framebuffer pages 2018-09-19 13:33:06 +02:00
vkms drm/vkms: Add kerneldoc entry 2018-09-11 20:06:35 +02:00
vmwgfx drm/vmwgfx: Look up objects without taking a reference 2018-09-27 16:14:48 +02:00
xen
zte
ati_pcigart.c
drm_agpsupport.c
drm_atomic_helper.c drm: extract drm_atomic_uapi.c 2018-09-09 14:19:18 +02:00
drm_atomic_uapi.c drm: Differentiate the lack of an interface from invalid parameter 2018-09-14 17:29:47 +01:00
drm_atomic.c drm: extract drm_atomic_uapi.c 2018-09-09 14:19:18 +02:00
drm_auth.c
drm_blend.c drm: Clarify DRM_MODE_REFLECT_X/Y documentation 2018-09-11 11:21:30 +01:00
drm_bridge.c drm: bridge: document bridge attach/detach imbalance 2018-09-13 11:28:12 +02:00
drm_bufs.c drm: Differentiate the lack of an interface from invalid parameter 2018-09-14 17:29:47 +01:00
drm_cache.c
drm_client.c drm: Differentiate the lack of an interface from invalid parameter 2018-09-14 17:29:47 +01:00
drm_color_mgmt.c drm: Differentiate the lack of an interface from invalid parameter 2018-09-14 17:29:47 +01:00
drm_connector.c drm: Differentiate the lack of an interface from invalid parameter 2018-09-14 17:29:47 +01:00
drm_context.c drm: Differentiate the lack of an interface from invalid parameter 2018-09-14 17:29:47 +01:00
drm_crtc_helper_internal.h
drm_crtc_helper.c drm: extract drm_atomic_uapi.c 2018-09-09 14:19:18 +02:00
drm_crtc_internal.h drm: refuse ADDFB2 ioctl for broken bigendian drivers 2018-09-10 07:10:36 +02:00
drm_crtc.c drm: Differentiate the lack of an interface from invalid parameter 2018-09-14 17:29:47 +01:00
drm_debugfs_crc.c
drm_debugfs.c
drm_dma.c
drm_dp_aux_dev.c
drm_dp_cec.c drm_dp_cec: add note about good MegaChips 2900 CEC support 2018-08-31 10:20:38 +02:00
drm_dp_dual_mode_helper.c
drm_dp_helper.c drm: add LG eDP panel to quirk database 2018-09-19 16:44:12 +03:00
drm_dp_mst_topology.c drm_dp_mst_topology: fix broken drm_dp_sideband_parse_remote_dpcd_read() 2018-08-31 10:20:38 +02:00
drm_drv.c drm: Introduce per-device driver_features 2018-09-13 18:44:06 +03:00
drm_dumb_buffers.c
drm_edid_load.c
drm_edid.c
drm_encoder_slave.c
drm_encoder.c drm: Differentiate the lack of an interface from invalid parameter 2018-09-14 17:29:47 +01:00
drm_fb_cma_helper.c
drm_fb_helper.c drm/fb: Stop leaking physical address 2018-09-11 14:11:54 +02:00
drm_file.c
drm_flip_work.c
drm_fourcc.c drm: Reject unknown legacy bpp and depth for drm_mode_addfb ioctl 2018-09-06 08:07:41 +01:00
drm_framebuffer.c drm: Differentiate the lack of an interface from invalid parameter 2018-09-14 17:29:47 +01:00
drm_gem_cma_helper.c
drm_gem_framebuffer_helper.c drm: extract drm_atomic_uapi.c 2018-09-09 14:19:18 +02:00
drm_gem.c drm: Differentiate the lack of an interface from invalid parameter 2018-09-14 17:29:47 +01:00
drm_global.c
drm_hashtab.c
drm_info.c
drm_internal.h drm: Drop drmP.h from drm_connector.c 2018-09-09 14:19:17 +02:00
drm_ioc32.c
drm_ioctl.c drm: Differentiate the lack of an interface from invalid parameter 2018-09-14 17:29:47 +01:00
drm_irq.c drm: Differentiate the lack of an interface from invalid parameter 2018-09-14 17:29:47 +01:00
drm_kms_helper_common.c
drm_lease.c drm: Differentiate the lack of an interface from invalid parameter 2018-09-14 17:29:47 +01:00
drm_legacy.h
drm_lock.c drm: Differentiate the lack of an interface from invalid parameter 2018-09-14 17:29:47 +01:00
drm_memory.c
drm_mipi_dsi.c
drm_mm.c
drm_mode_config.c drm: Differentiate the lack of an interface from invalid parameter 2018-09-14 17:29:47 +01:00
drm_mode_object.c drm: Differentiate the lack of an interface from invalid parameter 2018-09-14 17:29:47 +01:00
drm_modes.c
drm_modeset_helper.c
drm_modeset_lock.c
drm_of.c
drm_panel_orientation_quirks.c
drm_panel.c
drm_pci.c drm: Differentiate the lack of an interface from invalid parameter 2018-09-14 17:29:47 +01:00
drm_plane_helper.c drm: extract drm_atomic_uapi.c 2018-09-09 14:19:18 +02:00
drm_plane.c drm: Differentiate the lack of an interface from invalid parameter 2018-09-14 17:29:47 +01:00
drm_prime.c drm: Differentiate the lack of an interface from invalid parameter 2018-09-14 17:29:47 +01:00
drm_print.c
drm_probe_helper.c
drm_property.c drm: Differentiate the lack of an interface from invalid parameter 2018-09-14 17:29:47 +01:00
drm_rect.c
drm_scatter.c drm: Differentiate the lack of an interface from invalid parameter 2018-09-14 17:29:47 +01:00
drm_scdc_helper.c
drm_simple_kms_helper.c
drm_syncobj.c drm: Differentiate the lack of an interface from invalid parameter 2018-09-14 17:29:47 +01:00
drm_sysfs.c
drm_trace_points.c
drm_trace.h
drm_vblank.c drm: Differentiate the lack of an interface from invalid parameter 2018-09-14 17:29:47 +01:00
drm_vm.c
drm_vma_manager.c drm: Remove "protection" around drm_vma_offset_manager_destroy() 2018-09-04 19:00:32 +01:00
drm_writeback.c
Kconfig drm/amdgpu: Merge amdkfd into amdgpu 2018-08-28 11:22:42 -05:00
Makefile drm: extract drm_atomic_uapi.c 2018-09-09 14:19:18 +02:00