Re: [PATCH 1/2] livepatch: Initialize shadow variables by init function safely

From: Miroslav Benes
Date: Wed Mar 21 2018 - 08:56:05 EST



> @@ -186,10 +198,13 @@ static void *__klp_shadow_get_or_alloc(void *obj, unsigned long id, void *data,
> * Return: the shadow variable data element, NULL on duplicate or
> * failure.
> */
> -void *klp_shadow_alloc(void *obj, unsigned long id, void *data,
> - size_t size, gfp_t gfp_flags)
> +void *klp_shadow_alloc(void *obj, unsigned long id,
> + size_t size, gfp_t gfp_flags,
> + klp_shadow_init_func_t init_func,
> + void *init_data)

The comment above the function should be also updated, because the
function's parameters changed.

> {
> - return __klp_shadow_get_or_alloc(obj, id, data, size, gfp_flags, true);
> + return __klp_shadow_get_or_alloc(obj, id, size, gfp_flags,
> + init_func, init_data, true);
> }
> EXPORT_SYMBOL_GPL(klp_shadow_alloc);
>
> @@ -212,10 +227,13 @@ EXPORT_SYMBOL_GPL(klp_shadow_alloc);
> *
> * Return: the shadow variable data element, NULL on failure.
> */
> -void *klp_shadow_get_or_alloc(void *obj, unsigned long id, void *data,
> - size_t size, gfp_t gfp_flags)
> +void *klp_shadow_get_or_alloc(void *obj, unsigned long id,
> + size_t size, gfp_t gfp_flags,
> + klp_shadow_init_func_t init_func,
> + void *init_data)

Ditto.

Thanks,
Miroslav