[PATCHv2] hw_random: add driver for atmel true hardware random number generator

Peter Korsgaard jacmet at sunsite.dk
Thu Oct 6 16:44:32 EDT 2011


>>>>> "Baruch" == Baruch Siach <baruch at tkos.co.il> writes:

Hi,

 >> +static int atmel_trng_read(struct hwrng *rng, void *buf, size_t max,
 >> +			   bool wait)
 >> +{
 >> +	struct atmel_trng *trng = container_of(rng, struct atmel_trng, rng);
 >> +	u32 *data = buf;
 >> +
 >> +	/* data ready? */
 >> +	if (readl(trng->base + TRNG_ODATA) & 1) {
 >> +		*data = readl(trng->base + TRNG_ODATA);
 >> +		return 4;

 Baruch> Shouldn't you check for max >= 4 before writing to *buf?

Conceptually, yes. The other hw_random drivers don't seem to do it
though, and the buffer size is guaranteed to be atleast 32 bytes, but I
can stick a '&& max >= 4' in the conditional if you prefer.

-- 
Bye, Peter Korsgaard



More information about the linux-arm-kernel mailing list