umber-kernel/drivers/gpu/drm/radeon
Daniel Palmer 745bae76ac drm/radeon: Remove calls to drm_put_dev()
Since the allocation of the drivers main structure was changed to
devm_drm_dev_alloc() drm_put_dev()'ing to trigger it to be free'd
should be done by devres.

However, drm_put_dev() is still in the probe error and device remove
paths. When the driver fails to probe warnings like the following are
shown because devres is trying to drm_put_dev() after the driver
already did it.

[    5.642230] radeon 0000:01:05.0: probe with driver radeon failed with error -22
[    5.649605] ------------[ cut here ]------------
[    5.649607] refcount_t: underflow; use-after-free.
[    5.649620] WARNING: CPU: 0 PID: 357 at lib/refcount.c:28 refcount_warn_saturate+0xbe/0x110

Fixes: a9ed2f052c ("drm/radeon: change drm_dev_alloc to devm_drm_dev_alloc")
Signed-off-by: Daniel Palmer <daniel@0x0f.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
(cherry picked from commit 3eb8c0b4c091da0a623ade0d3ee7aa4a93df1ea4)
2025-10-28 11:00:08 -04:00
..
reg_srcs
.gitignore
Kconfig PCI: Add CONFIG_MMU dependency 2025-04-23 15:40:30 -05:00
Makefile
ObjectID.h
atom-bits.h
atom-names.h
atom-types.h
atom.c
atom.h
atombios.h drm/radeon: fixing typo in macro name 2025-05-22 12:02:01 -04:00
atombios_crtc.c
atombios_dp.c drm/display: dp: change drm_dp_dpcd_read_link_status() return value 2025-03-25 16:20:38 +02:00
atombios_encoders.c drm/radeon/atom: Remove redundant ternary operators 2025-09-05 17:38:39 -04:00
atombios_i2c.c
avivod.h
btc_dpm.c
btc_dpm.h
btcd.h
cayman_blit_shaders.h
ci_dpm.c drm/radeon/dpm: Remove redundant ternary operators 2025-09-05 17:38:40 -04:00
ci_dpm.h
ci_smc.c
cik.c drm/radeon/cik: Clean up doorbells 2025-05-16 13:37:21 -04:00
cik.h
cik_blit_shaders.h
cik_reg.h
cik_sdma.c
cikd.h
clearstate_cayman.h
clearstate_ci.h
clearstate_defs.h
clearstate_evergreen.h
clearstate_si.h
cypress_dpm.c
cypress_dpm.h
dce3_1_afmt.c
dce6_afmt.c
dce6_afmt.h
evergreen.c
evergreen.h
evergreen_blit_shaders.h
evergreen_cs.c drm/radeon: use dev_warn_once() in CS parsers 2025-09-05 17:38:42 -04:00
evergreen_dma.c
evergreen_hdmi.c
evergreen_hdmi.h
evergreen_reg.h
evergreen_smc.h
evergreend.h
kv_dpm.c drm/radeon: fixing typo in macro name 2025-05-22 12:02:01 -04:00
kv_dpm.h
kv_smc.c
mkregtable.c
ni.c
ni.h
ni_dma.c
ni_dpm.c drm/radeon/dpm: Remove redundant ternary operators 2025-09-05 17:38:40 -04:00
ni_dpm.h
ni_reg.h
nid.h
nislands_smc.h
ppsmc.h
pptable.h
r100.c drm/radeon: use dev_warn_once() in CS parsers 2025-09-05 17:38:42 -04:00
r100_track.h
r100d.h
r200.c drm/radeon: use dev_warn_once() in CS parsers 2025-09-05 17:38:42 -04:00
r300.c drm/radeon: use dev_warn_once() in CS parsers 2025-09-05 17:38:42 -04:00
r300_reg.h
r300d.h
r420.c
r420d.h
r500_reg.h
r520.c
r520d.h
r600.c
r600.h
r600_cs.c drm/radeon: use dev_warn_once() in CS parsers 2025-09-05 17:38:42 -04:00
r600_dma.c
r600_dpm.c
r600_dpm.h
r600_hdmi.c drm/radeon/radeon_audio: Remove unused r600_hdmi_audio_workaround 2025-04-22 08:51:45 -04:00
r600_reg.h
r600d.h
radeon.h drm/radeon: Remove unused radeon_fence_wait_any 2025-04-22 08:51:45 -04:00
radeon_acpi.c
radeon_acpi.h
radeon_agp.c
radeon_asic.c
radeon_asic.h drm/radeon/radeon_audio: Remove unused r600_hdmi_audio_workaround 2025-04-22 08:51:45 -04:00
radeon_atombios.c
radeon_atombios.h
radeon_atpx_handler.c
radeon_audio.c drm/radeon: use eld_mutex to protect access to connector->eld 2024-12-16 18:02:08 +02:00
radeon_audio.h
radeon_benchmark.c
radeon_bios.c
radeon_clocks.c
radeon_combios.c
radeon_connectors.c drm/connector: make mode_valid take a const struct drm_display_mode 2025-01-07 12:45:19 +02:00
radeon_cs.c drm/radeon: use dev_warn_once() in CS parsers 2025-09-05 17:38:42 -04:00
radeon_cursor.c
radeon_device.c drm/radeon: fix typos 2025-08-15 13:06:19 -04:00
radeon_device.h
radeon_display.c amd-drm-next-6.18-2025-08-29: 2025-09-02 09:35:54 +10:00
radeon_dp_auxch.c
radeon_drv.c drm/radeon: Remove calls to drm_put_dev() 2025-10-28 11:00:08 -04:00
radeon_drv.h drm: remove driver date from struct drm_driver and all drivers 2024-12-05 12:35:42 +02:00
radeon_encoders.c
radeon_family.h
radeon_fbdev.c drm/radeon: Pass along the format info from .fb_create() to drm_helper_mode_fill_fb_struct() 2025-08-06 15:26:16 +03:00
radeon_fence.c drm/radeon: Remove unused radeon_fence_wait_any 2025-04-22 08:51:45 -04:00
radeon_gart.c drm/radeon: Use vmalloc_array and vcalloc to simplify code 2025-08-18 17:06:24 -04:00
radeon_gem.c drm/radeon: switch over to drm_exec v2 2024-11-20 13:59:34 +01:00
radeon_i2c.c
radeon_ib.c
radeon_irq_kms.c
radeon_kms.c drm/radeon: Do not kfree() devres managed rdev 2025-10-28 10:59:56 -04:00
radeon_kms.h
radeon_legacy_crtc.c
radeon_legacy_encoders.c drm/radeon/radeon_legacy_encoders: Remove redundant ternary operators 2025-09-05 17:38:40 -04:00
radeon_legacy_encoders.h
radeon_legacy_tv.c
radeon_mn.c
radeon_mode.h drm/radeon: Pass along the format info from .fb_create() to drm_helper_mode_fill_fb_struct() 2025-08-06 15:26:16 +03:00
radeon_object.c drm/radeon: switch over to drm_exec v2 2024-11-20 13:59:34 +01:00
radeon_object.h drm/radeon: switch over to drm_exec v2 2024-11-20 13:59:34 +01:00
radeon_pm.c drm/radeon/pm: Remove redundant ternary operators 2025-09-05 17:38:40 -04:00
radeon_pm.h
radeon_prime.c
radeon_prime.h
radeon_reg.h
radeon_ring.c
radeon_sa.c
radeon_semaphore.c
radeon_sync.c
radeon_test.c drm/radeon: fix typos 2025-08-15 13:06:19 -04:00
radeon_trace.h
radeon_trace_points.c
radeon_ttm.c drm/radeon: Use ttm_bo_move_null() in radeon_bo_move() 2024-11-20 09:36:55 -05:00
radeon_ttm.h
radeon_ucode.c
radeon_ucode.h
radeon_uvd.c drm/radeon/uvd: Replace nested max() with single max3() 2025-03-19 15:51:40 -04:00
radeon_vce.c drm/radeon: fix typos 2025-08-15 13:06:19 -04:00
radeon_vm.c drm/radeon: switch over to drm_exec v2 2024-11-20 13:59:34 +01:00
rs100d.h
rs400.c drm/radeon: Fix rs400_gpu_init for ATI mobility radeon Xpress 200M 2025-03-05 10:43:01 -05:00
rs400d.h
rs600.c
rs600d.h
rs690.c
rs690d.h
rs780_dpm.c
rs780_dpm.h
rs780d.h
rv6xx_dpm.c
rv6xx_dpm.h
rv6xxd.h
rv200d.h
rv250d.h
rv350d.h
rv515.c
rv515d.h
rv730_dpm.c
rv730d.h
rv740_dpm.c
rv740d.h
rv770.c
rv770.h
rv770_dma.c
rv770_dpm.c
rv770_dpm.h
rv770_smc.c
rv770_smc.h
rv770d.h
si.c drm/radeon: fix spelling typos 2025-03-05 10:37:18 -05:00
si.h
si_blit_shaders.h
si_dma.c
si_dpm.c
si_dpm.h
si_reg.h
si_smc.c
sid.h drm/radeon: fix MAX_POWER_SHIFT value 2025-04-07 15:18:32 -04:00
sislands_smc.h
smu7.h
smu7_discrete.h
smu7_fusion.h
sumo_dpm.c
sumo_dpm.h
sumo_smc.c
sumod.h
trinity_dpm.c
trinity_dpm.h
trinity_smc.c
trinityd.h
uvd_v1_0.c
uvd_v2_2.c
uvd_v3_1.c
uvd_v4_2.c
vce.h
vce_v1_0.c
vce_v2_0.c