Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751276AbdFASZb (ORCPT ); Thu, 1 Jun 2017 14:25:31 -0400 Received: from mx1.redhat.com ([209.132.183.28]:33922 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751122AbdFASZa (ORCPT ); Thu, 1 Jun 2017 14:25:30 -0400 DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 92DA583F46 Authentication-Results: ext-mx03.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx03.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=joe.lawrence@redhat.com DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.redhat.com 92DA583F46 From: Joe Lawrence To: live-patching@vger.kernel.org, linux-kernel@vger.kernel.org Cc: Josh Poimboeuf , Jessica Yu , Jiri Kosina , Miroslav Benes , Petr Mladek Subject: [PATCH 0/3] livepatch: add shadow variable API Date: Thu, 1 Jun 2017 14:25:23 -0400 Message-Id: <1496341526-19061-1-git-send-email-joe.lawrence@redhat.com> X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.27]); Thu, 01 Jun 2017 18:25:29 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1245 Lines: 29 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. [1] https://github.com/dynup/kpatch/blob/master/kmod/core/shadow.c Joe Lawrence (3): livepatch: introduce shadow variable API livepatch: add shadow variable documentation livepatch: add shadow variable sample program Documentation/livepatch/shadow-vars.txt | 175 ++++++++++++++++++++++++++++++++ include/linux/livepatch.h | 4 + kernel/livepatch/Makefile | 2 +- kernel/livepatch/shadow.c | 115 +++++++++++++++++++++ samples/livepatch/livepatch-sample.c | 39 ++++++- 5 files changed, 333 insertions(+), 2 deletions(-) create mode 100644 Documentation/livepatch/shadow-vars.txt create mode 100644 kernel/livepatch/shadow.c -- 1.8.3.1