Re: [PATCH v4 04/38] lib: Add a simple prime number generator

Joonas Lahtinen
2016-12-22T09:52:45Z

On to, 2016-12-22 at 08:36 +0000, Chris Wilson wrote:
> Prime numbers are interesting for testing components that use multiplies
> and divides, such as testing DRM's struct drm_mm alignment computations.
>
> v2: Move to lib/, add selftest
> v3: Fix initial constants (exclude 0/1 from being primes)
> v4: More RCU markup to keep 0day/sparse happy
> v5: Fix RCU unwind on module exit, add to kselftests
> v6: Tidy computation of bitmap size
> v7: for_each_prime_number_from()
> v8: Compose small-primes using BIT() for easier verification
> v9: Move rcu dance entirely into callers.
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Lukas Wunner <lukas@wunner.de>

<SNIP>

> +static bool expand_to_next_prime(unsigned long x)
> +{
> + const struct primes *p;
> + struct primes *new;
> + unsigned long sz, y;
> +
> + /* Betrand's Theorem states:

"From Bertrand's postulate:"

> +  *  For all n > 1, there exists a prime p: n < p <= 2*n.

"n < p < 2*n"

> +  */
> + sz = 2 * x + 1;

And I'd also drop the + 1, not that it matters much.

Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>

Regards, Joonas
--
Joonas Lahtinen
Open Source Technology Center
Intel Corporation