Re: [Nouveau] Nouveau soft lockup after switcheroo'd...

2012-11-01 Thread Marcin Slusarz
On Mon, Oct 29, 2012 at 10:09:07PM +0800, Daniel J Blueman wrote:
 On 25 October 2012 02:07, Marcin Slusarz marcin.slus...@gmail.com wrote:
  On Wed, Oct 24, 2012 at 01:54:43PM +0800, Daniel J Blueman wrote:
  On 13 October 2012 15:12, Daniel J Blueman dan...@quora.org wrote:
 [...]
  echo IGD /sys/kernel/debug/vgaswitcheroo/switch
  echo OFF /sys/kernel/debug/vgaswitcheroo/switch
 
  after boot+40s:
 
  BUG: soft lockup - CPU#0 stuck for 22s! [Xorg:1703]
 [...]\
   [a037c538] nv04_timer_read+0x28/0x70 [nouveau]
   [a037bfec] nouveau_timer_wait_eq+0x7c/0xe0 [nouveau]
   [a03f4f4e] nvd0_sor_dpms+0xde/0x1a0 [nouveau]
   [813871d9] ? fb_set_var+0xe9/0x3a0
   [811554a9] ? __pte_alloc+0xa9/0x160
   [a03f4e70] ? nvd0_sor_dp_link_set+0x2c0/0x2c0 [nouveau]
   [a00b2a5c] drm_helper_connector_dpms+0xbc/0x100 [drm_kms_helper]
   [a00b1665] drm_fb_helper_dpms.isra.13+0xa5/0xf0 [drm_kms_helper]
   [a00b16f9] drm_fb_helper_blank+0x49/0x80 [drm_kms_helper]
   [81386e16] fb_blank+0x56/0xc0
   [813887bb] do_fb_ioctl+0x59b/0x5f0
   [81152883] ? vma_interval_tree_insert+0x83/0x90
   [81388af5] fb_ioctl+0x45/0x50
   [8119adda] do_vfs_ioctl+0x8a/0x340
   [8119b121] sys_ioctl+0x91/0xb0
   [81189862] ? sys_read+0x52/0xa0
 
  In case it's not obvious: Xorg tries to blank monitor connected to nvidia
  card, but hangs because card is already powered down.
 
  Did it ever work? If yes, can you bisect it?
  Does it work if you power down nvidia card while X is not running?
 
 Thanks for your reply Marcin! I wasn't able to boot kernels earlier
 than 3.6 on this Macbook Pro retina due to various issues, and it
 occurs on kernels between and including 3.6 and 3.7-rc3.
 
 As we see read being called, I've taken the lsof output [1].
 
 Should the DPMS functions be deregistered prior the hardware being
 placed in D3, or is it more that the functions should check if the
 card was put into D3 and just return?

I'm not sure, but I would bet on adding a check(s). The question is: at which
layer (nouveau? drm? fb?)? Another is: are there any other code paths which
need to be protected from calling when suspended?
(Currently, I don't have answers to these questions and not much time to look
into them, sorry.)

If no one will figure it out in a few days, please open new bug report - see
http://nouveau.freedesktop.org/wiki/Bugs for description how to do this.

Marcin
___
Nouveau mailing list
Nouveau@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/nouveau


Re: [Nouveau] Nouveau soft lockup after switcheroo'd...

