mkdumprd: reduce lvm2 memory under kdump
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@redhat.com> Acked-by: Dave Young <dyoung@redhat.com>
This commit is contained in:
parent
00ed76e7e2
commit
ae45e6f1bb
@ -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
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user