[PATCH v2] random: vDSO: Avoid call to memset() when zeroing reserved in __cvdso_getrandom_data()

Andreas Schwab schwab at linux-m68k.org
Sat Sep 26 02:39:43 PDT 2026


On Sep 25 2026, Nathan Chancellor wrote:

> +#if __has_builtin(__builtin_memset_inline)
> +#define memset_inline(dst, value, size) __builtin_memset_inline(dst, value, size)
> +#elif IS_ENABLED(CONFIG_CC_HAS_OPT_INLINE_MEMSET)
> +#define memset_inline(dst, value, size) __builtin_memset(dst, value, size)
> +#else
> +static inline void *memset_inline(void *dst, int value, size_t size)
> +{
> +	char *d = dst;
> +
> +	while (size--)
> +		*d++ = value;
> +
> +	return d;
> +}
> +#endif
> +

memset actually returns the original pointer, not the incremented one.
Nothing uses the return value of memset_inline here, but it is
confusing.

-- 
Andreas Schwab, schwab at linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
"And now for something completely different."



More information about the linux-riscv mailing list