> Your patch remove the consistency of caching attribute and make move btw
> non fixed area different than others move, while driver can already achieve
> so.

It is already different, because TTM does it by changing the page
attributes, as opposed to copying data.
Thus, it is useful to preserve the existing caching since that means
we aren't going to do any work for the move.

If instead the move is actually performed by copying (either memcpy or
unaccelerated) we don't care about the current caching.

The code should actually be:
cur_flags = ttm_bo_select_caching(man,
ttm_is_going_to_move_by_setting_page_caching_flags ? bo->mem.placement
: 0, cur_flags);

I wrote ttm_is_going_to_move_by_setting_page_caching_flags as
!(man->flags & TTM_MEMTYPE_FLAG_FIXED) &&
!(bdev->man[bo->mem.mem_type].flags & TTM_MEMTYPE_FLAG_FIXED);

If there is a better way to express that in TTM, we should use that instead.

This would fix all cases without requiring odd hacks in the drivers.

------------------------------------------------------------------------------
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
--
_______________________________________________
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to