From: Dave Airlie <[email protected]>

When you read this debugfs file it's isn't guaranteed the count
will happen before the scan, but I think the intent is that it does.

printf argument evaluation order is undefined.

Cc: Christian Koenig <[email protected]>
Signed-off-by: Dave Airlie <[email protected]>
---
 drivers/gpu/drm/ttm/ttm_pool.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/ttm/ttm_pool.c b/drivers/gpu/drm/ttm/ttm_pool.c
index 4b16946d3248..14f5aee69ee5 100644
--- a/drivers/gpu/drm/ttm/ttm_pool.c
+++ b/drivers/gpu/drm/ttm/ttm_pool.c
@@ -1280,9 +1280,11 @@ static int ttm_pool_debugfs_shrink_show(struct seq_file 
*m, void *data)
                .gfp_mask = GFP_NOFS,
                .nr_to_scan = TTM_SHRINKER_BATCH,
        };
+       unsigned long count;
 
        fs_reclaim_acquire(GFP_KERNEL);
-       seq_printf(m, "%lu/%lu\n", ttm_pool_shrinker_count(mm_shrinker, &sc),
+       count = ttm_pool_shrinker_count(mm_shrinker, &sc),
+       seq_printf(m, "%lu/%lu\n", count,
                   ttm_pool_shrinker_scan(mm_shrinker, &sc));
        fs_reclaim_release(GFP_KERNEL);
 
-- 
2.49.0

Reply via email to