aboutsummaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-support
diff options
context:
space:
mode:
authorLi Zhou <li.zhou@windriver.com>2015-05-26 10:59:23 +0800
committerMartin Jansa <Martin.Jansa@gmail.com>2015-05-28 10:35:16 +0200
commitf7f2657dac50d9cf80411cf05c35fb76219a4044 (patch)
treeb30d0f3f9f53ef96215be4b54a7ad41a1827e604 /meta-oe/recipes-support
parent47ca7a840302a6b4c59c6b1689559de7bdbf9c6b (diff)
downloadmeta-openembedded-contrib-f7f2657dac50d9cf80411cf05c35fb76219a4044.tar.gz
lvm2: fix segfault for snapshot
Backport <commit c46d4a745dc8c5cb4cfc0c94863e555387e9af75> from lvm2 upstream <https://git.fedorahosted.org/git/lvm2.git> to solve issue: vgchange segfault in lv_is_merging_cow function. Signed-off-by: Li Zhou <li.zhou@windriver.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Diffstat (limited to 'meta-oe/recipes-support')
-rw-r--r--meta-oe/recipes-support/lvm2/lvm2.inc3
-rw-r--r--meta-oe/recipes-support/lvm2/lvm2/0001-snapshot-check-snapshot-exists.patch29
2 files changed, 31 insertions, 1 deletions
diff --git a/meta-oe/recipes-support/lvm2/lvm2.inc b/meta-oe/recipes-support/lvm2/lvm2.inc
index 42f6e3a43e..e116629f89 100644
--- a/meta-oe/recipes-support/lvm2/lvm2.inc
+++ b/meta-oe/recipes-support/lvm2/lvm2.inc
@@ -11,7 +11,8 @@ S = "${WORKDIR}/LVM2.${PV}"
SRC_URI = "ftp://sources.redhat.com/pub/lvm2/old/LVM2.${PV}.tgz \
file://0001-Replace-CPPFunction-with-rl_completion_func_t.patch \
file://mlock-ignore-vectors-gate_vma.patch \
- file://lvm.conf"
+ file://lvm.conf \
+ file://0001-snapshot-check-snapshot-exists.patch"
PACKAGECONFIG ??= "readline"
PACKAGECONFIG[readline] = "--enable-readline,--disable-readline,readline"
diff --git a/meta-oe/recipes-support/lvm2/lvm2/0001-snapshot-check-snapshot-exists.patch b/meta-oe/recipes-support/lvm2/lvm2/0001-snapshot-check-snapshot-exists.patch
new file mode 100644
index 0000000000..8f0da796dd
--- /dev/null
+++ b/meta-oe/recipes-support/lvm2/lvm2/0001-snapshot-check-snapshot-exists.patch
@@ -0,0 +1,29 @@
+From c46d4a745dc8c5cb4cfc0c94863e555387e9af75 Mon Sep 17 00:00:00 2001
+From: Zdenek Kabelac <zkabelac@redhat.com>
+Date: Mon, 16 Jun 2014 12:41:30 +0200
+Subject: [PATCH] snapshot: check snapshot exists
+
+Return 0 if the LV is not even snapshot.
+
+Upstream-Status: backport
+Adapt the patch for backporting to an older version.
+Signed-off-by: Li Zhou <li.zhou@windriver.com>
+---
+ lib/metadata/snapshot_manip.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+Index: LVM2.2.02.97/lib/metadata/snapshot_manip.c
+===================================================================
+--- LVM2.2.02.97.orig/lib/metadata/snapshot_manip.c
++++ LVM2.2.02.97/lib/metadata/snapshot_manip.c
+@@ -68,8 +68,9 @@ struct lv_segment *find_merging_cow(cons
+
+ int lv_is_merging_cow(const struct logical_volume *snapshot)
+ {
++ struct lv_segment *snap_seg = find_cow(snapshot);
+ /* checks lv_segment's status to see if cow is merging */
+- return (find_cow(snapshot)->status & MERGING) ? 1 : 0;
++ return (snap_seg && (snap_seg->status & MERGING)) ? 1 : 0;
+ }
+
+ /* Given a cow LV, return the snapshot lv_segment that uses it */