[Nouveau] [PATCH] drm/ttm: Fix race condition in ttm_bo_delayed_delete

Francisco Jerez currojerez at riseup.net
Thu Jan 21 06:44:02 PST 2010


Luca Barbieri <luca at luca-barbieri.com> writes:

>> Nvidia cards have a synchronization primitive that could be used to
>> synchronize several FIFOs in hardware (AKA semaphores, see [1] for an
>> example).
>
> Does this operate wholly on the GPU on all nVidia cards?
>
> It seems that at least on some GPUs this will trigger "software
> methods" that are basically a way for the GPU to trigger an interrupt
> and stop the FIFO until the CPU handles the interrupt and restarts it.
>
Yes, it could be handled without software methods, Maarten (CC'ed) was
looking into this, IIRC.

> Also, is there a way on nVidia cards to get interrupts on fences, but
> only where the fence sequence number is higher than a dynamically set
> value? (so that one could sleep for fence X without getting an
> interrupt for every single fence before that)
>
> If not, it could possibly be hacked around by reading from a DMA
> object at the address of the fence sequence number and then resizing
> the DMA object so that addresses from a certain point on would trigger
> a protection fault interrupt.

I don't think you can safely modify a DMA object without stalling the
card completely, but i think you could use e.g. PGRAPH NOTIFY interrupts
and disable them by flipping a bit in PGRAPH when you stop caring about
them.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: not available
Url : http://lists.freedesktop.org/archives/nouveau/attachments/20100121/f01912d9/attachment.pgp 


More information about the Nouveau mailing list