Bug 693589

Summary: [NV94] X freezes with nouveau driver [@ nouveau_bo_wait]
Product: [Fedora] Fedora Reporter: Corey Hoffman <corey.hoffman>
Component: xorg-x11-drv-nouveauAssignee: Ben Skeggs <bskeggs>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: medium    
Version: 14CC: airlied, ajax, bskeggs, mcepl
Target Milestone: ---Keywords: Triaged
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard: [cat:crash]
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-08-16 16:44:53 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Attachments:
Description Flags
Xorg log with backtrace after crash
none
Relevant part of /var/log/messages a the time of the crash. none

Description Corey Hoffman 2011-04-05 01:14:24 UTC
Created attachment 489891 [details]
Xorg log with backtrace after crash

Description of problem:
X freezes, with the keyboard not responding, but the mouse pointer does.

Version-Release number of selected component (if applicable):
xorg-x11-drv-nouveau-0.0.16-11.20100826git065576d.fc14.x86_64

0f:00.0 VGA compatible controller: nVidia Corporation G94 [Quadro FX 1800] (rev a1) (prog-if 00 [VGA controller])
	Subsystem: nVidia Corporation Device 062c
	Physical Slot: 2
	Flags: bus master, fast devsel, latency 0, IRQ 24
	Memory at f6000000 (32-bit, non-prefetchable) [size=16M]
	Memory at e0000000 (64-bit, prefetchable) [size=256M]
	Memory at f4000000 (64-bit, non-prefetchable) [size=32M]
	I/O ports at e000 [size=128]
	Expansion ROM at <unassigned> [disabled]
	Capabilities: [60] Power Management version 3
	Capabilities: [68] MSI: Enable- Count=1/1 Maskable- 64bit+
	Capabilities: [78] Express Endpoint, MSI 00
	Capabilities: [b4] Vendor Specific Information: Len=14 <?>
	Capabilities: [100] Virtual Channel
	Capabilities: [128] Power Budgeting <?>
	Capabilities: [600] Vendor Specific Information: ID=0001 Rev=1 Len=024 <?>
	Kernel driver in use: nouveau
	Kernel modules: nouveau, nvidiafb


How reproducible:
Not easily reproducible.

Steps to Reproduce:
1. Run with nouveau driver for a few weeks/months
2. Crash, seemingly at random.
  
Actual results:


Expected results:


Additional info:

Comment 1 Corey Hoffman 2011-04-05 01:16:25 UTC
Created attachment 489892 [details]
Relevant part of /var/log/messages a the time of the crash.

