Re: [PATCH 0/3] livepatch: add shadow variable API

From: Jiri Kosina
Date: Thu Jun 01 2017 - 16:05:29 EST


On Thu, 1 Jun 2017, Joe Lawrence wrote:

> This patchset is a simplified livepatch port of kpatch's "shadow"
> variable API [1]. The kpatch project has successfully employed such
> shadow variables to implement patches that have extended data structure
> elements. This API provides livepatch a means of associating new,
> shadow data fields with existing data structures.
>
> See the first patch for the implementation, the second for further
> documentation (API, conccurency notes, use-case code snippets) and the
> third patch for an update to the sample livepatch module using shadow
> variables.

Thanks a lot for initiating this.

The only issue I've spotted so far -- is there any reason, why the API
completely ignores task_struct->patch_state, and always returns the 'new'
value?

This basically offloads the responsibility for deciding between old/new to
each and every caller, and that feels much more error prone compared to
having this automatically done by klp_shadow_get().

Thanks,

--
Jiri Kosina
SUSE Labs