Lines Matching full:object
70 * A gem object is embedded both in a struct ttm_buffer_object :/ and in i915_gem_object_init()
101 * __i915_gem_object_fini - Clean up a GEM object initialization
102 * @obj: The gem object to cleanup
104 * This function cleans up gem object fields that are set up by
107 * clean up the gem object in separate steps.
117 * i915_gem_object_set_cache_coherency - Mark up the object's coherency levels
156 * kernel, as per the given object cache_level. This is troublesome in i915_gem_object_can_bypass_llc()
158 * skipped if the kernel thinks the object is coherent with the GPU. As in i915_gem_object_can_bypass_llc()
261 * __i915_gem_object_pages_fini - Clean up pages use of a gem object
262 * @obj: The gem object to clean up
264 * This function cleans up usage of the object mm.pages member. It
265 * is intended for backends that need to clean up a gem object in
266 * separate steps and needs to be called when the object is idle before
267 * the object's backing memory is freed.
367 * Before we free the object, make sure any pure RCU-only in i915_gem_free_object()
376 * object from the GPU before releasing resources back to the in i915_gem_free_object()
379 * kthread. We use the RCU callback rather than move the freed object in i915_gem_free_object()
448 * i915_gem_object_read_from_page - read data from the page of a GEM object
449 * @obj: GEM object to read from
450 * @offset: offset within the object
478 * i915_gem_object_evictable - Whether object is likely evictable after unbind.
479 * @obj: The object to check
481 * This function checks whether the object is likely unvictable after unbind.
482 * If the object is not locked when checking, the result is only advisory.
483 * If the object is locked when checking, and the function returns true,
485 * unpinning and unbinding is currently possible, the object can actually
488 * Return: true if the object may be evictable. False otherwise.
514 * i915_gem_object_migratable - Whether the object is migratable out of the
516 * @obj: Pointer to the object.
518 * Return: Whether the object is allowed to be resident in other
532 * i915_gem_object_has_struct_page - Whether the object is page-backed
533 * @obj: The object to query.
535 * This function should only be called while the object is locked or pinned,
551 * i915_gem_object_has_iomem - Whether the object is iomem-backed
552 * @obj: The object to query.
554 * This function should only be called while the object is locked or pinned,
570 * i915_gem_object_can_migrate - Whether an object likely can be migrated
572 * @obj: The object to migrate
575 * Check whether the object backend supports migration to the
628 * i915_gem_object_migrate - Migrate an object to the desired region id
629 * @obj: The object to migrate.
631 * not be successful in evicting other objects to make room for this object.
634 * Attempt to migrate the object to the desired memory region. The
635 * object backend must support migration and the object may not be
636 * pinned, (explicitly pinned pages or pinned vmas). The object must
638 * On successful completion, the object will have pages pointing to
650 * -EBUSY if the object is pinned.
660 * __i915_gem_object_migrate - Migrate an object to the desired region id, with
662 * @obj: The object to migrate.
664 * not be successful in evicting other objects to make room for this object.
666 * @flags: The object flags. Normally just obj->flags.
668 * Attempt to migrate the object to the desired memory region. The
669 * object backend must support migration and the object may not be
670 * pinned, (explicitly pinned pages or pinned vmas). The object must
672 * On successful completion, the object will have pages pointing to
684 * -EBUSY if the object is pinned.
714 * i915_gem_object_placement_possible - Check whether the object can be
716 * @obj: Pointer to the object
719 * Return: True if the object can be placed in @type. False otherwise.
748 * i915_gem_object_needs_ccs_pages - Check whether the object requires extra
750 * flat-CCS aux state when the object is moved between local-memory and
752 * @obj: Pointer to the object
754 * Return: True if the object needs extra ccs pages. False otherwise.
802 * i915_gem_object_get_moving_fence - Get the object's moving fence if any
803 * @obj: The object whose moving fence to get.
807 * pending on the object that needs to be waited on before setting up
808 * any GPU- or CPU PTEs to the object's pages.
820 * i915_gem_object_wait_moving_fence - Wait for the object's moving fence if any
821 * @obj: The object whose moving fence to wait for.
825 * object and put.
849 * i915_gem_object_has_unknown_state - Return true if the object backing pages are
854 * (in particular the fence for moving/clearing the object).