On 03/29/17 at 04:16pm, Xunlei Pang wrote:
We replace "reserved_memory = XXXX"(default value is 8192)
with
"reserved_memory = 1024" in /etc/lvm/lvm.conf used by "lvm2", it
can save 7MB peak memory consumption, so lower the possibility of
OOM under kdump.
For kdump, we don't have too many lvm targets, lvm2 locates in the
RAM(rootfs), so don't need that much memory, as discussed with lvm
people, they agreed that we use 1MB under kdump as long as there
are not that many lvm targets invloved.
We modify /etc/lvm/lvm.conf when "99kdumpbase" install() is executed,
because it is parsed after "90lvm" by dracut.
We add the code unconditionally with &>/dev/null to ignore errors, it
doesn't matter in case of "lvm" not included(i.e. there is no lvm.conf).
Signed-off-by: Xunlei Pang <xlpang(a)redhat.com>
---
dracut-module-setup.sh | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/dracut-module-setup.sh b/dracut-module-setup.sh
index 1f96bb8..5b2c942 100755
--- a/dracut-module-setup.sh
+++ b/dracut-module-setup.sh
@@ -743,4 +743,13 @@ install() {
# target. Ideally all this should be pushed into dracut iscsi module
# at some point of time.
kdump_check_iscsi_targets
+
+ # For the lvm type target under kdump, in /etc/lvm/lvm.conf we can
+ # safely replace "reserved_memory=XXXX"(default value is 8192) with
+ # "reserved_memory=1024" to lower memory pressure under kdump. We do
+ # it unconditionally here, if "/etc/lvm/lvm.conf" doesn't exist, it
+ # actually does nothing.
+ sed -i -e \
+ 's/\(^[[:space:]]*reserved_memory[[:space:]]*=\)[[:space:]]*[[:digit:]]*/\1
1024/' \
+ ${initdir}/etc/lvm/lvm.conf &>/dev/null
}
Thanks for the update, it looks better.
Acked-by: Dave Young <dyoung(a)redhat.com>
Thanks
Dave
> --
> 1.8.3.1
> _______________________________________________
> kexec mailing list -- kexec(a)lists.fedoraproject.org
> To unsubscribe send an email to kexec-leave(a)lists.fedoraproject.org