24 Jun, 2016

1 commit

  • As part of the Y2038 development, __getnstimeofday is not supposed to be
    used any more. It is now replaced with ktime_get_ns. The Jitter RNG uses
    the time stamp to measure the execution time of a given code path and
    tries to detect variations in the execution time. Therefore, the only
    requirement the Jitter RNG has, is a sufficient high resolution to
    detect these variations.

    The change was tested on x86 to show an identical behavior as RDTSC. The
    used test code simply measures the execution time of the heart of the
    RNG:

    jent_get_nstime(&time);
    jent_memaccess(ec, min);
    jent_fold_time(NULL, time, &folded, min);
    jent_get_nstime(&time2);
    return ((time2 - time));

    Signed-off-by: Stephan Mueller
    Acked-by: Arnd Bergmann
    Signed-off-by: Herbert Xu

    Stephan Mueller
     

14 Oct, 2015

1 commit


28 Jul, 2015

1 commit


25 Jun, 2015

1 commit

  • The core of the Jitter RNG is intended to be compiled with -O0. To
    ensure that the Jitter RNG can be compiled on all architectures,
    separate out the RNG core into a stand-alone C file that can be compiled
    with -O0 which does not depend on any kernel include file.

    As no kernel includes can be used in the C file implementing the core
    RNG, any dependencies on kernel code must be extracted.

    A second file provides the link to the kernel and the kernel crypto API
    that can be compiled with the regular compile options of the kernel.

    Signed-off-by: Stephan Mueller
    Signed-off-by: Herbert Xu

    Stephan Mueller