Re: [PATCH] lib/test_printf.c: call wait_for_random_bytes() before plain %p tests

From: Tobin C . Harding
Date: Tue May 22 2018 - 17:07:54 EST


On Tue, May 22, 2018 at 07:41:14PM +0200, Thierry Escande wrote:
> If the test_printf module is loaded before the crng is initialized, the
> plain 'p' tests will fail because the printed address will not be hashed
> and the buffer will contain '(ptrval)' instead.
> This patch adds a call to wait_for_random_bytes() before plain 'p' tests
> to make sure the crng is initialized.
>
> Signed-off-by: Thierry Escande <thierry.escande@xxxxxxxxxx>
> ---
> lib/test_printf.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/lib/test_printf.c b/lib/test_printf.c
> index 71ebfa43ad05..839be9385a8a 100644
> --- a/lib/test_printf.c
> +++ b/lib/test_printf.c
> @@ -260,6 +260,13 @@ plain(void)
> {
> int err;
>
> + /*
> + * Make sure crng is ready. Otherwise we get "(ptrval)" instead
> + * of a hashed address when printing '%p' in plain_hash() and
> + * plain_format().
> + */
> + wait_for_random_bytes();
> +
> err = plain_hash();
> if (err) {
> pr_warn("plain 'p' does not appear to be hashed\n");
> --
> 2.14.1

Not sure if I'm qualified for this but here goes

Acked-by: Tobin C. Harding <me@xxxxxxxx>

thanks,
Tobin.