Comment 2 Matěj Cepl 2011-04-08 13:38:49 UTC
Backtrace:
[1627769.348] 0: /usr/bin/Xorg (xorg_backtrace+0x28) [0x4a07b8]
[1627769.348] 1: /usr/bin/Xorg (mieqEnqueue+0x1f4) [0x49fcb4]
[1627769.348] 2: /usr/bin/Xorg (xf86PostMotionEventP+0xc4) [0x47c904]
[1627769.357] 3: /usr/lib64/xorg/modules/input/evdev_drv.so (0x7fe56cafb000+0x453f) [0x7fe56caff53f]
[1627769.357] 4: /usr/bin/Xorg (0x400000+0x6a5f7) [0x46a5f7]
[1627769.357] 5: /usr/bin/Xorg (0x400000+0x118fb3) [0x518fb3]
[1627769.358] 6: /lib64/libc.so.6 (0x3ae6c00000+0x33140) [0x3ae6c33140]
[1627769.358] 7: /lib64/libc.so.6 (ioctl+0x7) [0x3ae6cd8997]
[1627769.358] 8: /usr/lib64/libdrm.so.2 (drmIoctl+0x28) [0x7fe56eabe648]
[1627769.358] 9: /usr/lib64/libdrm.so.2 (drmCommandWrite+0x1b) [0x7fe56eac07ab]
[1627769.358] 10: /usr/lib64/libdrm_nouveau.so.1 (0x7fe56e480000+0x2ded) [0x7fe56e482ded]
[1627769.358] 11: /usr/lib64/libdrm_nouveau.so.1 (nouveau_bo_map_range+0xfe) [0x7fe56e4833fe]
[1627769.358] 12: /usr/lib64/libdrm_nouveau.so.1 (0x7fe56e480000+0x1f2d) [0x7fe56e481f2d]
[1627769.358] 13: /usr/lib64/libdrm_nouveau.so.1 (nouveau_pushbuf_flush+0x1af) [0x7fe56e4824ff]
[1627769.358] 14: /usr/lib64/xorg/modules/libexa.so (0x7fe56e045000+0x90f5) [0x7fe56e04e0f5]
[1627769.358] 15: /usr/lib64/xorg/modules/libexa.so (0x7fe56e045000+0xbcc1) [0x7fe56e050cc1]
[1627769.358] 16: /usr/bin/Xorg (0x400000+0xd73e7) [0x4d73e7]
[1627769.358] 17: /usr/lib64/xorg/modules/libexa.so (0x7fe56e045000+0xd318) [0x7fe56e052318]
[1627769.358] 18: /usr/bin/Xorg (0x400000+0xd6ae5) [0x4d6ae5]
[1627769.358] 19: /usr/bin/Xorg (0x400000+0xd043d) [0x4d043d]
[1627769.358] 20: /usr/bin/Xorg (0x400000+0x2d521) [0x42d521]
[1627769.358] 21: /usr/bin/Xorg (0x400000+0x2157e) [0x42157e]
[1627769.358] 22: /lib64/libc.so.6 (__libc_start_main+0xfd) [0x3ae6c1ee5d]
[1627769.358] 23: /usr/bin/Xorg (0x400000+0x21129) [0x421129]

Comment 3 Matěj Cepl 2011-04-08 13:42:22 UTC
Could we get please output of the command

rpm -q xorg-x11-drv-evdev xorg-x11-server-Xorg libdrm

please? Thank you

Comment 4 Corey Hoffman 2011-04-10 22:19:32 UTC
# rpm -q xorg-x11-drv-evdev xorg-x11-server-Xorg libdrm
xorg-x11-drv-evdev-2.5.0-1.fc14.x86_64
xorg-x11-server-Xorg-1.9.5-1.fc14.x86_64
libdrm-2.4.22-1.fc14.x86_64
libdrm-2.4.22-1.fc14.i686

xorg-x11-server-Xorg has been updated since, though:
# grep xorg-x11-server-Xorg /var/log/yum.log
Jan 21 04:09:51 Updated: xorg-x11-server-Xorg-1.9.3-4.fc14.x86_64
Feb 22 04:07:47 Updated: xorg-x11-server-Xorg-1.9.4-1.fc14.x86_64
Apr 06 04:05:41 Updated: xorg-x11-server-Xorg-1.9.5-1.fc14.x86_64

