Re: drm_exec changes for eviction

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Am 06.05.24 um 11:46 schrieb Thomas Hellström:
Hi Christian, Others.

In order to support exhaustive eviction there are some changes that I
think needs to be made to drm_exec:

1) Trylock support
(This is for ttm_bo_vm, ttm_buffer_object_init_reserved, and also for
the eviction path where I think we want to make a trylock pass before a
sleeping lock pass).

Not sure why we need this for ttm_bo_vm, but in general that sounds like the right approach to me as well.

In essence this means we can't leave any contending lock unlocked until
the next sleeping lock, but rather need to relock it on
drm_exec_retry_on_contention(), meaning that that macro also gets
passed and returns an error code to handle -EINTR.

Hui what? I can't really follow what you mean here.


2) Snapshot unlock
After successfully obtaining backing store, we want to unlock all
evicted objects. So snapshot the drm_exec state when eviction begins,
and unlock everything down to the snapshot after successful backing
store allocation. Essentially the snapshot contains the number of
locked objects and a pointer to the prelocked object.

Interesting idea, never though about that. Not sure if that makes the situation better or worse.

One goal of drm_exec was to be able to keep evicted BOs locked until the whole submission is completed and that obviously contradicts that.

Regards,
Christian.


Any concerns?
Thanks,
Thomas





[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux