linux/drivers/gpu/drm
Chris Wilson cf1976b113 drm/i915: Also drop vm.ref along error paths for vma construction
Not only do we need to release the vm.ref we acquired for the vma on the
duplicate insert branch, but also for the normal error paths, so roll
them all into one.

Reported-by: Andi Shyti <andi.shyti@intel.com>
Suggested-by: Andi Shyti <andi.shyti@intel.com>
Fixes: 2850748ef8 ("drm/i915: Pull i915_vma_pin under the vm->mutex")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Andi Shyti <andi.shyti@intel.com>
Cc: <stable@vger.kernel.org> # v5.5+
Reviewed-by: Andi Shyti <andi.shyti@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200702211015.29604-1-chris@chris-wilson.co.uk
(cherry picked from commit 03fca66b7a)
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
2020-07-06 17:16:03 -07:00
..
amd drm/amdgpu: use %u rather than %d for sclk/mclk 2020-07-01 14:20:23 -04:00
arc
arm drm/komeda: use devm_drm_dev_alloc 2020-04-28 16:04:00 +02:00
armada drm pull for 5.8-rc1 2020-06-02 15:04:15 -07:00
aspeed drm/aspeed: Use devm_drm_dev_alloc 2020-04-28 16:13:03 +02:00
ast drm/ast: fix missing break in switch statement for format->cpp[0] case 4 2020-06-11 09:05:31 +02:00
atmel-hlcdc drm/atmel-hlcdc: Use simple encoder 2020-04-02 14:16:44 +02:00
bochs drm/bochs: Remove explicit drm_connector_register 2020-04-28 16:14:17 +02:00
bridge treewide: replace '---help---' in Kconfig files with 'help' 2020-06-14 01:57:21 +09:00
etnaviv mmap locking API: rename mmap_sem to mmap_lock 2020-06-09 09:39:14 -07:00
exynos drm/exynos: fix ref count leak in mic_pre_enable 2020-06-29 09:38:41 +09:00
fsl-dcu drm/fsl-dcu: Use simple encoder 2020-04-02 14:16:44 +02:00
gma500 drm/gma500: Remove dead code 2020-04-21 09:02:29 +02:00
hisilicon drm: kirin: Revert change to add register connect helper functions 2020-04-13 01:46:02 +00:00
i2c drm/i2c/tda998x: Make tda998x_audio_digital_mute static 2020-05-09 23:06:07 +02:00
i810
i915 drm/i915: Also drop vm.ref along error paths for vma construction 2020-07-06 17:16:03 -07:00
imx drm/imx: Use simple encoder 2020-04-02 14:16:44 +02:00
ingenic drm pull for 5.8-rc1 2020-06-02 15:04:15 -07:00
lib
lima drm/lima: enable runtime pm 2020-04-24 20:51:24 +08:00
mcde drm: mcde: Fix forgotten user of drm->dev_private 2020-06-16 22:22:38 +02:00
mediatek ARM/SoC: drivers for v5.7 2020-06-04 19:56:20 -07:00
meson drm pull for 5.8-rc1 2020-06-02 15:04:15 -07:00
mga
mgag200 drm/mgag200: Embed connector instance in struct mga_device 2020-05-11 16:40:44 +02:00
msm Merge tag 'drm-msm-fixes-2020-06-25' of https://gitlab.freedesktop.org/drm/msm into drm-fixes 2020-07-01 15:01:51 +10:00
mxsfb
nouveau mmap locking API: use coccinelle to convert mmap_sem rwsem call sites 2020-06-09 09:39:14 -07:00
omapdrm treewide: replace '---help---' in Kconfig files with 'help' 2020-06-14 01:57:21 +09:00
panel drm/panel-simple: fix connector type for newhaven_nhd_43_480272ef_atxl 2020-06-21 09:49:53 +02:00
panfrost
pl111 drm: pl111: Move VExpress setup into versatile init 2020-04-28 14:06:20 -05:00
qxl drm pull for 5.8-rc1 2020-06-02 15:04:15 -07:00
r128 drm: delete drm_pci.h 2020-04-03 17:11:41 +02:00
radeon drm/radeon: fix fb_div check in ni_init_smc_spll_table() 2020-06-24 10:34:48 -04:00
rcar-du drm: rcar-du: Fix build error 2020-06-21 05:12:57 +03:00
rockchip drm/rockchip: Remove unneeded semicolon 2020-04-27 21:15:55 +02:00
savage
scheduler drm/scheduler: fix drm_sched_get_cleanup_job 2020-04-15 11:09:13 +02:00
selftests
shmobile drm/shmobile: Use simple encoder 2020-04-02 14:16:45 +02:00
sis
sti
stm drm/stm: ltdc: check number of endpoints 2020-04-27 15:42:12 +02:00
sun4i drm: sun4i: hdmi: Remove extra HPD polling 2020-06-30 10:01:48 +02:00
tdfx
tegra drm/tegra: Add zpos property for cursor planes 2020-06-16 19:03:25 +02:00
tidss drm pull for 5.8-rc1 2020-06-02 15:04:15 -07:00
tilcdc drm/tilcdc: Set up fbdev after fully registering device 2020-04-08 16:24:56 +02:00
tiny drm/cirrus: Move to drm/tiny 2020-04-28 16:05:15 +02:00
ttm Linux 5.8-rc1 2020-06-16 13:31:47 +02:00
tve200
udl drm/udl: Make udl_handle_damage static 2020-05-06 21:08:37 +02:00
v3d drm/v3d: Delete v3d_dev->pdev 2020-04-28 15:15:59 +02:00
vboxvideo drm/vboxvideo: Use devm_gen_pool_create 2020-04-28 15:08:51 +02:00
vc4 drm-misc-next for 5.8: 2020-04-22 10:41:35 +10:00
vgem
via
virtio drm pull for 5.8-rc1 2020-06-02 15:04:15 -07:00
vkms drm/vkms: Hold gem object while still in-use 2020-05-06 21:51:46 -04:00
vmwgfx drm: remove drm specific kmap_atomic code 2020-06-04 19:06:22 -07:00
xen drm-misc-next for 5.8: 2020-04-22 10:41:35 +10:00
zte drm/zte: Use simple encoder 2020-04-02 14:16:46 +02:00
drm_agpsupport.c
drm_atomic_helper.c
drm_atomic_state_helper.c
drm_atomic_uapi.c
drm_atomic.c
drm_auth.c drm: error out with EBUSY when device has existing master 2020-03-30 12:20:41 +01:00
drm_blend.c drm: plane: Verify that no or all planes have a zpos property 2020-05-14 02:10:52 +03:00
drm_bridge_connector.c
drm_bridge.c
drm_bufs.c drm: delete drm_pci.h 2020-04-03 17:11:41 +02:00
drm_cache.c
drm_client_modeset.c
drm_client.c
drm_color_mgmt.c
drm_connector.c drm/connector: notify userspace on hotplug after register complete 2020-06-03 10:24:23 +02:00
drm_context.c
drm_crtc_helper_internal.h
drm_crtc_helper.c
drm_crtc_internal.h
drm_crtc.c
drm_damage_helper.c
drm_debugfs_crc.c
drm_debugfs.c
drm_dma.c drm: delete drm_pci.h 2020-04-03 17:11:41 +02:00
drm_dp_aux_dev.c
drm_dp_cec.c
drm_dp_dual_mode_helper.c
drm_dp_helper.c Short summary of fixes pull (less than what git shortlog provides): 2020-05-28 15:38:39 +10:00
drm_dp_mst_topology_internal.h
drm_dp_mst_topology.c drm pull for 5.8-rc1 2020-06-02 15:04:15 -07:00
drm_drv.c drm: Add devm_drm_dev_alloc macro 2020-04-28 15:05:19 +02:00
drm_dsc.c
drm_dumb_buffers.c
drm_edid_load.c
drm_edid.c drm pull for 5.8-rc1 2020-06-02 15:04:15 -07:00
drm_encoder_slave.c drm: encoder_slave: use new I2C API 2020-06-19 09:20:21 +02:00
drm_encoder.c
drm_fb_cma_helper.c drm: Fix misspellings of "Analog Devices" 2020-04-21 08:15:03 +02:00
drm_fb_helper.c drm/fb-helper: Fix vt restore 2020-06-24 21:34:11 +02:00
drm_file.c drm pull for 5.8-rc1 2020-06-02 15:04:15 -07:00
drm_flip_work.c
drm_format_helper.c
drm_fourcc.c
drm_framebuffer.c
drm_gem_cma_helper.c
drm_gem_framebuffer_helper.c drm: Don't free a struct never allocated by drm_gem_fb_init() 2020-04-16 13:44:29 +02:00
drm_gem_shmem_helper.c
drm_gem_ttm_helper.c
drm_gem_vram_helper.c drm/vram-helpers: Merge code into a single file 2020-04-09 09:56:33 +02:00
drm_gem.c
drm_hashtab.c
drm_hdcp.c drm: Fix HDCP failures when SRM fw is missing 2020-05-05 14:01:53 -04:00
drm_internal.h
drm_ioc32.c
drm_ioctl.c drm pull for 5.8-rc1 2020-06-02 15:04:15 -07:00
drm_irq.c
drm_kms_helper_common.c
drm_lease.c
drm_legacy_misc.c
drm_legacy.h
drm_lock.c
drm_managed.c drm/managed: Fix off-by-one in warning 2020-03-30 21:42:23 +02:00
drm_memory.c
drm_mipi_dbi.c
drm_mipi_dsi.c
drm_mm.c drm/mm: optimize rb_hole_addr rbtree search 2020-05-05 13:39:38 +02:00
drm_mode_config.c
drm_mode_object.c drm: Replace drm_modeset_lock/unlock_all with DRM_MODESET_LOCK_ALL_* helpers 2020-05-05 10:51:56 +02:00
drm_modes.c drm: Nuke mode->hsync 2020-04-29 18:44:26 +03:00
drm_modeset_helper.c
drm_modeset_lock.c
drm_of.c
drm_panel_orientation_quirks.c drm: panel-orientation-quirks: Use generic orientation-data for Acer S1003 2020-06-23 12:32:06 +02:00
drm_panel.c
drm_pci.c drm: delete drm_pci.h 2020-04-03 17:11:41 +02:00
drm_plane_helper.c
drm_plane.c drm: plane: Verify that no or all planes have a zpos property 2020-05-14 02:10:52 +03:00
drm_prime.c drm/prime: fix extracting of the DMA addresses from a scatterlist 2020-04-05 10:44:12 -04:00
drm_print.c
drm_probe_helper.c
drm_property.c
drm_rect.c
drm_scatter.c gpu/drm: remove the powerpc hack in drm_legacy_sg_alloc 2020-06-02 10:59:11 -07:00
drm_scdc_helper.c
drm_self_refresh_helper.c
drm_simple_kms_helper.c
drm_syncobj.c
drm_sysfs.c drm/connector: notify userspace on hotplug after register complete 2020-06-03 10:24:23 +02:00
drm_trace_points.c
drm_trace.h
drm_vblank.c Short summary of fixes pull (less than what git shortlog provides): 2020-05-28 15:38:39 +10:00
drm_vm.c mm: reorder includes after introduction of linux/pgtable.h 2020-06-09 09:39:13 -07:00
drm_vma_manager.c
drm_writeback.c
Kconfig drm pull for 5.8-rc1 2020-06-02 15:04:15 -07:00
Makefile drm/cirrus: Move to drm/tiny 2020-04-28 16:05:15 +02:00