Re: [Nouveau] [libdrm 01/13] nouveau: move more abi16-specific logic into abi16.c

2015-11-26 Thread Emil Velikov
Hi Ben, On 26 November 2015 at 07:13, Ben Skeggs wrote: > From: Ben Skeggs > > Signed-off-by: Ben Skeggs > --- > nouveau/abi16.c | 62 > ++- > nouveau/nouveau.c | 56

Re: [Nouveau] [mesa 7/9] nv50: fix g98+ vdec class allocation

2015-11-26 Thread Emil Velikov
On 26 November 2015 at 07:15, Ben Skeggs wrote: > +static const struct nouveau_mclass > +nv98_decoder_msvld[] = { > + { 0x88b1, -1 }, > + { 0x86b1, -1 }, > + { 0x85b1, -1 }, > + {} > +}; > + > +static const struct nouveau_mclass > +nv98_decoder_mspdec[] = { > + {

Re: [Nouveau] [libdrm 06/13] nouveau: introduce object to represent the kernel client

2015-11-26 Thread Emil Velikov
On 26 November 2015 at 07:14, Ben Skeggs wrote: > --- a/nouveau/nouveau.c > +++ b/nouveau/nouveau.c > +int > +nouveau_drm_new(int fd, struct nouveau_drm **pdrm) > +{ > + struct nouveau_drm *drm; > + drmVersionPtr ver; > + > +#ifdef DEBUG > +

Re: [Nouveau] [libdrm 07/13] nouveau: stack legacy nouveau_device on top of nouveau_drm

2015-11-26 Thread Emil Velikov
On 26 November 2015 at 07:14, Ben Skeggs wrote: > --- a/nouveau/nouveau.c > +++ b/nouveau/nouveau.c > + nvdev->base.lib_version = drm->lib_version; On top of last patch "do we need lib_version" there has been no ddx and mesa users that I can see. Do we want to carry keep

Re: [Nouveau] [libdrm 05/13] nouveau: add interfaces to query information about supported classes

2015-11-26 Thread Emil Velikov
On 26 November 2015 at 07:14, Ben Skeggs wrote: > From: Ben Skeggs > > This will expose functionality supported by newer kernel interfaces. > > Current userspace uses the chipset to determine which classes are likely > exposed, which generally works pretty

Re: [Nouveau] [libdrm 09/13] nouveau: import and install a selection of nvif headers from the kernel

2015-11-26 Thread Emil Velikov
On 26 November 2015 at 07:14, Ben Skeggs wrote: > From: Ben Skeggs > --- a/nouveau/Makefile.am > +++ b/nouveau/Makefile.am > @@ -14,9 +14,18 @@ libdrm_nouveau_la_LIBADD = ../libdrm.la @PTHREADSTUBS_LIBS@ > > libdrm_nouveau_la_SOURCES =

Re: [Nouveau] [libdrm 08/13] nouveau: make use of nouveau_drm::fd instead of nouveau_device::fd

2015-11-26 Thread Emil Velikov
On 26 November 2015 at 07:14, Ben Skeggs wrote: > From: Ben Skeggs > > The latter is deprecated, and will not be valid for newer clients. > Mention (or split) the removal of nouveau_object_find ? Afaics it has never been used in mesa + ddx. -Emil

[Nouveau] [libdrm v2 09/14] nouveau: make use of nouveau_drm::fd instead of nouveau_device::fd

2015-11-26 Thread Ben Skeggs
From: Ben Skeggs The latter is deprecated, and will not be valid for newer clients. v2. - split out nouveau_object_find removal Signed-off-by: Ben Skeggs --- nouveau/abi16.c | 32 +++- nouveau/nouveau.c | 32

[Nouveau] [libdrm v2 06/14] nouveau: add interfaces to query information about supported classes

2015-11-26 Thread Ben Skeggs
From: Ben Skeggs This will expose functionality supported by newer kernel interfaces. Current userspace uses the chipset to determine which classes are likely exposed, which generally works pretty well, but isn't as flexible as it could be. Unfortunately, the G98:GF100

[Nouveau] [libdrm v2 07/14] nouveau: introduce object to represent the kernel client

2015-11-26 Thread Ben Skeggs
From: Ben Skeggs Because NVIF intentionally lacks some of the paths necessary to be compatible with various mistakes we've made over the years, libdrm needs to know whether a client has been updated and that it's safe to make use of the new kernel interfaces. Clients still

[Nouveau] [libdrm v2 11/14] nouveau: add new interface to create a nouveau_device

2015-11-26 Thread Ben Skeggs
From: Ben Skeggs Signed-off-by: Ben Skeggs --- nouveau/nouveau-symbol-check | 1 + nouveau/nouveau.c| 133 --- nouveau/nouveau.h| 2 + 3 files changed, 89 insertions(+), 47 deletions(-)

[Nouveau] [libdrm v2 12/14] nouveau: add support for newer kernel interfaces

2015-11-26 Thread Ben Skeggs
From: Ben Skeggs v2. - leave client-provided pointer unmodified on sclass_get() failure Signed-off-by: Ben Skeggs --- nouveau/abi16.c | 3 +- nouveau/nouveau.c | 159 +++--- 2 files changed, 155

[Nouveau] [libdrm v2 13/14] nouveau: clean up nouveau.h, noting deprecated members/functions

2015-11-26 Thread Ben Skeggs
From: Ben Skeggs Signed-off-by: Ben Skeggs --- nouveau/nouveau.h | 230 +++--- 1 file changed, 115 insertions(+), 115 deletions(-) diff --git a/nouveau/nouveau.h b/nouveau/nouveau.h index f3cf8f5..e3f2813

[Nouveau] [mesa v2 2/9] nouveau: remove use of deprecated nouveau_device::fd

2015-11-26 Thread Ben Skeggs
From: Ben Skeggs Signed-off-by: Ben Skeggs --- src/gallium/drivers/nouveau/nouveau_screen.c| 1 + src/gallium/drivers/nouveau/nouveau_screen.h| 1 + src/gallium/winsys/nouveau/drm/nouveau_drm_winsys.c | 2 +- 3 files changed, 3

[Nouveau] [mesa v2 9/9] nouveau: enable use of new kernel interfaces

2015-11-26 Thread Ben Skeggs
From: Ben Skeggs Signed-off-by: Ben Skeggs --- src/gallium/winsys/nouveau/drm/nouveau_drm_winsys.c | 2 -- src/mesa/drivers/dri/nouveau/nouveau_screen.c | 2 -- 2 files changed, 4 deletions(-) diff --git

[Nouveau] [mesa v2 6/9] nouveau: remove use of deprecated nouveau_device_wrap()

2015-11-26 Thread Ben Skeggs
From: Ben Skeggs Switching to the newer libdrm entry-points tells libdrm that it's OK to make use of newer kernel interfaces. We want to be able to isolate any bugs to either the interfaces changes, or the use of NVIF itself. As such, this commit has a slight hack which

[Nouveau] [mesa v2 7/9] nv50: fix g98+ vdec class allocation

2015-11-26 Thread Ben Skeggs
From: Ben Skeggs The kernel previously exposed incorrect classes for some of the chipsets that this code supports. It no longer does, but the older object ioctls have compatibility to avoid breaking userspace. This needs to be fixed before switching over to the newer

[Nouveau] [mesa v2 4/9] nouveau: return nouveau_screen from hw-specific creation functions

2015-11-26 Thread Ben Skeggs
From: Ben Skeggs Kills off a void cast. Signed-off-by: Ben Skeggs --- src/gallium/drivers/nouveau/nouveau_winsys.h| 6 +++--- src/gallium/drivers/nouveau/nv30/nv30_screen.c | 4 ++-- src/gallium/drivers/nouveau/nv50/nv50_screen.c | 4

[Nouveau] [mesa v2 3/9] nouveau: remove use of deprecated nouveau_device::drm_version

2015-11-26 Thread Ben Skeggs
From: Ben Skeggs v2. update for libdrm nouveau_drm::lib_version removal Signed-off-by: Ben Skeggs --- src/gallium/drivers/nouveau/nv50/nv50_miptree.c | 3 ++- src/gallium/drivers/nouveau/nv50/nv50_screen.c | 4 ++--

[Nouveau] [libdrm v2 14/14] Bump version for release

2015-11-26 Thread Ben Skeggs
From: Ben Skeggs Signed-off-by: Ben Skeggs --- configure.ac | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index b929d36..7678572 100644 --- a/configure.ac +++ b/configure.ac @@ -20,7 +20,7 @@

[Nouveau] [mesa v2 1/9] nouveau: bump required libdrm version to 2.4.66

2015-11-26 Thread Ben Skeggs
From: Ben Skeggs Signed-off-by: Ben Skeggs --- configure.ac | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index 4016871..c02ee61 100644 --- a/configure.ac +++ b/configure.ac @@ -73,7 +73,7 @@

[Nouveau] [libdrm v2 10/14] nouveau: remove nouveau_object_find()

2015-11-26 Thread Ben Skeggs
From: Ben Skeggs No more internal users, and there's never been external users. Signed-off-by: Ben Skeggs --- nouveau/nouveau-symbol-check | 1 - nouveau/nouveau.c| 11 --- nouveau/nouveau.h| 1 - 3 files changed, 13

[Nouveau] [libdrm v2 05/14] nouveau: add interface to call an object's methods

2015-11-26 Thread Ben Skeggs
From: Ben Skeggs This will expose functionality supported by newer kernel interfaces, giving access to things such as ZBC controls, perfmon, etc. Signed-off-by: Ben Skeggs --- nouveau/nouveau-symbol-check | 1 + nouveau/nouveau.c| 7 +++

[Nouveau] [libdrm v2 08/14] nouveau: stack legacy nouveau_device on top of nouveau_drm

2015-11-26 Thread Ben Skeggs
From: Ben Skeggs Signed-off-by: Ben Skeggs --- nouveau/nouveau.c | 46 +- 1 file changed, 21 insertions(+), 25 deletions(-) diff --git a/nouveau/nouveau.c b/nouveau/nouveau.c index 2b16351..d129ae8 100644 ---

[Nouveau] [mesa v2 5/9] nouveau: fix screen creation failure paths

2015-11-26 Thread Ben Skeggs
From: Ben Skeggs The winsys layer would attempt to cleanup the nouveau_device if screen init failed, however, in most paths the pipe driver would have already destroyed it, resulting in accesses to freed memory etc. This commit fixes the problem by allowing the winsys to

Re: [Nouveau] [mesa 7/9] nv50: fix g98+ vdec class allocation

2015-11-26 Thread Ben Skeggs
On 11/27/2015 07:50 AM, Emil Velikov wrote: > On 26 November 2015 at 07:15, Ben Skeggs wrote: > >> +static const struct nouveau_mclass >> +nv98_decoder_msvld[] = { >> + { 0x88b1, -1 }, >> + { 0x86b1, -1 }, >> + { 0x85b1, -1 }, >> + {} >> +}; >> + >> +static const

[Nouveau] [libdrm v2 01/14] nouveau: import and install a selection of nvif headers from the kernel

2015-11-26 Thread Ben Skeggs
From: Ben Skeggs This commit also modifies the install path of the main libdrm_nouveau header to be under a nouveau/ subdirectory. Signed-off-by: Ben Skeggs --- include/drm/nouveau_drm.h| 1 + nouveau/Makefile.am | 11 +++-

[Nouveau] [libdrm v2 03/14] nouveau: move object functions up, to avoid future foward decls

2015-11-26 Thread Ben Skeggs
From: Ben Skeggs Signed-off-by: Ben Skeggs --- nouveau/nouveau.c | 112 +++--- 1 file changed, 56 insertions(+), 56 deletions(-) diff --git a/nouveau/nouveau.c b/nouveau/nouveau.c index 8a0be2f..8035c6a

[Nouveau] [libdrm v2 02/14] nouveau: move more abi16-specific logic into abi16.c

2015-11-26 Thread Ben Skeggs
From: Ben Skeggs v2. - add a comment about the (ab)use of nouveau_object::length - add a comment about abi16_object() return values Signed-off-by: Ben Skeggs --- nouveau/abi16.c | 65 ++-

[Nouveau] [libdrm v2 04/14] nouveau: make it possible to init object in pre-allocated memory

2015-11-26 Thread Ben Skeggs
From: Ben Skeggs Required for an upcoming patch, not exposed to library clients. Signed-off-by: Ben Skeggs --- nouveau/nouveau.c | 64 +-- 1 file changed, 48 insertions(+), 16 deletions(-) diff --git

[Nouveau] [Bug 93110] [NVE4] textureSize() and textureQueryLevels() uses a texture bound during the previous draw call

2015-11-26 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=93110 Józef Kucia changed: What|Removed |Added Status|NEW |RESOLVED

[Nouveau] [Bug 93110] [NVE4] textureSize() and textureQueryLevels() uses a texture bound during the previous draw call

2015-11-26 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=93110 Józef Kucia changed: What|Removed |Added Version|10.5|11.0 -- You are

Re: [Nouveau] NV50 compute support questions

2015-11-26 Thread Samuel Pitoiset
Well, if you remove that assert locally, all compute tests in src/gallium/tests/trivial/compute.c pass on GK106, except the atomic ones. I'm working on the fermi case btw. On 11/25/2015 03:43 PM, Hans de Goede wrote: Hi, On 20-11-15 17:07, Samuel Pitoiset wrote: On 11/20/2015 11:36 AM,

Re: [Nouveau] NV50 compute support questions

2015-11-26 Thread Hans de Goede
Hi, On 26-11-15 09:42, Samuel Pitoiset wrote: Well, if you remove that assert locally, all compute tests in src/gallium/tests/trivial/compute.c pass on GK106, except the atomic ones. Do you mean the: Assertion `pres->target != PIPE_BUFFER' failed. or the: Assertion

Re: [Nouveau] NV50 compute support questions

2015-11-26 Thread Samuel Pitoiset
On 11/26/2015 01:21 PM, Hans de Goede wrote: Hi, On 26-11-15 09:42, Samuel Pitoiset wrote: Well, if you remove that assert locally, all compute tests in src/gallium/tests/trivial/compute.c pass on GK106, except the atomic ones. Do you mean the: Assertion `pres->target != PIPE_BUFFER'

[Nouveau] [Bug 92991] Nouveau module loading regression in 4.4-rc1 on optimus system

2015-11-26 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=92991 --- Comment #13 from Karol Herbst --- (In reply to Oliver Neukum from comment #12) > (In reply to Ilia Mirkin from comment #9) > > > Those connector names look like they're from xf86-video-modesetting, not > >