[Intel-gfx] [PATCH] drm/i915: Gracefully handle obj not bound to GGTT in is_pin_display
Mateo Lozano, Oscar
oscar.mateo at intel.com
Thu May 15 15:14:54 CEST 2014
> > But looking at the code a better way should be:
> > 1. Create new bo, wrap it in a kms fb.
> > 2. Slap busy load onto that bo, e.g. reapeatedly fill it with the blitter.
> > 3. Enable evil interruptor (igt_fork_signal_helper).
> > 4. Submit pageflip
> >
> > -> Boom since the set_cache_level will block, get interrupted and exit
> > early with -EINTR.
> >
> > Given sufficient overkill in 2. this should be 100% reliable to reproduce.
As soon as I execbuffer to the bo, it gets a vma for the GGTT vm:
vm = ctx->vm;
if (!USES_FULL_PPGTT(dev))
vm = &dev_priv->gtt.base;
...
/* Look up object handles */
ret = eb_lookup_vmas(eb, exec, args, vm, file);
if (ret)
goto err;
And then it becomes impossible to reproduce the problem :(
Is there any other trick to make set_cache_level fail?
-- Oscar
More information about the Intel-gfx
mailing list