From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Williamson Subject: Re: [PATCH] drm/i915/lvds: Only act on lid notify when the device is on Date: Sat, 23 Apr 2011 08:42:56 -0600 Message-ID: <1303569776.3431.1.camel@x201> References: <20110421220803.10321.68968.stgit@localhost6.localdomain6> <1bdc18$kanhdf@fmsmga002.fm.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by gabe.freedesktop.org (Postfix) with ESMTP id DD15C9E76B for ; Sat, 23 Apr 2011 07:43:07 -0700 (PDT) In-Reply-To: <1bdc18$kanhdf@fmsmga002.fm.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org Errors-To: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org To: Chris Wilson Cc: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org On Fri, 2011-04-22 at 06:58 +0100, Chris Wilson wrote: > On Thu, 21 Apr 2011 16:08:14 -0600, Alex Williamson wrote: > > If we're using vga switcheroo, the device may be turned off > > and poking at it can cause an oops. > > I'm unfamiliar with what actually happens here after it is turned off. Can > you post an OOPS for an example? See below. Thanks, Alex [ 941.024073] BUG: unable to handle kernel NULL pointer dereference at 0000000000000230 [ 941.024598] IP: [] intel_dp_link_down+0x133/0x16f [i915] [ 941.025026] PGD 0 [ 941.025026] Oops: 0000 [#1] SMP [ 941.025026] last sysfs file: /sys/devices/system/cpu/cpu1/cache/index2/shared_cpu_map [ 941.025026] CPU 0 [ 941.025026] Modules linked in: netconsole configfs ftdi_sio usbserial ebtable_nat ebtables ipt_MASQUERADE iptable_nat nf_nat bridge stp llc sunrpc cpufreq_ondemand acpi_cpufreq freq_table mperf ip6t_REJECT nf_conntrack_ipv6 nf_defrag_ipv6 ip6table_filter ip6_tables ipv6 kvm_intel kvm uinput nouveau asus_switcheroo ttm snd_hda_codec_hdmi arc4 snd_hda_codec_realtek ecb snd_hda_intel snd_hda_codec iwlagn mac80211 snd_hwdep snd_seq snd_seq_device snd_pcm snd_timer snd soundcore cfg80211 uvcvideo videodev btusb bluetooth v4l2_compat_ioctl32 asus_laptop pcspkr serio_raw sparse_keymap joydev atl1c rfkill iTCO_wdt iTCO_vendor_support snd_page_alloc wmi microcode i915 drm_kms_helper drm i2c_algo_bit i2c_core video [last unloaded: configfs] [ 941.025026] [ 941.025026] Pid: 1907, comm: kworker/0:2 Tainted: G W 2.6.39-rc4+ #1 ASUSTeK Computer Inc. UL30VT /UL30VT [ 941.025026] RIP: 0010:[] [] intel_dp_link_down+0x133/0x16f [i915] [ 941.025026] RSP: 0018:ffff880136de1990 EFLAGS: 00010286 [ 941.025026] RAX: 00000000ffffffff RBX: ffff880135dabc00 RCX: 0000000000002052 [ 941.025026] RDX: 0000000000000000 RSI: ffff880136de1980 RDI: 0000000000000001 [ 941.025026] RBP: ffff880136de19c0 R08: ffff880135db3800 R09: 0000000000000000 [ 941.025026] R10: ffffffff81ca5ee0 R11: 0000000000000040 R12: ffff880133a10000 [ 941.025026] R13: 0000000000000000 R14: ffff880135db3800 R15: 0000000000000000 [ 941.025026] FS: 0000000000000000(0000) GS:ffff88013fc00000(0000) knlGS:0000000000000000 [ 941.025026] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b [ 941.025026] CR2: 0000000000000230 CR3: 0000000001a03000 CR4: 00000000000406f0 [ 941.025026] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 941.025026] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 [ 941.025026] Process kworker/0:2 (pid: 1907, threadinfo ffff880136de0000, task ffff88013646ae00) [ 941.025026] Stack: [ 941.025026] 0000000000000003 ffff880135dabc00 ffff880135db3800 0000000000000003 [ 941.025026] 00000000ffffffff ffff880135e0b030 ffff880136de19f0 ffffffffa0098a9b [ 941.025026] ffff880135e0b000 ffff880135db3800 ffff880135dabc00 ffff880135db3c01 [ 941.025026] Call Trace: [ 941.025026] [] intel_dp_dpms+0x4b/0xc6 [i915] [ 941.025026] [] drm_encoder_disable+0x21/0x23 [drm_kms_helper] [ 941.025026] [] drm_crtc_helper_set_mode+0x1db/0x3ea [drm_kms_helper] [ 941.025026] [] ? arch_local_irq_save+0x18/0x1e [ 941.025026] [] drm_helper_resume_force_mode+0x5d/0x122 [drm_kms_helper] [ 941.025026] [] ? _cond_resched+0xe/0x22 [ 941.025026] [] intel_lid_notify+0x8d/0xa2 [i915] [ 941.025026] [] notifier_call_chain+0x37/0x63 [ 941.025026] [] __blocking_notifier_call_chain+0x4b/0x60 [ 941.025026] [] blocking_notifier_call_chain+0x14/0x16 [ 941.025026] [] acpi_lid_send_state+0x86/0xaf [ 941.025026] [] acpi_button_notify+0x3b/0xab [ 941.025026] [] ? acpi_os_wait_events_complete+0x23/0x23 [ 941.025026] [] acpi_device_notify+0x19/0x1b [ 941.025026] [] acpi_ev_notify_dispatch+0x67/0x7e [ 941.025026] [] acpi_os_execute_deferred+0x29/0x36 [ 941.025026] [] process_one_work+0x18f/0x28a [ 941.025026] [] worker_thread+0xfd/0x181 [ 941.025026] [] ? manage_workers.clone.16+0x172/0x172 [ 941.025026] [] kthread+0x82/0x8a [ 941.025026] [] kernel_thread_helper+0x4/0x10 [ 941.025026] [] ? kthread_worker_fn+0x14b/0x14b [ 941.025026] [] ? gs_change+0x13/0x13 [ 941.025026] Code: 8b 7c 24 18 e8 3c f3 ff ff a9 00 00 00 40 74 2a 4c 8b 7b 30 8b 73 60 49 8d 7c 24 18 41 81 e5 ff ff ff bf 44 89 ea e8 e1 f2 ff ff [ 941.025026] 8b b7 30 02 00 00 4c 89 f7 e8 b7 42 ff ff 8b 73 60 44 89 ea [ 941.025026] RIP [] intel_dp_link_down+0x133/0x16f [i915] [ 941.025026] RSP [ 941.025026] CR2: 0000000000000230 [ 941.064863] ---[ end trace 704c59211af95870 ]--- [ 941.065579] BUG: unable to handle kernel paging request at fffffffffffffff8 [ 941.066242] IP: [] kthread_data+0x10/0x16 [ 941.066251] PGD 1a05067 PUD 1a06067 PMD 0 [ 941.066257] Oops: 0000 [#2] SMP [ 941.066261] last sysfs file: /sys/devices/system/cpu/cpu1/cache/index2/shared_cpu_map [ 941.066265] CPU 0 [ 941.066267] Modules linked in: netconsole configfs ftdi_sio usbserial ebtable_nat ebtables ipt_MASQUERADE iptable_nat nf_nat bridge stp llc sunrpc cpufreq_ondemand acpi_cpufreq freq_table mperf ip6t_REJECT nf_conntrack_ipv6 nf_defrag_ipv6 ip6table_filter ip6_tables ipv6 kvm_intel kvm uinput nouveau asus_switcheroo ttm snd_hda_codec_hdmi arc4 snd_hda_codec_realtek ecb snd_hda_intel snd_hda_codec iwlagn mac80211 snd_hwdep snd_seq snd_seq_device snd_pcm snd_timer snd soundcore cfg80211 uvcvideo videodev btusb bluetooth v4l2_compat_ioctl32 asus_laptop pcspkr serio_raw sparse_keymap joydev atl1c rfkill iTCO_wdt iTCO_vendor_support snd_page_alloc wmi microcode i915 drm_kms_helper drm i2c_algo_bit i2c_core video [last unloaded: configfs] [ 941.066330] [ 941.066335] Pid: 1907, comm: kworker/0:2 Tainted: G D W 2.6.39-rc4+ #1 ASUSTeK Computer Inc. UL30VT /UL30VT [ 941.066342] RIP: 0010:[] [] kthread_data+0x10/0x16 [ 941.066350] RSP: 0018:ffff880136de1568 EFLAGS: 00010096 [ 941.066354] RAX: 0000000000000000 RBX: ffff88013fc13a80 RCX: ffff88013646ae00 [ 941.066358] RDX: 0000000000008eb0 RSI: 0000000000000000 RDI: ffff88013646ae00 [ 941.066362] RBP: ffff880136de1568 R08: ffffffff8104c5ab R09: 00000000fffffff8 [ 941.066367] R10: ffffffff81a29580 R11: ffff88013646ae00 R12: 0000000000000000 [ 941.066371] R13: ffff880136de1698 R14: 0000000000000000 R15: ffff88013646b1b8 [ 941.066376] FS: 0000000000000000(0000) GS:ffff88013fc00000(0000) knlGS:0000000000000000 [ 941.066380] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b [ 941.066384] CR2: fffffffffffffff8 CR3: 0000000001a03000 CR4: 00000000000406f0 [ 941.066388] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 941.066393] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 [ 941.066398] Process kworker/0:2 (pid: 1907, threadinfo ffff880136de0000, task ffff88013646ae00) [ 941.066401] Stack: [ 941.066403] ffff880136de1598 ffffffff81065def ffffffff81a29580 ffff88013fc13a80 [ 941.066409] 0000000000000000 ffff880136de1698 ffff880136de1658 ffffffff81474a02 [ 941.066415] ffffffff81a29580 0000000000000246 0000000000013a80 0000000000013a80 [ 941.066420] Call Trace: [ 941.066428] [] wq_worker_sleeping+0x1a/0x83 [ 941.066434] [] schedule+0x199/0x6b6 [ 941.066441] [] ? switch_task_namespaces+0x4b/0x64 [ 941.066448] [] do_exit+0x714/0x716 [ 941.066455] [] oops_end+0xbf/0xc7 [ 941.066461] [] no_context+0x1f9/0x208 [ 941.066467] [] __bad_area_nosemaphore+0x192/0x1b5 [ 941.066473] [] ? update_stats_wait_end.clone.74+0x6a/0xac [ 941.066479] [] bad_area_nosemaphore+0x13/0x15 [ 941.066484] [] do_page_fault+0x187/0x35a [ 941.066489] [] ? mmdrop+0x1a/0x2a [ 941.066495] [] ? finish_task_switch+0x89/0xa8 [ 941.066502] [] ? need_resched+0x23/0x2d [ 941.066504] [] ? arch_local_irq_save+0x18/0x1e [ 941.066504] [] ? _raw_spin_lock_irqsave+0x12/0x2f [ 941.066504] [] ? lock_timer_base.clone.20+0x2b/0x50 [ 941.066504] [] ? _raw_spin_unlock_irqrestore+0x17/0x19 [ 941.066504] [] ? try_to_del_timer_sync+0x77/0x85 [ 941.066504] [] page_fault+0x25/0x30 [ 941.066504] [] ? intel_dp_link_down+0x133/0x16f [i915] [ 941.066504] [] intel_dp_dpms+0x4b/0xc6 [i915] [ 941.066504] [] drm_encoder_disable+0x21/0x23 [drm_kms_helper] [ 941.066504] [] drm_crtc_helper_set_mode+0x1db/0x3ea [drm_kms_helper] [ 941.066504] [] ? arch_local_irq_save+0x18/0x1e [ 941.066504] [] drm_helper_resume_force_mode+0x5d/0x122 [drm_kms_helper] [ 941.066504] [] ? _cond_resched+0xe/0x22 [ 941.066504] [] intel_lid_notify+0x8d/0xa2 [i915] [ 941.066504] [] notifier_call_chain+0x37/0x63 [ 941.066504] [] __blocking_notifier_call_chain+0x4b/0x60 [ 941.066504] [] blocking_notifier_call_chain+0x14/0x16 [ 941.066504] [] acpi_lid_send_state+0x86/0xaf [ 941.066504] [] acpi_button_notify+0x3b/0xab [ 941.066504] [] ? acpi_os_wait_events_complete+0x23/0x23 [ 941.066504] [] acpi_device_notify+0x19/0x1b [ 941.066504] [] acpi_ev_notify_dispatch+0x67/0x7e [ 941.066504] [] acpi_os_execute_deferred+0x29/0x36 [ 941.066504] [] process_one_work+0x18f/0x28a [ 941.066504] [] worker_thread+0xfd/0x181 [ 941.066504] [] ? manage_workers.clone.16+0x172/0x172 [ 941.066504] [] kthread+0x82/0x8a [ 941.066504] [] kernel_thread_helper+0x4/0x10 [ 941.066504] [] ? kthread_worker_fn+0x14b/0x14b [ 941.066504] [] ? gs_change+0x13/0x13 [ 941.066504] Code: 5c 60 81 e8 0a 7c fd ff 48 8b 85 68 ff ff ff 48 81 c4 a0 00 00 00 5b 41 5c c9 c3 55 48 89 e5 0f 1f 44 00 00 48 8b 87 60 03 00 00 [ 941.066504] 8b 40 f8 c9 c3 55 48 89 e5 0f 1f 44 00 00 48 3b 3d 19 e5 c3 [ 941.066504] RIP [] kthread_data+0x10/0x16 [ 941.066504] RSP [ 941.066504] CR2: fffffffffffffff8 [ 941.066504] ---[ end trace 704c59211af95871 ]--- [ 941.066504] Fixing recursive fault but reboot is needed!