Bug 73358 - [nv34] adobe flash + vdpau 'hardware acceleration' -> BAD_ARGUMENT (subc 7 class 0x0697 mthd 0x0208 data 0x00000120)
Summary: [nv34] adobe flash + vdpau 'hardware acceleration' -> BAD_ARGUMENT (subc 7 cl...
Status: RESOLVED FIXED
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/nouveau (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: Nouveau Project
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-01-07 14:02 UTC by Ronald
Modified: 2014-01-20 01:42 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
Full Dmesg of another occurance (46.74 KB, text/plain)
2014-01-07 14:08 UTC, Ronald
no flags Details
printfs and bail (4.15 KB, patch)
2014-01-16 21:13 UTC, Emil Velikov
no flags Details | Splinter Review
Patch replacing apitrace/ltrace for debugging (modified for stderr) (4.17 KB, text/plain)
2014-01-17 10:43 UTC, Ronald
no flags Details
Print screen of garbled screen when using flash (604.08 KB, image/png)
2014-01-17 10:52 UTC, Ronald
no flags Details
vdpau patch (5.52 KB, patch)
2014-01-18 03:47 UTC, Ilia Mirkin
no flags Details | Splinter Review

Description Ronald 2014-01-07 14:02:57 UTC
Trying to run a Youtube clip in Firefox:

(I managed to get these out of journalctl)

Jan 07 14:48:59 Delta kernel: nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
Jan 07 14:48:59 Delta kernel: nouveau E[  PGRAPH][0000:01:00.0] ch 3 [plugin-containe[901]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
Jan 07 14:48:59 Delta kernel: nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: LIMIT_COLOR nstatus: BAD_ARGUMENT PROTECTION_FAULT
Jan 07 14:48:59 Delta kernel: nouveau E[  PGRAPH][0000:01:00.0] ch 3 [plugin-containe[901]] subc 7 class 0x0697 mthd 0x0204 data 0x00b80000
Jan 07 14:48:59 Delta kernel: nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT PROTECTION_FAULT
Jan 07 14:48:59 Delta kernel: nouveau E[  PGRAPH][0000:01:00.0] ch 3 [plugin-containe[901]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
Jan 07 14:48:59 Delta kernel: nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT PROTECTION_FAULT
Jan 07 14:48:59 Delta kernel: nouveau E[  PGRAPH][0000:01:00.0] ch 3 [plugin-containe[901]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
Jan 07 14:48:59 Delta kernel: nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT PROTECTION_FAULT
Jan 07 14:48:59 Delta kernel: nouveau E[  PGRAPH][0000:01:00.0] ch 3 [plugin-containe[901]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
Jan 07 14:48:59 Delta kernel: nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT PROTECTION_FAULT
Jan 07 14:48:59 Delta kernel: nouveau E[  PGRAPH][0000:01:00.0] ch 3 [plugin-containe[901]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120

Versions:
libdrm 2.4.50-1
mesa 10.0.1-2
xorg-server 1.14.5-1
xf86-video-nouveau 1.0.10-1
kernel 3.13.0-rc7-00055-gef350bb
Comment 1 Ronald 2014-01-07 14:08:01 UTC
Created attachment 91601 [details]
Full Dmesg of another occurance

Did a cat /dev/kmsg > dmesg.txt to get it all.
Comment 2 Ronald 2014-01-07 14:08:42 UTC
Here is the error part of the above:

3,550,895023289,-;nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
3,551,895023320,-;nouveau E[  PGRAPH][0000:01:00.0] ch 3 [plugin-containe[1388]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
3,552,895023809,-;nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
3,553,895023823,-;nouveau E[  PGRAPH][0000:01:00.0] ch 3 [plugin-containe[1388]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
3,554,895137798,-;nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
3,555,895137830,-;nouveau E[  PGRAPH][0000:01:00.0] ch 3 [plugin-containe[1388]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
3,556,895138314,-;nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
3,557,895138329,-;nouveau E[  PGRAPH][0000:01:00.0] ch 3 [plugin-containe[1388]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
3,558,895138451,-;nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
3,559,895138463,-;nouveau E[  PGRAPH][0000:01:00.0] ch 3 [plugin-containe[1388]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
3,560,917967807,-;nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
3,561,917967839,-;nouveau E[  PGRAPH][0000:01:00.0] ch 3 [plugin-containe[1388]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
3,562,917968299,-;nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
3,563,917968315,-;nouveau E[  PGRAPH][0000:01:00.0] ch 3 [plugin-containe[1388]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
3,564,917996736,-;nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
3,565,917996766,-;nouveau E[  PGRAPH][0000:01:00.0] ch 3 [plugin-containe[1388]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
3,566,917997227,-;nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
3,567,917997243,-;nouveau E[  PGRAPH][0000:01:00.0] ch 3 [plugin-containe[1388]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
3,568,917997355,-;nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
3,569,917997368,-;nouveau E[  PGRAPH][0000:01:00.0] ch 3 [plugin-containe[1388]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
3,570,928392179,-;nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
3,571,928392211,-;nouveau E[  PGRAPH][0000:01:00.0] ch 3 [plugin-containe[1388]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
3,572,928392694,-;nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
3,573,928392707,-;nouveau E[  PGRAPH][0000:01:00.0] ch 3 [plugin-containe[1388]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
3,574,928546393,-;nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
3,575,928546425,-;nouveau E[  PGRAPH][0000:01:00.0] ch 3 [plugin-containe[1388]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
3,576,928546887,-;nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
3,577,928546901,-;nouveau E[  PGRAPH][0000:01:00.0] ch 3 [plugin-containe[1388]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
3,578,928547018,-;nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
3,579,928547030,-;nouveau E[  PGRAPH][0000:01:00.0] ch 3 [plugin-containe[1388]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
3,580,934091815,-;nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
3,581,934091847,-;nouveau E[  PGRAPH][0000:01:00.0] ch 3 [plugin-containe[1388]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
3,582,934092334,-;nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
3,583,934092347,-;nouveau E[  PGRAPH][0000:01:00.0] ch 3 [plugin-containe[1388]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
3,584,934117406,-;nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
3,585,934117436,-;nouveau E[  PGRAPH][0000:01:00.0] ch 3 [plugin-containe[1388]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
3,586,934117928,-;nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
3,587,934117946,-;nouveau E[  PGRAPH][0000:01:00.0] ch 3 [plugin-containe[1388]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
3,588,934118062,-;nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
3,589,934118073,-;nouveau E[  PGRAPH][0000:01:00.0] ch 3 [plugin-containe[1388]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
Comment 3 Ronald 2014-01-10 08:21:41 UTC
This *might* be a regression.

I migrated from Ubuntu to ArchLinux. These seem kernel errors, which I also upgraded. From 3.13.0-rc3 -> 3.13.0-rc7-00055-gef350bb:

4706515 Merge branches 'acpi-pci-pm' and 'acpi-pci-hotplug'
f244d8b ACPIPHP / radeon / nouveau: Fix VGA switcheroo problem related to hotplug
b25b442 drm/nouveau: only runtime suspend by default in optimus configuration
c17f5bb Merge branch 'drm-nouveau-next' of git://anongit.freedesktop.org/git/nouveau/linux
bdefc8c drm/nv50/disp: min/max are reversed in nv50_crtc_gamma_set()
13cd1a5 drm/nouveau/sw: fix oops if gpu has its display block disabled
2fd04c8 drm/nouveau: unreference fence after syncing
f074d73 drm/nouveau/kms: send timestamp data for correct head in flip completion events
a7e4201 drm/nouveau/clk: Add support for NVAA/NVAC
b1cd497 drm/nouveau/fifo: Hook up pause and resume for NV50 and NV84+
efffa98 drm/nv10/plane: some chipsets don't support NV12
050828e drm/nv10/plane: add downscaling restrictions
92e5b0a drm/nv10/plane: fix format computation
5b19f4f drm/nv04-nv30/clk: provide an empty domain list

Could the above contain a likely culprit?

Ubuntu -> Arch upgrade

libdrm  2.4.46-1ubuntu1 -> 2.4.50-1
mesa 9.2.1-1ubuntu3 -> 10.0.1-2
xorg-server 2:1.14.3-3ubuntu2 -> 1.14.5-1
xf86-video-nouveau 1:1.0.9-2ubuntu1 -> 1.0.10-1
kernel 3.13.0-rc3 -> 3.13.0-rc7-00055-gef350bb
Comment 4 Ilia Mirkin 2014-01-10 08:26:29 UTC
I've randomly seen these types of errors when running on my NV42 as well, definitely video related (but I was running the mpeg2 hw accel). Are you observing any actual issues besides annoying messages in dmesg?
Comment 5 Ronald 2014-01-10 10:19:24 UTC
Yeah, the entire screen stalls. If I kill the tab playing adobe flash, everything is fine again. Switching tty does not work. Xorg disappears, but I only see the contents of tty1 on any other tty just before Xorg was started. I did not have these errors before when using Ubuntu. Not in this form. They appeared sporadically but everything was fine afterwards.

Some more critical information. The first time after installation, everything worked fine.

I looked at the upgrade logs:

[2014-01-07 16:14] [PACKAGEKIT] upgraded xorg-server-common (1.14.5-1 -> 1.14.5-2)
[2014-01-07 16:14] [PACKAGEKIT] upgraded xorg-server (1.14.5-1 -> 1.14.5-2)
[2014-01-09 09:19] [PACKAGEKIT] upgraded glibc (2.18-11 -> 2.18-12)
[2014-01-09 09:19] [PACKAGEKIT] upgraded libdrm (2.4.50-1 -> 2.4.51-1)

It's not the kernel, I just tried v3.13-rc3.

Libdrm is not a huge upgrade and no nouveau files were touched.

The xorg-server bump was about this: https://projects.archlinux.org/svntogit/packages.git/commit/trunk?h=packages/xorg-server&id=7943d976eef97d4d75026b6f2c3936b03aeb4648

I think I got lucky the first time it all worked. I guess.
Comment 6 Ronald 2014-01-10 17:41:05 UTC
Looking again, I saw I had the 10.3 version linked. That version still had more security updates than 11.1. Hence the choice.

Reverting to 11.1 makes things work.

No more banking on this machine...

Sorry for the noise.
Comment 7 Ilia Mirkin 2014-01-10 18:04:25 UTC
What are 10.3 and 11.1 references to? Flash?

FWIW

subc 7 class 0x0697 mthd 0x0208 data 0x00000120

decodes to

$ lookup -a 34 -d NV01_SUBCHAN -- -v obj-class NV34_3D 208 120
RT_FORMAT => { COLOR = 0 | ZETA = Z16 | TYPE = LINEAR | LOG2_WIDTH = 0 | LOG2_HEIGHT = 0 }

Based on the fact that COLOR isn't set, something highly illegal is happening. I don't see any paths that would leave COLOR unset, unless somehow an illegal format was being used. And since the process in question is plugin-container, that means that opengl is being used (otherwise you'd see Xorg as the process or something).

It'd be fantastic if you could get an apitrace of this. I don't know if apitrace follows exec'd processes, but I hope it does. If not, at the very least an ltrace may prove useful (restricted to opengl, of course).
Comment 8 Ronald 2014-01-10 19:27:25 UTC
Yelled too soon. The latest flash for this CPU (non SSE2) for google chrome (11.2.202.235) (I think) gives this:

[ 7036.622880] nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
[ 7036.622912] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [chromium[5871]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
[ 7036.622975] nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: LIMIT_COLOR nstatus: BAD_ARGUMENT PROTECTION_FAULT
[ 7036.622987] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [chromium[5871]] subc 7 class 0x0697 mthd 0x0204 data 0x00b80000
[ 7036.623357] nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT PROTECTION_FAULT
[ 7036.623372] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [chromium[5871]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
[ 7036.623485] nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT PROTECTION_FAULT
[ 7036.623497] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [chromium[5871]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
[ 7036.623969] nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT PROTECTION_FAULT
[ 7036.623981] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [chromium[5871]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
[ 7036.624097] nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT PROTECTION_FAULT
[ 7036.624108] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [chromium[5871]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
[ 7049.173857] nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT PROTECTION_FAULT
[ 7049.173889] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [chromium[5871]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
[ 7049.174067] nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT PROTECTION_FAULT
[ 7049.174081] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [chromium[5871]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
[ 7049.174129] nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT PROTECTION_FAULT
[ 7049.174140] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [chromium[5871]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
[ 7049.174359] nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT PROTECTION_FAULT
[ 7049.174373] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [chromium[5871]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
[ 7049.174421] nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT PROTECTION_FAULT
[ 7049.174433] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [chromium[5871]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
[ 7052.461416] nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT PROTECTION_FAULT
[ 7052.461448] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [chromium[5871]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
[ 7052.461894] nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT PROTECTION_FAULT
[ 7052.461908] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [chromium[5871]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
[ 7052.462023] nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT PROTECTION_FAULT
[ 7052.462035] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [chromium[5871]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
[ 7052.462511] nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT PROTECTION_FAULT
[ 7052.462525] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [chromium[5871]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
[ 7052.462638] nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT PROTECTION_FAULT
[ 7052.462651] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [chromium[5871]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
Comment 9 Ronald 2014-01-10 21:44:03 UTC
I tried to do this but browsers are so complicated it does not work.

- apitrace trace firefox does not work
- apitrace trace chromium does not work
- replacing firefox plugin loader with script calling apitrace does not work
- replacing chromium exec with a script that catches the plugin instances yielded no results
- I downloaded fp_11.2.1.102.63_archive.zip and extracted the standalone player. Attaching apitrace seems to work. Other then the other 4 attempts it sucessfully catches the libGL calls. However, it only accepts direct links to .swf files. This will not work for youtube.

Do you have any ideas?

I have the latest apitrace from git if that matters.
Comment 10 Ronald 2014-01-11 06:51:10 UTC
Was not able to use the standalone version. Alternative apitrace methods yielded nill except for the most sophisticated method (LD_PRELOAD glxtrace.so). However, this fails:

apitrace: tracing to /home/gebruiker/plugin-container.trace
apitrace: error: failed to look up real dlopen
apitrace: error: couldn't find libGL.so
error: unavailable function glXGetClientString

Almost there :/

Tried both chromium (single-process, no-sandbox etc etc) and firefox.
Comment 11 Ronald 2014-01-11 07:16:15 UTC
What arguments do I have to use for ltrace?

-l libGL.so


???
Comment 12 Ilia Mirkin 2014-01-11 07:23:27 UTC
(In reply to comment #11)
> What arguments do I have to use for ltrace?
> 
> -l libGL.so
> 
> 
> ???

And/or nouveau-dri.so. I've never used ltrace for this, so I'm not sure how useful it will be. But definitely worth a shot.
Comment 13 Ronald 2014-01-11 15:24:16 UTC
I get stuff like this:

[pid 9120] --- Called exec() ---
[pid 9120] +++ exited (status 0) +++
[pid 9119] --- SIGCHLD (Child exited) ---
[pid 9119] --- Called exec() ---
[pid 9122] --- Called exec() ---

No calls with libGL.so.1. This works with glxgears (as with apitrace).

Tried chromium -> would not even start
Firefox or plugin-container itself (i.e. exec ltrace -f -l libGL.so.1 /usr/lib/firefox/plugin-container.real $@ yields no results as well)

There is a lot of forking involved I guess.

Maybe we are hitting some sort of (insane) protection scheme here?
Comment 14 Ronald 2014-01-11 15:24:58 UTC
Btw, chromium would not even start with --single-process or --no-sandbox (those are not mutually exclusive I think).
Comment 15 Ronald 2014-01-11 15:57:12 UTC
I got somewhat the same errors with supertuxkart (don't ask).

3,1775,10645808600,-;nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
3,1776,10645808638,-;nouveau E[  PGRAPH][0000:01:00.0] ch 3 [supertuxkart[9875]] subc 7 class 0x0697 mthd 0x0208 data 0x02000248
3,1777,10645813906,-;nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
3,1778,10645813938,-;nouveau E[  PGRAPH][0000:01:00.0] ch 3 [supertuxkart[9875]] subc 7 class 0x0697 mthd 0x0208 data 0x02000248

Closed the window as soon as the errors appear. Yet the uncompressed trace is 30MB. Hope this helps.
Comment 16 Ronald 2014-01-11 16:03:50 UTC
Had to upload it:

http://www.send6.com/52258032
Comment 17 Emil Velikov 2014-01-16 21:13:57 UTC
Created attachment 92246 [details] [review]
printfs and bail

Ronald try this patch. Apply it on top of the mesa that you're using currently.

It will print the different formats, and bail when we try to program 0x0000120 to the card. This may cause side effects so do _not_ install, but rather specify the location of the local/new nouveau_dri.so via the LIBGL_DRIVERS_PATH variable.

ex.
LIBGL_DRIVERS_PATH=/home/emo/mesa/build/lib/gallium firefox >& fdo73358.log
Comment 18 Emil Velikov 2014-01-16 21:18:32 UTC
If there is no output, change the printf from stdout to stderr

s/printf(/fprintf(stderr,/
Comment 19 Ilia Mirkin 2014-01-17 03:49:11 UTC
Here's a patch I made: http://patchwork.freedesktop.org/patch/18063/

Would be interesting to see if it helps your situation. Note that if you install mesa (and thus libvdpau_nouveau.so) into not-/usr/lib, then you will need to install libvdpau to that same location and use LD_LIBRARY_PATH. Otherwise it'll load the system libvdpau which will have hardcoded locations it searches for libvdpau_$driver.so.
Comment 20 Ilia Mirkin 2014-01-17 03:52:13 UTC
BTW, the supertuxkart thing is unrelated. It's trying to use a 16-bit depth buffer with a 32-bit color buffer, which the card doesn't support. Unfortunately gallium doesn't make it possible to reject such a fbo (since individually the buffers are supported, just not together), and patches I wrote to enable this were rejected.
Comment 21 Ronald 2014-01-17 10:41:57 UTC
I'm having a hard time reproducing this. The libpepflashplayer.so used to crash reliably but it won't now. Furthermore, I changed the first patch to use fprintf(stderr, instead of printf( but the compiler gives some warnings.

  CC       nv30_state_validate.lo
nv30/nv30_state_validate.c: In function ‘nv30_validate_fb’:
nv30/nv30_state_validate.c:99:11: warning: passing argument 1 of ‘printf’ from incompatible pointer type [enabled by default]
           util_format_name(p_format), p_format, rt_format, hw_format);
           ^
In file included from ./nv30/nv30_screen.h:4:0,
                 from ./nv30/nv30_context.h:7,
                 from nv30/nv30_state_validate.c:32:
/usr/include/stdio.h:362:12: note: expected ‘const char * restrict’ but argument is of type ‘struct _IO_FILE *’
 extern int printf (const char *__restrict __format, ...);
            ^
  CC       nv30_clear.lo
nv30/nv30_clear.c: In function ‘nv30_clear_render_target’:
nv30/nv30_clear.c:128:4: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 4 has type ‘const char *’ [-Wformat=]
    util_format_name(ps->format), ps->format, rt_format, hw_format);
    ^
nv30/nv30_clear.c:128:4: warning: too many arguments for format [-Wformat-extra-args]

It compiles and runs, but I'm not getting output on the terminal.

I did this as well:

[gebruiker@delta mesa]$ cd mesa
[gebruiker@delta mesa]$ export LD_LIBRARY_PATH=./lib/gallium/:$LD_LIBRARY_PATH
[gebruiker@delta mesa]$ export LIBGL_DRIVERS_PATH=./lib/gallium/
[gebruiker@delta mesa]$ glxgears
Running synchronized to the vertical refresh.  The framerate should be
approximately the same as the monitor refresh rate.
nv30_validate_fb: p_format 2, rt_format 105, hw 5
�(���I[��I[��I[��I[��I[��I[��I[��I[�[gebruiker@delta mesa]$ 

I do not get this output with either chromium or firefox. I guess the garbage output has something to do with the above warnings?

FWIW, I downloaded mesa git and moved to 10.0.2 as requested.
Comment 22 Ronald 2014-01-17 10:43:00 UTC
Created attachment 92277 [details]
Patch replacing apitrace/ltrace for debugging (modified for stderr)

Here's my modified version of the patch (in case you spot any errors).
Comment 23 Ronald 2014-01-17 10:52:47 UTC
Created attachment 92278 [details]
Print screen of garbled screen when using flash

I updated Xorg and some components a while ago. It seems that Xorg does not crash as fast anymore. Instead the flash video looks all garbled.
Comment 24 Ronald 2014-01-17 11:48:27 UTC
@Ilia Mirkin

Did this:

git clone git://anongit.freedesktop.org/mesa/mesa mesa
cd mesa
git checkout mesa-10.0.2
wget http://patchwork.freedesktop.org/patch/18063/raw/ -O ../patch_2.txt
patch -p1 < ../patch_2.txt
./autogen.sh --with-gallium-drivers=nouveau --enable-shared-glapi --enable-texture-float --enable-vdpau --disable-egl --enable-dri --disable-dri3 --disable-gbm --disable-xvmc --with-dri-drivers=nouveau
make

export LD_LIBRARY_PATH=./lib/gallium/:$LD_LIBRARY_PATH
export LIBGL_DRIVERS_PATH=./lib/gallium/
chromium --ppapi-flash-path=/home/gebruiker/Documenten/Ronald/flash/libgcflashplayer-11.2.202.235-19.0.1084.46-135956.so

Youtube still shows a garbled video like in comment #23 . Furthermore, dmesg fills with errors once again:

[ 8569.194470] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [chromium[578]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
[ 8569.194563] nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
[ 8569.194574] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [chromium[578]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
Comment 25 Ronald 2014-01-17 11:54:28 UTC
To clarify comment #21: Not being being able to reproduce means that the session does not crash anymore. I get a garbled screen (see comment #23) instead.

Dmesg still fills with the same errors. Only libgcflashplayer.so (PPAPI) seems to suffer from this. The 'old style' (NPAPI) flashplayer (older version) plays the video's just fine for now.
Comment 26 Ilia Mirkin 2014-01-17 16:10:00 UTC
(In reply to comment #24)
> @Ilia Mirkin
> 
> Did this:
> 
> git clone git://anongit.freedesktop.org/mesa/mesa mesa
> cd mesa
> git checkout mesa-10.0.2
> wget http://patchwork.freedesktop.org/patch/18063/raw/ -O ../patch_2.txt
> patch -p1 < ../patch_2.txt
> ./autogen.sh --with-gallium-drivers=nouveau --enable-shared-glapi
> --enable-texture-float --enable-vdpau --disable-egl --enable-dri
> --disable-dri3 --disable-gbm --disable-xvmc --with-dri-drivers=nouveau
> make
> 
> export LD_LIBRARY_PATH=./lib/gallium/:$LD_LIBRARY_PATH
> export LIBGL_DRIVERS_PATH=./lib/gallium/
> chromium
> --ppapi-flash-path=/home/gebruiker/Documenten/Ronald/flash/libgcflashplayer-
> 11.2.202.235-19.0.1084.46-135956.so

I think you meant to say LD_LIBRARY_PATH=./lib

Also, since I'm pretty sure that this is all caused by vdpau, in order for it to use the libvdpau_nouveau.so that you generated, you need to have a libvdpau in that *same* lib directory. Otherwise it'll get loaded from a fixed path. (You can run strace -f -e open to confirm.)

> 
> Youtube still shows a garbled video like in comment #23 . Furthermore, dmesg
> fills with errors once again:
> 
> [ 8569.194470] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [chromium[578]] subc 7
> class 0x0697 mthd 0x0208 data 0x00000120
> [ 8569.194563] nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR
> nstatus: BAD_ARGUMENT
> [ 8569.194574] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [chromium[578]] subc 7
> class 0x0697 mthd 0x0208 data 0x00000120

Mind testing out http://patchwork.freedesktop.org/patch/18063/ ? (Note, again, make _sure_ that the 'new' version of libvdpau_nouveau.so is being loaded, not the old one.)
Comment 27 Ronald 2014-01-17 17:52:30 UTC
(In reply to comment #26)

> I think you meant to say LD_LIBRARY_PATH=./lib

The vdpau_nouveau.so was sitting in mesa/lib/gallium. But it turns out that even with your suggestion it would not load. What I did was this:

- vdpau_nouveau.so was sitting in ~/mesa/lib/gallium
- cd ~/mesa/lib/gallium
- git clone git://people.freedesktop.org/~aplattner/libvdpau
- ./configure --with-module-dir=~/mesa/lib/gallium
- cd ..
- ln -s -t . libvdpau/src/.libs/libvdpau.so
- ln -s libvdpau.so libvdpau.so.1
- ln -s libvdpau.so libvdpau.so.1.0.0
- cd ~/mesa/lib/gallium

And reran the tests. Same garbled screen as in comment #23. Sorry.

I went to verify I did thinks right so I ran inotifywait on the system vdpau and my own build of vdpau:

[gebruiker@delta ~]$ inotifywait -m ~/mesa/lib/gallium/libvdpau_nouveau.so
Setting up watches.
Watches established.
mesa/lib/gallium/libvdpau_nouveau.so OPEN 
mesa/lib/gallium/libvdpau_nouveau.so ACCESS 
mesa/lib/gallium/libvdpau_nouveau.so CLOSE_NOWRITE,CLOSE 
mesa/lib/gallium/libvdpau_nouveau.so OPEN 
mesa/lib/gallium/libvdpau_nouveau.so ACCESS 
mesa/lib/gallium/libvdpau_nouveau.so CLOSE_NOWRITE,CLOSE 

( other terminal )

[gebruiker@delta mesa]$ inotifywait -rm /usr/lib/vdpau/
Setting up watches.  Beware: since -r was given, this may take a while!
Watches established.

( empty -> not used -> good! )

So I can fairly confidently say that your patch did not fix the issue.

> Also, since I'm pretty sure that this is all caused by vdpau, in order for
> it to use the libvdpau_nouveau.so that you generated, you need to have a
> libvdpau in that *same* lib directory. Otherwise it'll get loaded from a
> fixed path. (You can run strace -f -e open to confirm.)

Yes, thanks for the tip. I used strace and inotifywait.

> Mind testing out http://patchwork.freedesktop.org/patch/18063/ ? (Note,
> again, make _sure_ that the 'new' version of libvdpau_nouveau.so is being
> loaded, not the old one.)

Yes, you suggested this in comment #19 (or did you accidentaly ment another patch?)
Comment 28 Ilia Mirkin 2014-01-17 18:10:09 UTC
(In reply to comment #27)
> (In reply to comment #26)
> 
> > I think you meant to say LD_LIBRARY_PATH=./lib
> 
> The vdpau_nouveau.so was sitting in mesa/lib/gallium. But it turns out that
> even with your suggestion it would not load. What I did was this:

Right, because libvdpau hardcodes its paths, it doesn't just try to dlopen(). Note that normally the libvdpau_$driver.so are NOT in a dlopen-able place, which is why it has to do this.

> 
> - vdpau_nouveau.so was sitting in ~/mesa/lib/gallium
> - cd ~/mesa/lib/gallium
> - git clone git://people.freedesktop.org/~aplattner/libvdpau
> - ./configure --with-module-dir=~/mesa/lib/gallium
> - cd ..
> - ln -s -t . libvdpau/src/.libs/libvdpau.so
> - ln -s libvdpau.so libvdpau.so.1
> - ln -s libvdpau.so libvdpau.so.1.0.0
> - cd ~/mesa/lib/gallium
> 
> And reran the tests. Same garbled screen as in comment #23. Sorry.

Blast! What about messages in dmesg? Do you still see

subc 7 class 0x0697 mthd 0x0208 data 0x00000120

Or are those completely gone? Those are the messages I would expect to have seen fixed by my patch.

Also, since you're on NV34, you don't get NPOT textures either (those came with NV40). I wonder if the vdpau st deals with those. Hmm... it never asks the driver whether it has NPOT textures or not, which probably means not-good, and most likely accounts for your crashes. I need to look into exactly what the NPOT restriction should be...

> > Mind testing out http://patchwork.freedesktop.org/patch/18063/ ? (Note,
> > again, make _sure_ that the 'new' version of libvdpau_nouveau.so is being
> > loaded, not the old one.)
> 
> Yes, you suggested this in comment #19 (or did you accidentaly ment another
> patch?)

Wow, I must have spaced out there. My bad. It indeed is the same patch, but I had forgotten I already asked you about it :)
Comment 29 Ronald 2014-01-17 18:29:07 UTC
> > And reran the tests. Same garbled screen as in comment #23. Sorry.
> 
> Blast! What about messages in dmesg? Do you still see
> 
> subc 7 class 0x0697 mthd 0x0208 data 0x00000120

Yes, (notice that the fourth line is different)

[  460.500905] nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
[  460.500936] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [chromium[1377]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
[  460.500990] nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: LIMIT_COLOR nstatus: BAD_ARGUMENT PROTECTION_FAULT
[  460.501002] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [chromium[1377]] subc 7 class 0x0697 mthd 0x0204 data 0x00980000
[  460.501306] nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT PROTECTION_FAULT
[  460.501320] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [chromium[1377]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
[  460.501415] nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT PROTECTION_FAULT
[  460.501427] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [chromium[1377]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
[  460.501819] nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT PROTECTION_FAULT
[  460.501834] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [chromium[1377]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120
[  460.501925] nouveau E[  PGRAPH][0000:01:00.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT PROTECTION_FAULT
[  460.501937] nouveau E[  PGRAPH][0000:01:00.0] ch 3 [chromium[1377]] subc 7 class 0x0697 mthd 0x0208 data 0x00000120


> Or are those completely gone? Those are the messages I would expect to have
> seen fixed by my patch.

The machine also hangs again.

> Also, since you're on NV34, you don't get NPOT textures either (those came
> with NV40). I wonder if the vdpau st deals with those. Hmm... it never asks
> the driver whether it has NPOT textures or not, which probably means
> not-good, and most likely accounts for your crashes. I need to look into
> exactly what the NPOT restriction should be...

I didn't even knew libvdpau was provided for nv34. Let me know if I can help. This machine just got upgraded from 512 to 1536 megs of ram making it pretty usable again. Testing is a lot easier as well, let me know when you have something new.

> > Yes, you suggested this in comment #19 (or did you accidentaly ment another
> > patch?)
> 
> Wow, I must have spaced out there. My bad. It indeed is the same patch, but
> I had forgotten I already asked you about it :)

No problem.
Comment 30 Ilia Mirkin 2014-01-17 18:59:03 UTC
(In reply to comment #29)
> > > And reran the tests. Same garbled screen as in comment #23. Sorry.
> > 
> > Blast! What about messages in dmesg? Do you still see
> > 
> > subc 7 class 0x0697 mthd 0x0208 data 0x00000120
> 
> Yes, (notice that the fourth line is different)

Very unfortunate. I guess I'll have to look for a different cause :(

> I didn't even knew libvdpau was provided for nv34. Let me know if I can
> help. This machine just got upgraded from 512 to 1536 megs of ram making it
> pretty usable again. Testing is a lot easier as well, let me know when you
> have something new.

VDPAU = Video Decoding AND Presentation. What's being used is the presentation aspect -- it's essentially like Xv, but fancier. And I believe it's what's hanging stuff. Quick test -- remove any instance of libvdpau_nouveau.so(.*) -- does everything become better? If not, it must be coming in via OpenGL or something.

While there is video decoding HW on the NV34, it's only semi-supported; I've disabled this support since it appears to hang my NV34 and I haven't identified the cause. I believe it's actually something related to the NPOTness of the textures, but I don't know for sure. My plan was to create a standalone VPE1-supporting libXvMC library (well, the libXvMCW interface) that renders using the hw video overlay (available on pre-NV40 cards), but that requires some libdrm and possibly kernel changes to support the VPE1 command stream. One could, conceivably, create a VPE2-using standalone libXvMC library that uses the hw overlay to render instead of the 3d hardware. However the only cards that have VPE2 and are pre-NV40 are NV31 and NV34. The rest of the NV3x's (and NV17/NV18) have VPE1 only.

If you're interested in working on this, come over to #nouveau@freenode, would be happy to provide some pointers.
Comment 31 Ronald 2014-01-17 19:55:32 UTC
Yes, I relocated (In reply to comment #30)
> (In reply to comment #29)
> > > > And reran the tests. Same garbled screen as in comment #23. Sorry.
> > > 
> > > Blast! What about messages in dmesg? Do you still see
> > > 
> > > subc 7 class 0x0697 mthd 0x0208 data 0x00000120
> > 
> > Yes, (notice that the fourth line is different)
> 
> Very unfortunate. I guess I'll have to look for a different cause :(

Thomas Edison 

..."I have not failed 700 times. I have not failed once. I have
succeeded in proving that those 700 ways will not work. When I have
eliminated the ways that will not work, I will find the way that will
work."

> > I didn't even knew libvdpau was provided for nv34. Let me know if I can
> > help. This machine just got upgraded from 512 to 1536 megs of ram making it
> > pretty usable again. Testing is a lot easier as well, let me know when you
> > have something new.
> 
> VDPAU = Video Decoding AND Presentation. What's being used is the
> presentation aspect -- it's essentially like Xv, but fancier. And I believe
> it's what's hanging stuff. Quick test -- remove any instance of
> libvdpau_nouveau.so(.*) -- does everything become better? If not, it must be
> coming in via OpenGL or something.

Yes, moving /usr/lib/vdpau away makes the kernel errors go away. Which is what I did right now. So it's vdpau (narrows it down I hope?).

Furthermore, when I do that I get this message:

Failed to open VDPAU backend libvdpau_nouveau.so: kan gedeeld objectbestand niet openen: Bestand of map bestaat niet

(cannot open shared library: File or directory does not exist)

Which makes me wonder why error messages like these get through, despite all the attempts with fprintf(stderr within Emil's patch xD yielding 0 results.

> While there is video decoding HW on the NV34, it's only semi-supported; I've
> disabled this support since it appears to hang my NV34 and I haven't
> identified the cause. I believe it's actually something related to the
> NPOTness of the textures, but I don't know for sure. My plan was to create a
> standalone VPE1-supporting libXvMC library (well, the libXvMCW interface)
> that renders using the hw video overlay (available on pre-NV40 cards), but
> that requires some libdrm and possibly kernel changes to support the VPE1
> command stream. One could, conceivably, create a VPE2-using standalone
> libXvMC library that uses the hw overlay to render instead of the 3d
> hardware. However the only cards that have VPE2 and are pre-NV40 are NV31
> and NV34. The rest of the NV3x's (and NV17/NV18) have VPE1 only.
> 
> If you're interested in working on this, come over to #nouveau@freenode,
> would be happy to provide some pointers.

I would love to help, but I cannot code. To this point, I have always gotten away by reading lot's of (badly written) manpages and bash scripting. If you bend with the system it will be nice to you. Never had the courage to touch a line of C code. Maybe it's time ...

Is it possible to contribute after an initial phase of self study? What kind of topics would I need to get familiair with?
Comment 32 Ilia Mirkin 2014-01-18 03:47:51 UTC
Created attachment 92316 [details] [review]
vdpau patch

OK, here's a patch that

(a) disables vdpau for devices that don't support NPOT textures
(b) error handling cleanups when creating surfaces
(c) the thing i did before which checking surface params before making them

Now, I believe that part (a) should essentially disable VDPAU for you. When you build it, run vdpauinfo -- it should say something like "no devices" or "error creating device" or something. Hopefully flash can also deal with that error.
Comment 33 Ronald 2014-01-18 06:22:42 UTC
(In reply to comment #32)
> Created attachment 92316 [details] [review] [review]
> vdpau patch
> 
> OK, here's a patch that
> 
> (a) disables vdpau for devices that don't support NPOT textures
> (b) error handling cleanups when creating surfaces
> (c) the thing i did before which checking surface params before making them
> 
> Now, I believe that part (a) should essentially disable VDPAU for you. When
> you build it, run vdpauinfo -- it should say something like "no devices" or
> "error creating device" or something. Hopefully flash can also deal with
> that error.

Yes,

[gebruiker@delta mesa]$ ../vdpauinfo/vdpauinfo
display: :0.0   screen: 0
Error creating VDPAU device: 1

I get no more errors in dmesg and no more hangs. For now, I disabled hardware acceleration inside the player itself using the lef-click menu. Your patch works as intended.

I take it there is no other way for me to contribute??

Thank you.
Comment 34 Ilia Mirkin 2014-01-18 06:31:17 UTC
(In reply to comment #33)
> (In reply to comment #32)
> > Created attachment 92316 [details] [review] [review] [review]
> > vdpau patch
> > 
> > OK, here's a patch that
> > 
> > (a) disables vdpau for devices that don't support NPOT textures
> > (b) error handling cleanups when creating surfaces
> > (c) the thing i did before which checking surface params before making them
> > 
> > Now, I believe that part (a) should essentially disable VDPAU for you. When
> > you build it, run vdpauinfo -- it should say something like "no devices" or
> > "error creating device" or something. Hopefully flash can also deal with
> > that error.
> 
> Yes,
> 
> [gebruiker@delta mesa]$ ../vdpauinfo/vdpauinfo
> display: :0.0   screen: 0
> Error creating VDPAU device: 1
> 
> I get no more errors in dmesg and no more hangs.

Great! I've posted the patch as a series, hopefully it should be in mesa.git soonish.

> For now, I disabled
> hardware acceleration inside the player itself using the lef-click menu.

Hmmm... that shouldn't be necessary -- no hw acceleration will be provided anyways.

> Your patch works as intended.
> 
> I take it there is no other way for me to contribute??

This is not the proper forum to discuss that. Come join us in #nouveau @ irc.freenode.net and we can see if there's overlap between your skillset/time commitment/etc, and things that would be helpful for nouveau. Or start a discussion at nouveau@lists.freedesktop.org if you dislike IRC.
Comment 35 Ronald 2014-01-18 07:07:17 UTC
(In reply to comment #34)

> > I get no more errors in dmesg and no more hangs.
> 
> Great! I've posted the patch as a series, hopefully it should be in mesa.git
> soonish.
> 

Cool.

> > For now, I disabled
> > hardware acceleration inside the player itself using the lef-click menu.
> 
> Hmmm... that shouldn't be necessary -- no hw acceleration will be provided
> anyways.

Well, it *does* work around the problem (!). It's a temporary substitute for your patch.

> > Your patch works as intended.
> > 
> > I take it there is no other way for me to contribute??
> 
> This is not the proper forum to discuss that. Come join us in #nouveau @
> irc.freenode.net and we can see if there's overlap between your
> skillset/time commitment/etc, and things that would be helpful for nouveau.
> Or start a discussion at nouveau@lists.freedesktop.org if you dislike IRC.

Okay.
Comment 36 Ilia Mirkin 2014-01-20 01:42:43 UTC
My patch series is upstream now, and the NPOT bit is tagged for stable, so 10.0.3 should have it, hopefully. Thanks for testing!


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.