d9b9650a8296181b753621866fb84982829ce8f1
1 #! /bin/sh /usr/share/dpatch/dpatch-run
2 ##
3 ## DP: bts747093_lvm_segfault.dpatch by Jan Kundrát <jan.kundrat@cesnet.cz>
4 ## DP:
5 ## DP: lvm: Fix segfault when there are no logical volumes.
6 ## DP:
7 ## DP: Upstream bug report:
8 ## DP: https://github.com/collectd/collectd/pull/425
10 @DPATCH@
12 diff a/src/lvm.c b/src/lvm.c
13 --- a/src/lvm.c
14 +++ b/src/lvm.c
15 @@ -53,6 +53,11 @@ static int vg_read(vg_t vg, char const *vg_name)
16 lvm_submit (vg_name, "free", lvm_vg_get_free_size(vg));
18 lvs = lvm_vg_list_lvs(vg);
19 + if (!lvs) {
20 + /* no VGs are defined, which is not an error per se */
21 + return (0);
22 + }
23 +
24 dm_list_iterate_items(lvl, lvs) {
25 lvm_submit(vg_name, lvm_lv_get_name(lvl->lv), lvm_lv_get_size(lvl->lv));
26 }