static int
i915_gem_reloc_and_validate_object(struct drm_gem_object *obj,
struct drm_file *file_priv,
- struct drm_i915_gem_validate_entry *entry)
+ struct drm_i915_gem_exec_object *entry)
{
struct drm_device *dev = obj->dev;
- drm_i915_private_t *dev_priv = dev->dev_private;
struct drm_i915_gem_relocation_entry reloc;
struct drm_i915_gem_relocation_entry __user *relocs;
struct drm_i915_gem_object *obj_priv = obj->driver_private;
return -ENOMEM;
}
- entry->buffer_offset = obj_priv->gtt_offset;
+ entry->offset = obj_priv->gtt_offset;
- if (obj_priv->pin_count == 0) {
- /* Move our buffer to the head of the LRU. */
- if (list_empty(&obj_priv->gtt_lru_entry))
- list_add_tail(&obj_priv->gtt_lru_entry,
- &dev_priv->mm.gtt_lru);
- else
- list_move_tail(&obj_priv->gtt_lru_entry,
- &dev_priv->mm.gtt_lru);
- #if WATCH_LRU && 0
- i915_dump_lru(dev, __func__);
- #endif
- }
-
relocs = (struct drm_i915_gem_relocation_entry __user *)
(uintptr_t) entry->relocs_ptr;
/* Apply the relocations, using the GTT aperture to avoid cache
i915_gem_execbuffer(struct drm_device *dev, void *data,
struct drm_file *file_priv)
{
+ drm_i915_private_t *dev_priv = dev->dev_private;
struct drm_i915_gem_execbuffer *args = data;
- struct drm_i915_gem_validate_entry *validate_list;
+ struct drm_i915_gem_exec_object *validate_list;
struct drm_gem_object **object_list;
struct drm_gem_object *batch_obj;
int ret, i;