2012-10-24 Thread Marcin Slusarz
On Wed, Oct 24, 2012 at 01:54:43PM +0800, Daniel J Blueman wrote:
 On 13 October 2012 15:12, Daniel J Blueman dan...@quora.org wrote:
  On my Macbook Retina, when switching to the integrated GPU, we see a
  ioread32 issued to the discrete GPU, which hangs as it is in D3 [1]
  (drm.debug is set to 14 here).
 
  Full kernel 3.6.2 boot logs with drm.debug=5 are at:
  http://quora.org/2012/mbp-i915-panel.txt
 
  What additional information will help debug this?
 
 I'm seeing this on 3.7-rc2 also:
 
 cat /sys/kernel/debug/vgaswitcheroo/switch
 0:DIS:+:Pwr::01:00.0
 1:IGD: :Pwr::00:02.0
 2:DIS-Audio: :Pwr::01:00.1
 
 echo IGD /sys/kernel/debug/vgaswitcheroo/switch
 echo OFF /sys/kernel/debug/vgaswitcheroo/switch
 
 after boot+40s:
 
 BUG: soft lockup - CPU#0 stuck for 22s! [Xorg:1703]
 Modules linked in: dm_crypt snd_hda_codec_hdmi bnep rfcomm parport_pc
 ppdev nfsd nfs_acl auth_rpcgss nfs binfmt_misc fscache lockd sunrpc
 joydev arc4 coretemp kvm_intel b43 kvm mac80211 cfg80211 ssb btusb
 snd_hda_codec_cirrus applesmc input_polldev microcode bluetooth
 bcm5974 snd_hda_intel snd_hda_codec nouveau snd_seq_midi snd_rawmidi
 snd_hwdep bcma lpc_ich snd_seq_midi_event snd_pcm mei snd_seq
 snd_timer snd_seq_device ttm mxm_wmi wmi snd soundcore snd_page_alloc
 nls_iso8859_1 apple_gmux mac_hid apple_bl lp parport hid_generic
 hid_apple usbhid hid btrfs zlib_deflate libcrc32c ghash_clmulni_intel
 aesni_intel ablk_helper cryptd lrw aes_x86_64 xts gf128mul i915
 drm_kms_helper sdhci_pci sdhci drm i2c_algo_bit tg3 video
 CPU 0
 Pid: 1703, comm: Xorg Not tainted 3.7.0-030700rc2-generic
 #201210201535 Apple Inc. MacBookPro10,1/Mac-C3EC7CD22292981F
 RIP: 0010:[813469fa] [813469fa] ioread32+0x3a/0x40
 RSP: 0018:880260577b28 EFLAGS: 0296
 RAX:  RBX: 880260577b90 RCX: 8000
 RDX: 1000 RSI: 77359400 RDI: c9001d909410
 RBP: 880260577b28 R08:  R09: 880263d63798
 R10:  R11: 0246 R12: 88026f3d0968
 R13:  R14: 81049dc0 R15: 880260577ac8
 FS: 7f912f03e880() GS:88026f20() knlGS:
 CS: 0010 DS:  ES:  CR0: 80050033
 CR2: 7f9131bf7d00 CR3: 000264192000 CR4: 001407f0
 DR0:  DR1:  DR2: 
 DR3:  DR6: 0ff0 DR7: 0400
 Process Xorg (pid: 1703, threadinfo 880260576000, task 8802605bc4a0)
 Stack:
  880260577b58 a037c538 0296 8802612a3000
  77359400 0061d004 880260577bb8 a037bfec
  8802605bc4a0 0061d004  81172756
 Call Trace:
  [a037c538] nv04_timer_read+0x28/0x70 [nouveau]
  [a037bfec] nouveau_timer_wait_eq+0x7c/0xe0 [nouveau]
  [a03f4f4e] nvd0_sor_dpms+0xde/0x1a0 [nouveau]
  [813871d9] ? fb_set_var+0xe9/0x3a0
  [811554a9] ? __pte_alloc+0xa9/0x160
  [a03f4e70] ? nvd0_sor_dp_link_set+0x2c0/0x2c0 [nouveau]
  [a00b2a5c] drm_helper_connector_dpms+0xbc/0x100 [drm_kms_helper]
  [a00b1665] drm_fb_helper_dpms.isra.13+0xa5/0xf0 [drm_kms_helper]
  [a00b16f9] drm_fb_helper_blank+0x49/0x80 [drm_kms_helper]
  [81386e16] fb_blank+0x56/0xc0
  [813887bb] do_fb_ioctl+0x59b/0x5f0
  [81152883] ? vma_interval_tree_insert+0x83/0x90
  [81388af5] fb_ioctl+0x45/0x50
  [8119adda] do_vfs_ioctl+0x8a/0x340
  [8119b121] sys_ioctl+0x91/0xb0
  [81189862] ? sys_read+0x52/0xa0
  [816b9899] system_call_fastpath+0x16/0x1b
 Code: ff 00 00 01 00 76 0a 0f b7 d7 ed 5d c3 0f 1f 40 00 48 c7 c6 81
 4b a5 81 e8 24 fe ff ff b8 ff ff ff ff 5d c3 0f 1f 44 00 00 8b 07 5d
 c3 0f 1f 40 00 55 48 81 ff ff ff 03 00 48 89 e5 77 2b 48 81
 -- 

In case it's not obvious: Xorg tries to blank monitor connected to nvidia
card, but hangs because card is already powered down.

Did it ever work? If yes, can you bisect it?
Does it work if you power down nvidia card while X is not running?

Marcin
___
Nouveau mailing list
Nouveau@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/nouveau


Re: [Nouveau] Nouveau soft lockup after switcheroo'd...

2012-10-23 Thread Daniel J Blueman
On 13 October 2012 15:12, Daniel J Blueman dan...@quora.org wrote:
 On my Macbook Retina, when switching to the integrated GPU, we see a
 ioread32 issued to the discrete GPU, which hangs as it is in D3 [1]
 (drm.debug is set to 14 here).

 Full kernel 3.6.2 boot logs with drm.debug=5 are at:
 http://quora.org/2012/mbp-i915-panel.txt

 What additional information will help debug this?

