Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3ef7f228 authored by Chris Wilson's avatar Chris Wilson
Browse files

drm/i915: Bump object bookkeeping to u64 from size_t



Internally we allow for using more objects than a single process can
allocate, i.e. we allow for a 64bit GPU address space even on a 32bit
system. Using size_t may oveerflow.

Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: default avatarTvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20161018120251.25043-1-chris@chris-wilson.co.uk
parent 30d1b5fe
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -392,7 +392,7 @@ static int i915_gem_object_info(struct seq_file *m, void *data)
	if (ret)
		return ret;

	seq_printf(m, "%u objects, %zu bytes\n",
	seq_printf(m, "%u objects, %llu bytes\n",
		   dev_priv->mm.object_count,
		   dev_priv->mm.object_memory);

+1 −1
Original line number Diff line number Diff line
@@ -1389,7 +1389,7 @@ struct i915_gem_mm {

	/* accounting, useful for userland debugging */
	spinlock_t object_stat_lock;
	size_t object_memory;
	u64 object_memory;
	u32 object_count;
};

+2 −2
Original line number Diff line number Diff line
@@ -82,7 +82,7 @@ remove_mappable_node(struct drm_mm_node *node)

/* some bookkeeping */
static void i915_gem_info_add_obj(struct drm_i915_private *dev_priv,
				  size_t size)
				  u64 size)
{
	spin_lock(&dev_priv->mm.object_stat_lock);
	dev_priv->mm.object_count++;
@@ -91,7 +91,7 @@ static void i915_gem_info_add_obj(struct drm_i915_private *dev_priv,
}

static void i915_gem_info_remove_obj(struct drm_i915_private *dev_priv,
				     size_t size)
				     u64 size)
{
	spin_lock(&dev_priv->mm.object_stat_lock);
	dev_priv->mm.object_count--;