linux/drivers/gpu/drm/amd/display/dc
Kevin Wang 823e4bd6ca drm/amd/display: fix sysfs amdgpu_current_backlight_pwm NULL pointer issue
fix NULL pointer issue when read sysfs amdgpu_current_backlight_pwm sysfs node.

Call Trace:
[  248.273833] BUG: kernel NULL pointer dereference, address: 0000000000000130
[  248.273930] #PF: supervisor read access in kernel mode
[  248.273993] #PF: error_code(0x0000) - not-present page
[  248.274054] PGD 0 P4D 0
[  248.274092] Oops: 0000 [#1] SMP PTI
[  248.274138] CPU: 2 PID: 1377 Comm: cat Tainted: G           OE     5.9.0-rc5-drm-next-5.9+ #1
[  248.274233] Hardware name: System manufacturer System Product Name/Z170-A, BIOS 3802 03/15/2018
[  248.274641] RIP: 0010:dc_link_get_backlight_level+0x5/0x70 [amdgpu]
[  248.274718] Code: 67 ff ff ff 41 b9 03 00 00 00 e9 45 ff ff ff d1 ea e9 55 ff ff ff 0f 1f 44 00 00 66 2e
0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 <48> 8b 87 30 01 00 00 48 8b 00 48 8b 88 88 03 00 00 48 8d 81 e8 01
[  248.274919] RSP: 0018:ffffb5ad809b3df0 EFLAGS: 00010203
[  248.274982] RAX: ffffa0f77d1c0010 RBX: ffffa0f793ae9168 RCX: 0000000000000001
[  248.275064] RDX: ffffa0f79753db00 RSI: 0000000000000001 RDI: 0000000000000000
[  248.275145] RBP: ffffb5ad809b3e00 R08: ffffb5ad809b3da0 R09: 0000000000000000
[  248.275225] R10: ffffb5ad809b3e68 R11: 0000000000000000 R12: ffffa0f793ae9190
[  248.275306] R13: ffffb5ad809b3ef0 R14: 0000000000000001 R15: ffffa0f793ae9168
[  248.275388] FS:  00007f5f1ec4d540(0000) GS:ffffa0f79ec80000(0000) knlGS:0000000000000000
[  248.275480] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[  248.275547] CR2: 0000000000000130 CR3: 000000042a03c005 CR4: 00000000003706e0
[  248.275628] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[  248.275708] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
[  248.275789] Call Trace:
[  248.276124]  ? current_backlight_read+0x24/0x40 [amdgpu]
[  248.276194]  seq_read+0xc3/0x3f0
[  248.276240]  full_proxy_read+0x5c/0x90
[  248.276290]  vfs_read+0xa7/0x190
[  248.276334]  ksys_read+0xa7/0xe0
[  248.276379]  __x64_sys_read+0x1a/0x20
[  248.276429]  do_syscall_64+0x37/0x80
[  248.276477]  entry_SYSCALL_64_after_hwframe+0x44/0xa9
[  248.276538] RIP: 0033:0x7f5f1e75c191
[  248.276585] Code: fe ff ff 48 8d 3d b7 9d 0a 00 48 83 ec 08 e8 46 4d 02 00 66 0f 1f 44 00 00 48 8d 05 71 07
2e 00 8b 00 85 c0 75 13 31 c0 0f 05 <48> 3d 00 f0 ff ff 77 57 f3 c3 0f 1f 44 00 00 41 54 55 49 89 d4 53Hw
[  248.276784] RSP: 002b:00007ffcb1fc3f38 EFLAGS: 00000246 ORIG_RAX: 0000000000000000
[  248.276872] RAX: ffffffffffffffda RBX: 0000000000020000 RCX: 00007f5f1e75c191
[  248.276953] RDX: 0000000000020000 RSI: 00007f5f1ec2b000 RDI: 0000000000000003
[  248.277034] RBP: 0000000000020000 R08: 00000000ffffffff R09: 0000000000000000
[  248.277115] R10: 0000000000000022 R11: 0000000000000246 R12: 00007f5f1ec2b000
[  248.277195] R13: 0000000000000003 R14: 00007f5f1ec2b00f R15: 0000000000020000
[  248.277279] Modules linked in: amdgpu(OE) iommu_v2 gpu_sched ttm(OE) drm_kms_helper cec drm
i2c_algo_bit fb_sys_fops syscopyarea sysfillrect sysimgblt rpcsec_gss_krb5 auth_rpcgss nfsv4 nfs
lockd grace fscache nls_iso8859_1 snd_hda_codec_realtek snd_hda_codec_hdmi snd_hda_codec_generic
ledtrig_audio intel_rapl_msr intel_rapl_common snd_hda_intel snd_intel_dspcfg x86_pkg_temp_thermal
intel_powerclamp snd_hda_codec snd_hda_core snd_hwdep snd_pcm snd_seq_midi snd_seq_midi_event mei_hdcp
coretemp snd_rawmidi snd_seq kvm_intel kvm snd_seq_device snd_timer irqbypass joydev snd input_leds soundcore
crct10dif_pclmul crc32_pclmul ghash_clmulni_intel aesni_intel crypto_simd cryptd glue_helper rapl intel_cstate
mac_hid mei_me serio_raw mei eeepc_wmi wmi_bmof asus_wmi mxm_wmi intel_wmi_thunderbolt acpi_pad sparse_keymap
efi_pstore sch_fq_codel parport_pc ppdev lp parport sunrpc ip_tables x_tables autofs4 hid_logitech_hidpp
hid_logitech_dj hid_generic usbhid hid e1000e psmouse ahci libahci wmi video
[  248.278211] CR2: 0000000000000130
[  248.278221] ---[ end trace 1fbe72fe6f91091d ]---
[  248.357226] RIP: 0010:dc_link_get_backlight_level+0x5/0x70 [amdgpu]
[  248.357272] Code: 67 ff ff ff 41 b9 03 00 00 00 e9 45 ff ff ff d1 ea e9 55 ff ff ff 0f 1f 44 00 00 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 <48> 8b 87 30 01 00 00 48 8b 00 48 8b 88 88 03 00 00 48 8d 81 e8 01

Signed-off-by: Kevin Wang <kevin1.wang@amd.com>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2021-01-05 11:31:23 -05:00
..
basics drm/amd/display/dc/basics/vector: Make local function 'dal_vector_presized_costruct' static 2020-12-01 16:04:45 -05:00
bios drm/amd/display: remove macro which is in header already 2020-11-24 12:08:29 -05:00
calcs drm/amdgpu: fold CONFIG_DRM_AMD_DC_DCN3* into CONFIG_DRM_AMD_DC_DCN (v3) 2020-11-04 17:11:37 -05:00
clk_mgr drm/amd/display: always program DPPDTO unless not safe to lower 2020-12-23 15:02:47 -05:00
core drm/amd/display: fix sysfs amdgpu_current_backlight_pwm NULL pointer issue 2021-01-05 11:31:23 -05:00
dce drm/amd/display: Add get_dig_frontend implementation for DCEx 2020-12-16 13:27:08 -05:00
dce60 drm/amdgpu: remove unneeded break 2020-10-23 15:33:47 -04:00
dce80 drm/amd/display: Source minimum HBlank support 2020-10-26 13:27:52 -04:00
dce100 drm/amd/display: Source minimum HBlank support 2020-10-26 13:27:52 -04:00
dce110 drm/amd/display: Check link_active instead of lane_settings != unknown 2020-12-01 16:03:27 -05:00
dce112 drm/amd/display: remove unneeded semicolon 2020-10-30 01:03:02 -04:00
dce120 drm/amd/display: HP Reverb G2 VR fails to light up 2020-12-15 11:33:39 -05:00
dcn10 drm/amd/display: add getter routine to retrieve mpcc mux 2020-12-23 15:02:55 -05:00
dcn20 drm/amd/display: add getter routine to retrieve mpcc mux 2020-12-23 15:02:55 -05:00
dcn21 drm/amd/display: Adding prototype for dccg21_update_dpp_dto() 2020-12-15 11:35:25 -05:00
dcn30 drm/amd/display: add getter routine to retrieve mpcc mux 2020-12-23 15:02:55 -05:00
dcn301 drm/amd/display: Properly define DPCS related info for DCN301 2020-12-01 16:03:52 -05:00
dcn302 drm/amd/display: Source minimum HBlank support 2020-11-24 12:07:13 -05:00
dml drm/amd/display: remove unused dml variables 2020-11-16 12:18:55 -05:00
dsc drm/amd/display: Fix compilation error 2020-11-02 15:29:33 -05:00
gpio drm/amdgpu: fold CONFIG_DRM_AMD_DC_DCN3* into CONFIG_DRM_AMD_DC_DCN (v3) 2020-11-04 17:11:37 -05:00
hdcp
inc drm/amd/display: add getter routine to retrieve mpcc mux 2020-12-23 15:02:55 -05:00
irq drm/amd/display: Add missing pflip irq for dcn2.0 2020-11-13 17:29:47 -05:00
virtual drm/amd/display: Add dp_set_dsc_pps_info_packet to virtual stream encoder 2020-09-29 16:08:31 -04:00
Makefile drm/amdgpu: fold CONFIG_DRM_AMD_DC_DCN3* into CONFIG_DRM_AMD_DC_DCN (v3) 2020-11-04 17:11:37 -05:00
dc.h drm/amd/display: 3.2.116 2020-12-15 11:34:57 -05:00
dc_bios_types.h drm/amd/display: Add internal display info 2020-11-24 12:08:15 -05:00
dc_ddc_types.h
dc_dmub_srv.c drm/amd/display: implement notify stream mask 2020-09-15 17:52:41 -04:00
dc_dmub_srv.h drm/amd/display: implement notify stream mask 2020-09-15 17:52:41 -04:00
dc_dp_types.h drm/amd/display: add option to override cr training pattern 2020-09-15 17:52:40 -04:00
dc_dsc.h drm/amd/display: Add an option to limit max DSC target bpp per sink 2020-10-26 13:29:39 -04:00
dc_helper.c drm/amd/display: Decouple amdgpu_dm_trace from service 2020-10-26 13:33:59 -04:00
dc_hw_types.h drm/amdgpu: fold CONFIG_DRM_AMD_DC_DCN3* into CONFIG_DRM_AMD_DC_DCN (v3) 2020-11-04 17:11:37 -05:00
dc_link.h drm/amd/display: Only one display lights up while using MST hub 2020-12-08 23:04:26 -05:00
dc_stream.h drm/amd/display: turn DPMS off on connector unplug 2020-12-01 16:00:06 -05:00
dc_trace.h drm/amd/display: Add tracepoint for capturing clocks state 2020-10-26 13:34:26 -04:00
dc_types.h drm/amd/display: Add dual edp optimization flag. 2020-11-16 12:19:33 -05:00
dm_cp_psp.h
dm_event_log.h
dm_helpers.h drm/amd/display: Clear dc remote sinks on MST disconnect 2020-12-01 15:59:57 -05:00
dm_pp_smu.h drm/amdgpu: fold CONFIG_DRM_AMD_DC_DCN3* into CONFIG_DRM_AMD_DC_DCN (v3) 2020-11-04 17:11:37 -05:00
dm_services.h drm/amd/display: Decouple amdgpu_dm_trace from service 2020-10-26 13:33:59 -04:00
dm_services_types.h
irq_types.h
os_types.h drm/amd/display: Clean up debug macros 2020-10-26 16:52:08 -04:00