On Sun, 2009-01-11 at 09:04 +1000, Dave Airlie wrote: > On Sat, Jan 10, 2009 at 7:58 PM, Richard Purdie <rpur...@linux.intel.com> > wrote: > > I have a question though, where in the i915 driver is > > master_priv->sarea_priv assigned a value? or master_priv->sarea for that > > matter? As far as I can tell those pointers are never assigned values? > > Is there a drm_getsarea() call missing? > > > > Perhaps my patch fixes things since sarea and sarea_priv are given a > > value? > > > > Does the attached patch work?
If its fixed to compile, it fixes the problem. I don't know if your making this against some other tree or it was just a typo so I've attached the fixed version that worked for me below. > Somehow this code was tested on DRI2 which needs no sarea, and we missed the > bit > to setup the DRI1 sarea, this patch should dtrt. Makes sense, thanks. [PATCH] drm/i915: setup sarea properly in master_priv If we are running DRI1 userspace, we really need to set the sarea up properly. Signed-off-by: Richard Purdie <rpur...@linux.intel.com> diff --git a/drivers/gpu/drm/i915/i915_dma.c b/drivers/gpu/drm/i915/i915_dma.c index 62a4bf7..868f574 100644 --- a/drivers/gpu/drm/i915/i915_dma.c +++ b/drivers/gpu/drm/i915/i915_dma.c @@ -177,6 +177,14 @@ static int i915_initialize(struct drm_device * dev, drm_i915_init_t * init) drm_i915_private_t *dev_priv = dev->dev_private; struct drm_i915_master_private *master_priv = dev->primary->master->driver_priv; + master_priv->sarea = drm_getsarea(dev); + if (master_priv->sarea) { + master_priv->sarea_priv = (drm_i915_sarea_t *) + ((u8 *)master_priv->sarea->handle + init->sarea_priv_offset); + } else { + DRM_DEBUG("sarea not found assuming DRI2 userspace\n"); + } + if (init->ring_size != 0) { if (dev_priv->ring.ring_obj != NULL) { i915_dma_cleanup(dev); ------------------------------------------------------------------------------ Check out the new SourceForge.net Marketplace. It is the best place to buy or sell services for just about anything Open Source. http://p.sf.net/sfu/Xq1LFB -- _______________________________________________ Dri-devel mailing list Dri-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/dri-devel