I'm seeing this on 3.7-rc2 also:

cat /sys/kernel/debug/vgaswitcheroo/switch
0:DIS:+:Pwr::01:00.0
1:IGD: :Pwr::00:02.0
2:DIS-Audio: :Pwr::01:00.1

echo IGD /sys/kernel/debug/vgaswitcheroo/switch
echo OFF /sys/kernel/debug/vgaswitcheroo/switch

after boot+40s:

BUG: soft lockup - CPU#0 stuck for 22s! [Xorg:1703]
Modules linked in: dm_crypt snd_hda_codec_hdmi bnep rfcomm parport_pc
ppdev nfsd nfs_acl auth_rpcgss nfs binfmt_misc fscache lockd sunrpc
joydev arc4 coretemp kvm_intel b43 kvm mac80211 cfg80211 ssb btusb
snd_hda_codec_cirrus applesmc input_polldev microcode bluetooth
bcm5974 snd_hda_intel snd_hda_codec nouveau snd_seq_midi snd_rawmidi
snd_hwdep bcma lpc_ich snd_seq_midi_event snd_pcm mei snd_seq
snd_timer snd_seq_device ttm mxm_wmi wmi snd soundcore snd_page_alloc
nls_iso8859_1 apple_gmux mac_hid apple_bl lp parport hid_generic
hid_apple usbhid hid btrfs zlib_deflate libcrc32c ghash_clmulni_intel
aesni_intel ablk_helper cryptd lrw aes_x86_64 xts gf128mul i915
drm_kms_helper sdhci_pci sdhci drm i2c_algo_bit tg3 video
CPU 0
Pid: 1703, comm: Xorg Not tainted 3.7.0-030700rc2-generic
#201210201535 Apple Inc. MacBookPro10,1/Mac-C3EC7CD22292981F
RIP: 0010:[813469fa] [813469fa] ioread32+0x3a/0x40
RSP: 0018:880260577b28 EFLAGS: 0296
RAX:  RBX: 880260577b90 RCX: 8000
RDX: 1000 RSI: 77359400 RDI: c9001d909410
RBP: 880260577b28 R08:  R09: 880263d63798
R10:  R11: 0246 R12: 88026f3d0968
R13:  R14: 81049dc0 R15: 880260577ac8
FS: 7f912f03e880() GS:88026f20() knlGS:
CS: 0010 DS:  ES:  CR0: 80050033
CR2: 7f9131bf7d00 CR3: 000264192000 CR4: 001407f0
DR0:  DR1:  DR2: 
DR3:  DR6: 0ff0 DR7: 0400
Process Xorg (pid: 1703, threadinfo 880260576000, task 8802605bc4a0)
Stack:
 880260577b58 a037c538 0296 8802612a3000
 77359400 0061d004 880260577bb8 a037bfec
 8802605bc4a0 0061d004  81172756
Call Trace:
 [a037c538] nv04_timer_read+0x28/0x70 [nouveau]
 [a037bfec] nouveau_timer_wait_eq+0x7c/0xe0 [nouveau]
 [a03f4f4e] nvd0_sor_dpms+0xde/0x1a0 [nouveau]
 [813871d9] ? fb_set_var+0xe9/0x3a0
 [811554a9] ? __pte_alloc+0xa9/0x160
 [a03f4e70] ? nvd0_sor_dp_link_set+0x2c0/0x2c0 [nouveau]
 [a00b2a5c] drm_helper_connector_dpms+0xbc/0x100 [drm_kms_helper]
 [a00b1665] drm_fb_helper_dpms.isra.13+0xa5/0xf0 [drm_kms_helper]
 [a00b16f9] drm_fb_helper_blank+0x49/0x80 [drm_kms_helper]
 [81386e16] fb_blank+0x56/0xc0
 [813887bb] do_fb_ioctl+0x59b/0x5f0
 [81152883] ? vma_interval_tree_insert+0x83/0x90
 [81388af5] fb_ioctl+0x45/0x50
 [8119adda] do_vfs_ioctl+0x8a/0x340
 [8119b121] sys_ioctl+0x91/0xb0
 [81189862] ? sys_read+0x52/0xa0
 [816b9899] system_call_fastpath+0x16/0x1b
Code: ff 00 00 01 00 76 0a 0f b7 d7 ed 5d c3 0f 1f 40 00 48 c7 c6 81
4b a5 81 e8 24 fe ff ff b8 ff ff ff ff 5d c3 0f 1f 44 00 00 8b 07 5d
c3 0f 1f 40 00 55 48 81 ff ff ff 03 00 48 89 e5 77 2b 48 81
-- 
Daniel J Blueman
___
Nouveau mailing list
Nouveau@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/nouveau