diff options
| author | Ruslan Bilovol <rbilovol@cisco.com> | 2018-02-01 18:34:18 +0200 |
|---|---|---|
| committer | Armin Kuster <akuster808@gmail.com> | 2018-02-11 11:52:54 -0800 |
| commit | 6cb84a77bbf537651838bef88f84a55e239c2881 (patch) | |
| tree | f7400071525ed66e0a33ba0071eb10875a07901f /meta-oe/recipes-kernel/kpatch/kpatch.inc | |
| parent | f75e11225f5f424abfb672d09728c60c61cd801f (diff) | |
| download | meta-openembedded-6cb84a77bbf537651838bef88f84a55e239c2881.tar.gz | |
recipes-kernel: add kpatch dynamic kernel patching infrastructure
kpatch is a Linux dynamic kernel patching infrastructure
which allows you to patch a running kernel without
rebooting or restarting any processes
Currently it is enabled and tested on x86-64 systems,
although can be extended to PPC64 as well.
Signed-off-by: Ruslan Bilovol <rbilovol@cisco.com>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Diffstat (limited to 'meta-oe/recipes-kernel/kpatch/kpatch.inc')
| -rw-r--r-- | meta-oe/recipes-kernel/kpatch/kpatch.inc | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/meta-oe/recipes-kernel/kpatch/kpatch.inc b/meta-oe/recipes-kernel/kpatch/kpatch.inc new file mode 100644 index 0000000000..b1e73e9542 --- /dev/null +++ b/meta-oe/recipes-kernel/kpatch/kpatch.inc | |||
| @@ -0,0 +1,49 @@ | |||
| 1 | SUMMARY = "Linux dynamic kernel patching infrastructure" | ||
| 2 | DESCRIPTION = "kpatch is a Linux dynamic kernel patching infrastructure which allows you to patch a running kernel without rebooting or restarting any processes." | ||
| 3 | LICENSE = "GPLv2 & LGPLv2" | ||
| 4 | DEPENDS = "elfutils bash" | ||
| 5 | |||
| 6 | SRC_URI = "git://github.com/dynup/kpatch.git;protocol=https \ | ||
| 7 | file://0001-kpatch-build-add-cross-compilation-support.patch \ | ||
| 8 | file://0002-kpatch-build-allow-overriding-of-distro-name.patch \ | ||
| 9 | " | ||
| 10 | |||
| 11 | EXTRA_OEMAKE = " \ | ||
| 12 | PREFIX=${prefix} \ | ||
| 13 | BINDIR=${D}${bindir} \ | ||
| 14 | SBINDIR=${D}${sbindir} \ | ||
| 15 | LIBDIR=${D}${libdir} \ | ||
| 16 | MANDIR=${D}${mandir}/man1 \ | ||
| 17 | SYSTEMDDIR=${D}${systemd_system_unitdir} \ | ||
| 18 | DESTDIR=${D} \ | ||
| 19 | BUILDMOD=no \ | ||
| 20 | CC='${CC}' \ | ||
| 21 | " | ||
| 22 | |||
| 23 | S = "${WORKDIR}/git" | ||
| 24 | |||
| 25 | do_install () { | ||
| 26 | oe_runmake install | ||
| 27 | } | ||
| 28 | |||
| 29 | PACKAGES =+ "kpatch-build" | ||
| 30 | PROVIDES += "kpatch-build" | ||
| 31 | |||
| 32 | COMPATIBLE_HOST = "(x86_64).*-linux" | ||
| 33 | |||
| 34 | RDEPENDS_${PN} = "bash binutils" | ||
| 35 | RDEPENDS_kpatch-build = "bash glibc-utils" | ||
| 36 | |||
| 37 | FILES_${PN} = " \ | ||
| 38 | ${sbindir}/kpatch \ | ||
| 39 | ${systemd_system_unitdir}/kpatch.service \ | ||
| 40 | ${mandir}/man1/kpatch.1.gz \ | ||
| 41 | " | ||
| 42 | FILES_kpatch-build = " \ | ||
| 43 | ${bindir}/kpatch-build \ | ||
| 44 | ${libexecdir}/* \ | ||
| 45 | ${datadir}/kpatch \ | ||
| 46 | ${mandir}/man1/kpatch-build.1.gz \ | ||
| 47 | " | ||
| 48 | |||
| 49 | SYSTEMD_SERVICE_${PN} = "kpatch.service" | ||
