[Intel-gfx] [PATCH]i915: use WARN_ON_ONCE in intel_dp_aux_transfer
Dave Young
dyoung at redhat.com
Thu Nov 24 08:11:39 UTC 2016
I see a lot of below warning:
[ 17.128256] WARNING: CPU: 1 PID: 95 at drivers/gpu/drm/i915/intel_dp.c:1062 intel_dp_aux_transfer+0x201/0x240 [i915]
[ 17.128264] WARN_ON_ONCE(!msg->buffer != !msg->size)
[ 17.128267] Modules linked in:
[ 17.128273] kvm_intel kvm irqbypass i915 intel_gtt drm_kms_helper snd_hda_codec_realtek syscopyarea snd_hda_codec_generic sysfillrect sysimgblt fb_sys_fops drm arc4 rtsx_pci_sdmmc iwlmvm mac80211 snd_hda_intel btusb snd_hda_codec btrtl iwlwifi btbcm btintel snd_hwdep snd_hda_core snd_seq bluetooth e1000e i2c_i801 cfg80211 input_leds snd_seq_device i2c_smbus serio_raw pcspkr snd_pcm ptp rtsx_pci pps_core mfd_core snd_timer thinkpad_acpi snd soundcore rfkill video nfsd auth_rpcgss nfs_acl lockd grace sunrpc
[ 17.128338] CPU: 1 PID: 95 Comm: kworker/u16:2 Not tainted 4.9.0-rc6+ #200
[ 17.128344] Hardware name: LENOVO 20ARS1BJ02/20ARS1BJ02, BIOS GJET91WW (2.41 ) 09/21/2016
[ 17.128355] Workqueue: events_unbound async_run_entry_fn
[ 17.128361] ffff9db20105fa98 ffffffffa9eeb8ed ffff9db20105fae8 0000000000000000
[ 17.128370] ffff9db20105fad8 ffffffffa9c5339b 00000426907d27c8 ffff9db20105fbc0
[ 17.128379] ffff9474910510e0 0000000000000003 00000000fffffffb 0000000000000000
[ 17.128388] Call Trace:
[ 17.128396] [<ffffffffa9eeb8ed>] dump_stack+0x63/0x86
[ 17.128404] [<ffffffffa9c5339b>] __warn+0xcb/0xf0
[ 17.128410] [<ffffffffa9c5341f>] warn_slowpath_fmt+0x5f/0x80
[ 17.128454] [<ffffffffc0a8e45e>] ? intel_dp_aux_transfer+0xde/0x240 [i915]
[ 17.128492] [<ffffffffc0a8e581>] intel_dp_aux_transfer+0x201/0x240 [i915]
[ 17.128507] [<ffffffffc09b2c82>] drm_dp_dpcd_access+0x72/0x110 [drm_kms_helper]
[ 17.128519] [<ffffffffc09b2d3b>] drm_dp_dpcd_write+0x1b/0x20 [drm_kms_helper]
[ 17.128557] [<ffffffffc0a89b3b>] intel_dp_start_link_train+0x2cb/0x4c0 [i915]
[ 17.128594] [<ffffffffc0a8b099>] intel_dp_check_link_status+0xd9/0x110 [i915]
[ 17.128630] [<ffffffffc0a8fc3f>] intel_dp_detect+0x79f/0xb90 [i915]
[ 17.128641] [<ffffffffc09b413f>] drm_helper_probe_single_connector_modes+0x3ff/0x4f0 [drm_kms_helper]
[ 17.128654] [<ffffffffc09c21fe>] drm_fb_helper_initial_config+0xae/0x430 [drm_kms_helper]
[ 17.128697] [<ffffffffc0a81418>] intel_fbdev_initial_config+0x18/0x30 [i915]
[ 17.128705] [<ffffffffa9c74fb7>] async_run_entry_fn+0x37/0xe0
[ 17.128713] [<ffffffffa9c6c4a9>] process_one_work+0x1e9/0x440
[ 17.128721] [<ffffffffa9c6c74b>] worker_thread+0x4b/0x4f0
[ 17.128728] [<ffffffffa9c6c700>] ? process_one_work+0x440/0x440
[ 17.128721] [<ffffffffa9c6c74b>] worker_thread+0x4b/0x4f0
[ 17.128728] [<ffffffffa9c6c700>] ? process_one_work+0x440/0x440
[ 17.128735] [<ffffffffa9c71f99>] kthread+0xd9/0xf0
[ 17.128741] [<ffffffffa9c1172e>] ? __switch_to+0x2ce/0x580
[ 17.128748] [<ffffffffa9c71ec0>] ? kthread_park+0x60/0x60
[ 17.128754] [<ffffffffa9c71ec0>] ? kthread_park+0x60/0x60
[ 17.128762] [<ffffffffaa1f7835>] ret_from_fork+0x25/0x30
[ 17.128768] ---[ end trace 1c8614b2fcd03dac ]---
[ 17.151929] [drm:intel_dp_start_link_train [i915]] *ERROR* failed to update link training
It seems a known issue below:
https://bugs.freedesktop.org/show_bug.cgi?id=97344
This is not to fix the real problem just use WARN_ON_ONCE is better for
this kind of warnings instead of warn again and again.
Signed-off-by: Dave Young <dyoung at redhat.com>
---
drivers/gpu/drm/i915/intel_dp.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- linux-x86.orig/drivers/gpu/drm/i915/intel_dp.c
+++ linux-x86/drivers/gpu/drm/i915/intel_dp.c
@@ -1059,7 +1059,7 @@ intel_dp_aux_transfer(struct drm_dp_aux
if (WARN_ON(txsize > 20))
return -E2BIG;
- WARN_ON(!msg->buffer != !msg->size);
+ WARN_ON_ONCE(!msg->buffer != !msg->size);
if (msg->buffer)
memcpy(txbuf + HEADER_SIZE, msg->buffer, msg->size);
More information about the Intel-gfx
mailing list