Comment 6 Matěj Cepl 2011-05-10 23:16:39 UTC
(In reply to comment #2)
> Backtrace:
> [1627769.348] 0: /usr/bin/Xorg (xorg_backtrace+0x28) [0x4a07b8]
> [1627769.348] 1: /usr/bin/Xorg (mieqEnqueue+0x1f4) [0x49fcb4]
> [1627769.348] 2: /usr/bin/Xorg (xf86PostMotionEventP+0xc4) [0x47c904]
> [1627769.357] 3: /usr/lib64/xorg/modules/input/evdev_drv.so
> (0x7fe56cafb000+0x453f) [0x7fe56caff53f]
> [1627769.357] 4: /usr/bin/Xorg (0x400000+0x6a5f7) [0x46a5f7]
> [1627769.357] 5: /usr/bin/Xorg (0x400000+0x118fb3) [0x518fb3]
> [1627769.358] 6: /lib64/libc.so.6 (0x3ae6c00000+0x33140) [0x3ae6c33140]
> [1627769.358] 7: /lib64/libc.so.6 (ioctl+0x7) [0x3ae6cd8997]
> [1627769.358] 8: /usr/lib64/libdrm.so.2 (drmIoctl+0x28) [0x7fe56eabe648]
> [1627769.358] 9: /usr/lib64/libdrm.so.2 (drmCommandWrite+0x1b) [0x7fe56eac07ab]
> [1627769.358] 10: /usr/lib64/libdrm_nouveau.so.1 (0x7fe56e480000+0x2ded)
> [0x7fe56e482ded]


in nouveau_bo_wait(struct nouveau_bo *bo, int cpu_write, int no_wait, int no_block)

[..]
	req.handle = nvbo->handle;
	req.flags = 0;
	if (cpu_write)
		req.flags |= NOUVEAU_GEM_CPU_PREP_WRITE;
	if (no_wait)
		req.flags |= NOUVEAU_GEM_CPU_PREP_NOWAIT;
	if (no_block)
		req.flags |= NOUVEAU_GEM_CPU_PREP_NOBLOCK;

	do {
		ret = drmCommandWrite(nvdev->fd, DRM_NOUVEAU_GEM_CPU_PREP,
				      &req, sizeof(req));
>>>>>>	} while (ret == -EAGAIN);


> [1627769.358] 11: /usr/lib64/libdrm_nouveau.so.1 (nouveau_bo_map_range+0xfe)
> [0x7fe56e4833fe]

> [1627769.358] 12: /usr/lib64/libdrm_nouveau.so.1 (0x7fe56e480000+0x1f2d)
> [0x7fe56e481f2d]
> [1627769.358] 13: /usr/lib64/libdrm_nouveau.so.1 (nouveau_pushbuf_flush+0x1af)
> [0x7fe56e4824ff]
> [1627769.358] 14: /usr/lib64/xorg/modules/libexa.so (0x7fe56e045000+0x90f5)
> [0x7fe56e04e0f5]
> [1627769.358] 15: /usr/lib64/xorg/modules/libexa.so (0x7fe56e045000+0xbcc1)
> [0x7fe56e050cc1]
> [1627769.358] 16: /usr/bin/Xorg (0x400000+0xd73e7) [0x4d73e7]
> [1627769.358] 17: /usr/lib64/xorg/modules/libexa.so (0x7fe56e045000+0xd318)
> [0x7fe56e052318]
> [1627769.358] 18: /usr/bin/Xorg (0x400000+0xd6ae5) [0x4d6ae5]
> [1627769.358] 19: /usr/bin/Xorg (0x400000+0xd043d) [0x4d043d]
> [1627769.358] 20: /usr/bin/Xorg (0x400000+0x2d521) [0x42d521]
> [1627769.358] 21: /usr/bin/Xorg (0x400000+0x2157e) [0x42157e]
> [1627769.358] 22: /lib64/libc.so.6 (__libc_start_main+0xfd) [0x3ae6c1ee5d]
> [1627769.358] 23: /usr/bin/Xorg (0x400000+0x21129) [0x421129]

Comment 7 Fedora End Of Life 2012-08-16 16:44:56 UTC
This message is a notice that Fedora 14 is now at end of life. Fedora 
has stopped maintaining and issuing updates for Fedora 14. It is 
Fedora's policy to close all bug reports from releases that are no 
longer maintained.  At this time, all open bugs with a Fedora 'version'
of '14' have been closed as WONTFIX.

(Please note: Our normal process is to give advanced warning of this 
occurring, but we forgot to do that. A thousand apologies.)

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, feel free to reopen 
this bug and simply change the 'version' to a later Fedora version.

Bug Reporter: Thank you for reporting this issue and we are sorry that 
we were unable to fix it before Fedora 14 reached end of life. If you 
would still like to see this bug fixed and are able to reproduce it 
against a later version of Fedora, you are encouraged to click on 
"Clone This Bug" (top right of this page) and open it against that 
version of Fedora.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events.  Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

The process we are following is described here: 
http://fedoraproject.org/wiki/BugZappers/HouseKeeping