Re: GEM discussion questions
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
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
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
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
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
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
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
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