On Tue, Sep 29, 2015 at 10:37:30AM +0300, Jani Nikula wrote:
On Tue, 29 Sep 2015, Rasmus Villemoes linux@rasmusvillemoes.dk wrote:
->stolen->start has type u64 aka unsigned long long; relying on the difference (effectively cast to int) for sorting is wrong.
It wouldn't be a problem in practice if the values compared are always within INT_MAX of each other (so that the difference is actually representable in an int), but 440fd5283a87 ("drm/mm: Support 4 GiB and larger ranges") strongly suggests that's not the case.
Signed-off-by: Rasmus Villemoes linux@rasmusvillemoes.dk
Reviewed-by: Jani Nikula jani.nikula@intel.com
drm_mm is the shared gpu memmory manager, but stolen itself can only go to about 1.5G currently. So safe, but I merged your patch anyway with a small note added for 4.4.
Thanks, Daniel
drivers/gpu/drm/i915/i915_debugfs.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c index e3ec9049081f..5207e681a987 100644 --- a/drivers/gpu/drm/i915/i915_debugfs.c +++ b/drivers/gpu/drm/i915/i915_debugfs.c @@ -258,7 +258,11 @@ static int obj_rank_by_stolen(void *priv, struct drm_i915_gem_object *b = container_of(B, struct drm_i915_gem_object, obj_exec_link);
- return a->stolen->start - b->stolen->start;
- if (a->stolen->start < b->stolen->start)
return -1;
- if (a->stolen->start > b->stolen->start)
return 1;
- return 0;
}
static int i915_gem_stolen_list_info(struct seq_file *m, void *data)
2.1.3
-- Jani Nikula, Intel Open Source Technology Center _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/intel-gfx