Re: GEM discussion questions

2008-05-22 Thread Thomas Hellström
Ian Romanick wrote:
 -BEGIN PGP SIGNED MESSAGE-
 Hash: SHA1

 Thomas Hellström wrote:
 | Ian Romanick wrote:
 | Jerome Glisse wrote:
 | | On Mon, 19 May 2008 12:04:16 -0700
 | | Ian Romanick [EMAIL PROTECTED] wrote:
 | |
 | | The GLX spec says, basically, that the results of changes to a 
 shared
 | | object in context A are guaranteed to be visible to context B when
 | | context B binds the object.  It leaves a lot of slack for 
 changes to
 | | show up earlier.  This is part of the reason that app developers 
 want
 | | NV_fence-like functionality.
 | |
 | | I quickly browsed glx spec and failed to spot where this topic 
 appear.
 | | And what does B binds mean in this context, i am thinking to this 
 use:
 | | A  B share obj
 | | A map
 | | B map
 | | A do some drawing
 |
 | Hmm,
 | According to the GL spec, section 2.9 a GL buffer object cannot be
 | mapped again while in the mapped state
 | Given that, am I wrong in assuming that it's legal for B map to fail
 | with an INVALID_OPERATION error, even if there's no intermediate 
 context
 | B bind?

 My recollection is that it was supposed to be possible, but the language
 seems to indicate otherwise.  It would be interesting to see what other
 implementations do in this case.

 | Also, what should be the correct action by the driver when an 
 attempt is
 | made to
 | dereference a mapped buffer object with a GL command?

 Generate INVALID_OPERATION.  This is in the GL_ARB_vertex_buffer_object
 spec:

 ~INVALID_OPERATION is generated if a buffer object that is currently
 ~mapped is used as a source of GL render data, or as a destination of
 ~GL query data.

OK,
 thanks Ian.

/Thomas





-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Bug 14221] [i965 64bit] ut2004 run abort on mesa 7_0_branch

2008-05-22 Thread bugzilla-daemon
http://bugs.freedesktop.org/show_bug.cgi?id=14221


Gordon Jin [EMAIL PROTECTED] changed:

   What|Removed |Added

 Blocks||16029
 AssignedTo|dri-|[EMAIL PROTECTED]
   |[EMAIL PROTECTED] |
Summary|[i965 64bit] ut2004 run |[i965 64bit] ut2004 run
   |abort on mesa 7.0.3 rc1 |abort on mesa 7_0_branch




-- 
Configure bugmail: http://bugs.freedesktop.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are on the CC list for the bug.
You are the assignee for the bug.

-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Bug 14966] [i915 mesa_7.0.3-rc2] segment fault with BASE_LEVEL set to 5 for MipMap

2008-05-22 Thread bugzilla-daemon
http://bugs.freedesktop.org/show_bug.cgi?id=14966


Gordon Jin [EMAIL PROTECTED] changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED




--- Comment #6 from Gordon Jin [EMAIL PROTECTED]  2008-05-22 05:26:18 PST ---
so marking it as fixed.


-- 
Configure bugmail: http://bugs.freedesktop.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.

-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


[PATCH] drm: Push BKL down into drivers

2008-05-22 Thread Alan Cox
This is a fairly simple change but affects all the drivers. The actual
lock is pushed down rather than eliminated. Hopefully it will then get
pushed down further. More importantly it helps us get rid of the old BKL
locked ioctl

Signed-off-by: Alan Cox [EMAIL PROTECTED]

