Environment:
Gentoo ~amd64, pf-sources-3.15_p2 (Unsupported kernel, but is this problem actually related to it?)
GTX 650
gcc-4.8.3[hardened]
Update:: The problem occurs with vanilla-sources-3.15.6 compiled with vanilla GCC_SPECS as well.
Problem:
After starting X, the system often freezes, so frequently that makes X unusable. Usually at first, all sudden everything displayed on the X screen is struck, then the content on the screen is sometimes updated for a few times, very slowly, then it gets entirely struck. Cursor sometimes still works but sometimes it doesn't. Alt-SysRq keys sometimes works and sometimes doesn't. Ctrl-Alt-F{1..6} almost never works.
The card is GTX 650. I'm using nvidia-drivers-340.24 primarily, but downgrading to 337.25 doesn't help. When the kernel got struck, I would almost always find several lines related to nvidia-drivers in kern.log:
Code: Select all
...
Jul 17 12:44:35 work kernel: [ 110.402991] nvidia 0000:01:00.0: irq 45 for MSI/MSI-X
Jul 17 12:45:07 work kernel: [ 142.934610] NVRM: GPU at PCI:0000:01:00: GPU-8328b9fe-45bc-4f30-da18-90e5aaf0cd08
Jul 17 12:45:07 work kernel: [ 142.934614] NVRM: Xid (PCI:0000:01:00): 62, 12b2(1f80) 00000000 00000000
Jul 17 12:45:09 work kernel: [ 144.951220] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 12:45:11 work kernel: [ 146.952926] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 12:45:13 work kernel: [ 148.954704] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 12:45:15 work kernel: [ 150.956411] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 12:45:21 work kernel: [ 156.967407] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 12:45:23 work kernel: [ 158.969119] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 12:45:25 work kernel: [ 160.976721] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 12:45:27 work kernel: [ 162.978427] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 12:45:29 work kernel: [ 164.980209] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 12:45:31 work kernel: [ 166.981912] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 12:45:37 work kernel: [ 172.990508] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 12:45:39 work kernel: [ 174.992218] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 12:45:45 work kernel: [ 180.998284] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 12:45:47 work kernel: [ 182.999995] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 12:45:48 work kernel: [ 183.540095] SysRq : Keyboard mode set to system default
Jul 17 12:45:48 work kernel: [ 184.036512] SysRq : Terminate All Tasks
...
Jul 17 12:57:31 work kernel: [ 184.337094] tun: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com>
Jul 17 12:57:53 work kernel: [ 206.344156] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 12:57:55 work kernel: [ 208.346218] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 12:58:04 work kernel: [ 217.223316] NVRM: Xid (PCI:0000:01:00): 69, Class Error: ChId 0003, Class 0000a097, Offset 00000800, Data 2001054e, ErrorCode 0000000c
Jul 17 12:58:06 work kernel: [ 219.226812] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 12:58:10 work kernel: [ 223.233080] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
...
Jul 17 13:09:35 work kernel: [ 474.369103] tun: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com>
Jul 17 13:09:58 work kernel: [ 497.623375] NVRM: Xid (PCI:0000:01:00): 62, 12b2(221c) 04008bb9 20400148
Jul 17 13:10:11 work kernel: [ 510.361115] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 13:10:13 work kernel: [ 512.362830] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 13:10:24 work kernel: [ 523.372183] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 13:10:36 work kernel: [ 535.382402] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 13:10:48 work kernel: [ 547.392619] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 13:11:01 work kernel: [ 560.403687] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 13:11:14 work kernel: [ 573.414756] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
...
Jul 17 14:43:17 work kernel: [ 5416.967807] EXT4-fs (sdb3): mounted filesystem with ordered data mode. Opts: (null)
Jul 17 14:43:17 work kernel: [ 5417.055717] EXT4-fs (sdb2): mounted filesystem with ordered data mode. Opts: (null)
Jul 17 14:44:27 work kernel: [ 5486.704690] NVRM: GPU at PCI:0000:01:00: GPU-8328b9fe-45bc-4f30-da18-90e5aaf0cd08
Jul 17 14:44:27 work kernel: [ 5486.704694] NVRM: Xid (PCI:0000:01:00): 62, 12b2(1fb4) 00000000 00000000
Jul 17 14:44:30 work kernel: [ 5489.316981] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 14:44:32 work kernel: [ 5491.318693] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 14:44:42 work kernel: [ 5501.364497] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 14:44:54 work kernel: [ 5513.404740] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 14:45:06 work kernel: [ 5525.454992] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 14:45:10 work kernel: [ 5529.549799] SysRq : Keyboard mode set to system default
Jul 17 14:45:11 work kernel: [ 5530.374494] SysRq : Terminate All Tasks
...
Jul 17 15:22:32 work kernel: [ 190.377068] tun: Universal TUN/TAP device driver, 1.6
Jul 17 15:22:32 work kernel: [ 190.377071] tun: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com>
Jul 17 15:23:08 work kernel: [ 225.767801] NVRM: GPU at PCI:0000:01:00: GPU-8328b9fe-45bc-4f30-da18-90e5aaf0cd08
Jul 17 15:23:08 work kernel: [ 225.767804] NVRM: Xid (PCI:0000:01:00): 32, Channel ID 00000001 intr 00040000
Jul 17 15:23:08 work kernel: [ 225.799997] NVRM: Xid (PCI:0000:01:00): 32, Channel ID 00000001 intr 00040000
Jul 17 15:23:08 work kernel: [ 225.800071] NVRM: Xid (PCI:0000:01:00): 69, Class Error: ChId 0001, Class 0000a097, Offset 00002384, Data 42ba0000, ErrorCode 0000000c
Jul 17 15:24:39 work kernel: [ 317.113616] NVRM: Xid (PCI:0000:01:00): 32, Channel ID 00000001 intr 00040000
Jul 17 15:24:39 work kernel: [ 317.113785] NVRM: Xid (PCI:0000:01:00): 32, Channel ID 00000001 intr 00040000
Jul 17 15:26:34 work kernel: [ 432.383168] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 15:26:36 work kernel: [ 434.384887] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 15:26:46 work kernel: [ 444.423398] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 15:26:58 work kernel: [ 456.463653] NVRM: os_schedule: Attempted to yield the CPU while in atomic or interrupt context
Jul 17 15:27:03 work kernel: [ 461.062344] SysRq : Keyboard mode set to system default
Jul 17 15:27:03 work kernel: [ 461.574772] SysRq : Terminate All Tasks
The problem doesn't occur with my GTX 670 at home, using the same version of nvidia-drivers. However, both my Gentoo on hard drive and portable HD exhibit the same behavior with GTX 650.
I found quite a few similar issues on Google, but I haven't found a working resolution so far...
Things I've tried (and didn't work):
- Changed to VGA (disable framebuffer things by using legacy boot and unset gfxpayload in grub). No changes.
- I added 'Option "Accel" "false"' to xorg.conf. I then got a black screen on X.
- I added 'Option "RenderAccel" "false"' to xorg.conf. No changes.
- I recompiled the kernel, disabled DRM and agpgart totally, dropped the modules from /lib/modules, recompiled nvidia-drivers. No changes.
- I enabled "Prefer Maximum Performance" in PowerMizer settings of nvidia-settings. No changes.
- I removed ~/.nvidia-settings-rc, then re-run nvidia-settings to recreate it. No changes.
- I switched to nouveau. Okay, this one worked, but FPS of glxgears dropped to 1/6 of the original value.
Kernel configuration of my Gentoo on portable HD: https://gist.github.com/richardgv/dab3abfe0fc86feec16a
Kernel log: https://dl.dropboxusercontent.com/u/283 ... ern.log.xz




