Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1577443 > unrolled thread

DRM range manager selftest run time

Started byGeert Uytterhoeven <geert@linux-m68k.org>
First post2017-02-09 11:00 +0100
Last post2017-02-09 13:30 +0100
Articles 2 — 2 participants

Back to article view | Back to linux.kernel


Contents

  DRM range manager selftest run time Geert Uytterhoeven <geert@linux-m68k.org> - 2017-02-09 11:00 +0100
    Re: DRM range manager selftest run time Chris Wilson <chris@chris-wilson.co.uk> - 2017-02-09 13:30 +0100

#1577443 — DRM range manager selftest run time

FromGeert Uytterhoeven <geert@linux-m68k.org>
Date2017-02-09 11:00 +0100
SubjectDRM range manager selftest run time
Message-ID<t8TGa-4xj-19@gated-at.bofh.it>
Hi Chris, Dave,

Recently, I started seeing ca. 2 minute delays during boot-up on Renesas
R-Car Gen2 boards.

It turned out the DRM range manager selftests started taking quite some time.
With debug output, I get:

[    2.310472] drm_mm: Testing DRM range manger (struct drm_mm), with
random_seed=0x637f8ba8 max_iterations=8192 max_prime=128
[    2.321625] drm_mm: drm: Running sanitycheck
[    2.325905] drm_mm: igt_sanitycheck - ok!
[    2.329915] drm_mm: drm: Running init
[    2.333590] drm_mm: drm: Running debug
[    2.337341] drm_mm: drm: Running reserve
[    2.862878] drm_mm: drm: Running insert
[   49.205174] drm_mm: drm: Running replace
[   95.570840] drm_mm: drm: Running insert_range
[   98.971590] drm_mm: drm: Running align
[   98.975614] drm_mm: drm: Running align32
[   98.979601] drm_mm: drm: Running align64
[   98.983652] drm_mm: drm: Running evict
[  100.321925] drm_mm: drm: Running evict_range
[  101.226411] drm_mm: drm: Running bottomup
[  101.316911] drm_mm: drm: Running topdown
[  101.404385] drm_mm: drm: Running color
[  103.889639] drm_mm: drm: Running color_evict
[  107.318608] drm_mm: drm: Running color_evict_range
[  110.485926] drm_mm: run_selftests: Completed

Perhaps some tests can be simplified, to reduce run time?

Alternatviely, the pr_debug() calls in drivers/gpu/drm/selftests/drm_selftest.c
could be turned into pr_info() calls (cfr. the output above), to give a cue?

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds

[toc] | [next] | [standalone]


#1577528

FromChris Wilson <chris@chris-wilson.co.uk>
Date2017-02-09 13:30 +0100
Message-ID<t8W1k-66e-19@gated-at.bofh.it>
In reply to#1577443
On Thu, Feb 09, 2017 at 10:58:38AM +0100, Geert Uytterhoeven wrote:
> Hi Chris, Dave,
> 
> Recently, I started seeing ca. 2 minute delays during boot-up on Renesas
> R-Car Gen2 boards.
> 
> It turned out the DRM range manager selftests started taking quite some time.
> With debug output, I get:
> 
> [    2.310472] drm_mm: Testing DRM range manger (struct drm_mm), with
> random_seed=0x637f8ba8 max_iterations=8192 max_prime=128
> [    2.321625] drm_mm: drm: Running sanitycheck
> [    2.325905] drm_mm: igt_sanitycheck - ok!
> [    2.329915] drm_mm: drm: Running init
> [    2.333590] drm_mm: drm: Running debug
> [    2.337341] drm_mm: drm: Running reserve
> [    2.862878] drm_mm: drm: Running insert
> [   49.205174] drm_mm: drm: Running replace
> [   95.570840] drm_mm: drm: Running insert_range
> [   98.971590] drm_mm: drm: Running align
> [   98.975614] drm_mm: drm: Running align32
> [   98.979601] drm_mm: drm: Running align64
> [   98.983652] drm_mm: drm: Running evict
> [  100.321925] drm_mm: drm: Running evict_range
> [  101.226411] drm_mm: drm: Running bottomup
> [  101.316911] drm_mm: drm: Running topdown
> [  101.404385] drm_mm: drm: Running color
> [  103.889639] drm_mm: drm: Running color_evict
> [  107.318608] drm_mm: drm: Running color_evict_range
> [  110.485926] drm_mm: run_selftests: Completed
> 
> Perhaps some tests can be simplified, to reduce run time?

Don't build test-drm_mm as a builtin? Or set a limit to the number of
tests to run, e.g. test-drm_mm.max_iterations=16 test-drm_mm.max_primes=16.
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web