diff --git a/drivers/char/drm/drmP.h b/drivers/char/drm/drmP.h
index 213b3ca..c545ccb 100644
--- a/drivers/char/drm/drmP.h
+++ b/drivers/char/drm/drmP.h
@@ -888,7 +888,7 @@ static inline int drm_mtrr_del(int handle, unsigned long 
offset,
/* Driver support (drm_drv.h) */
 extern int drm_init(struct drm_driver *driver);
 extern void drm_exit(struct drm_driver *driver);
-extern int drm_ioctl(struct inode *inode, struct file *filp,
+extern long drm_ioctl(struct file *filp,
 unsigned int cmd, unsigned long arg);
 extern long drm_compat_ioctl(struct file *filp,
 unsigned int cmd, unsigned long arg);
diff --git a/drivers/char/drm/drm_drv.c b/drivers/char/drm/drm_drv.c
index fc54140..a494869 100644
--- a/drivers/char/drm/drm_drv.c
+++ b/drivers/char/drm/drm_drv.c
@@ -435,7 +435,6 @@ static int drm_version(struct drm_device *dev, void *data,
 /**
  * Called whenever a process performs an ioctl on /dev/drm.
  *
- * \param inode device inode.
  * \param file_priv DRM file private.
  * \param cmd command.
  * \param arg user argument.
@@ -444,8 +443,7 @@ static int drm_version(struct drm_device *dev, void *data,
  * Looks up the ioctl function in the ::ioctls table, checking for root
  * previleges if so required, and dispatches to the respective function.
  */
-int drm_ioctl(struct inode *inode, struct file *filp,
- unsigned int cmd, unsigned long arg)
+long drm_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
 {
struct drm_file *file_priv = filp-private_data;
struct drm_device *dev = file_priv-minor-dev;
@@ -457,6 +455,8 @@ int drm_ioctl(struct inode *inode, struct file *filp,
 
atomic_inc(dev-ioctl_count);
atomic_inc(dev-counts[_DRM_STAT_IOCTLS]);
+
+   lock_kernel();
++file_priv-ioctl_count;
 
DRM_DEBUG(pid=%d, cmd=0x%02x, nr=0x%02x, dev 0x%lx, auth=%d\n,
@@ -519,6 +519,7 @@ int drm_ioctl(struct inode *inode, struct file *filp,
atomic_dec(dev-ioctl_count);
if (retcode)
DRM_DEBUG(ret = %x\n, retcode);
+   unlock_kernel();
return retcode;
 }
 
diff --git a/drivers/char/drm/i810_dma.c b/drivers/char/drm/i810_dma.c
index e5de8ea..b82e8ed 100644
--- a/drivers/char/drm/i810_dma.c
+++ b/drivers/char/drm/i810_dma.c
@@ -115,7 +115,7 @@ static int i810_mmap_buffers(struct file *filp, struct 
vm_area_struct *vma)
 static const struct file_operations i810_buffer_fops = {
.open = drm_open,
.release = drm_release,
-   .ioctl = drm_ioctl,
+   .unlocked_ioctl = drm_ioctl,
.mmap = i810_mmap_buffers,
.fasync = drm_fasync,
 };
diff --git a/drivers/char/drm/i810_drv.c b/drivers/char/drm/i810_drv.c
index fabb9a8..c1e0275 100644
--- a/drivers/char/drm/i810_drv.c
+++ b/drivers/char/drm/i810_drv.c
@@ -59,7 +59,7 @@ static struct drm_driver driver = {
 .owner = THIS_MODULE,
 .open = drm_open,
 .release = drm_release,
-.ioctl = drm_ioctl,
+.unlocked_ioctl = drm_ioctl,
 .mmap = drm_mmap,
 .poll = drm_poll,
 .fasync = drm_fasync,
diff --git a/drivers/char/drm/i830_dma.c b/drivers/char/drm/i830_dma.c
index a86ab30..8045e7a 100644
--- a/drivers/char/drm/i830_dma.c
+++ b/drivers/char/drm/i830_dma.c
@@ -117,7 +117,7 @@ static int i830_mmap_buffers(struct file *filp, struct 
vm_area_struct *vma)
 static const struct file_operations i830_buffer_fops = {
.open = drm_open,
.release = drm_release,
-   .ioctl = drm_ioctl,
+   .unlocked_ioctl = drm_ioctl,
.mmap = i830_mmap_buffers,
.fasync = drm_fasync,
 };
diff --git a/drivers/char/drm/i830_drv.c b/drivers/char/drm/i830_drv.c
index 389597e..44f990b 100644
--- a/drivers/char/drm/i830_drv.c
+++ b/drivers/char/drm/i830_drv.c
@@ -70,7 +70,7 @@ static struct drm_driver driver = {
 .owner = THIS_MODULE,
 .open = drm_open,
 .release = drm_release,
-.ioctl = drm_ioctl,
+.unlocked_ioctl = drm_ioctl,
 .mmap = drm_mmap,
 .poll = drm_poll,
 .fasync = drm_fasync,
diff --git a/drivers/char/drm/i915_drv.c b/drivers/char/drm/i915_drv.c
index bb8f1b2..a05f44b 100644
--- a/drivers/char/drm/i915_drv.c
+++ b/drivers/char/drm/i915_drv.c
@@ -556,7 +556,7 @@ static struct drm_driver driver = {
 .owner = THIS_MODULE,
 .open = drm_open,
 .release = drm_release,
-.ioctl = drm_ioctl,
+.unlocked_ioctl = drm_ioctl,
 .mmap = drm_mmap,
   

[Bug 16070] New: implementation error: i915_program_error: Exceeded max nr indirect texture lookups

2008-05-22 Thread bugzilla-daemon
http://bugs.freedesktop.org/show_bug.cgi?id=16070

   Summary: implementation error: i915_program_error: Exceeded max
nr indirect texture lookups
   Product: Mesa
   Version: unspecified
  Platform: x86 (IA32)
OS/Version: Linux (All)
Status: NEW
  Severity: normal
  Priority: medium
 Component: Drivers/DRI/i915
AssignedTo: dri-devel@lists.sourceforge.net
ReportedBy: [EMAIL PROTECTED]


I wanted to test which games work in WINE on Kubuntu 8.04.  One of the programs
I wanted to test was the demo for Rainbow Six Lockdown.  Running Lockdown.exe
from the terminal, I was able to get into the game, select a mission, and load
the mission, but just before it switched to the first person perspective to
start the mission, the game unexpectedly exited.

The last lines in the terminal were:

Mesa 7.0.3-rc2 implementation error: i915_program_error: Exceeded max nr
indirect texture lookups
Please report at bugzilla.freedesktop.org
DRM_I830_CMDBUFFER: -22

For the entire terminal printout, see the attachment error.txt


-- 
Configure bugmail: http://bugs.freedesktop.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.

-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Bug 16070] implementation error: i915_program_error: Exceeded max nr indirect texture lookups

2008-05-22 Thread bugzilla-daemon
http://bugs.freedesktop.org/show_bug.cgi?id=16070





--- Comment #1 from Andrew Riker [EMAIL PROTECTED]  2008-05-22 17:43:30 PST 
---
Created an attachment (id=16699)
 -- (http://bugs.freedesktop.org/attachment.cgi?id=16699)
terminal printout


-- 
Configure bugmail: http://bugs.freedesktop.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.

-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Bug 15850] [i915 i965] glean case blendFunc failed if compiled with USE_SSE_ASM option

2008-05-22 Thread bugzilla-daemon
http://bugs.freedesktop.org/show_bug.cgi?id=15850


Shuang He [EMAIL PROTECTED] changed:

   What|Removed |Added

 Status|RESOLVED|VERIFIED




--- Comment #6 from Shuang He [EMAIL PROTECTED]  2008-05-22 17:55:55 PST ---
verified, thanks


-- 
Configure bugmail: http://bugs.freedesktop.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are on the CC list for the bug.

-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


[Bug 15881] [i915 i965] glean case api2/fragProg1/texCombine/ vertProg1 failed with assertion failure

2008-05-22 Thread bugzilla-daemon
http://bugs.freedesktop.org/show_bug.cgi?id=15881


Shuang He [EMAIL PROTECTED] changed:

   What|Removed |Added

 Status|RESOLVED|VERIFIED




--- Comment #7 from Shuang He [EMAIL PROTECTED]  2008-05-22 17:58:01 PST ---
verified. thanks


-- 
Configure bugmail: http://bugs.freedesktop.org/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the assignee for the bug.

-
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel