From d2c4c4f8a798506ee88d0412ee1ab7cae5f394e5 Mon Sep 17 00:00:00 2001 From: Jan Malanik Date: Tue, 21 Nov 2017 11:05:07 -0800 Subject: Bugfix in role enable_hugepages_on_boot Make role idempotent. Current regex doesn't match for: linux /boot/vmlinuz-4.10.0-30-generic root=/dev/nvme0n1p1 ro vga=788 text Change-Id: If5eb20fce4ddc35bb109c00eb7565853b3763950 Signed-off-by: Jan Malanik Signed-off-by: Malanik Jan --- .../tasks/manual_modify_grub.yml | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) (limited to 'ansible/roles/enable_hugepages_on_boot/tasks/manual_modify_grub.yml') diff --git a/ansible/roles/enable_hugepages_on_boot/tasks/manual_modify_grub.yml b/ansible/roles/enable_hugepages_on_boot/tasks/manual_modify_grub.yml index cac10e80e..6fa0c1d25 100644 --- a/ansible/roles/enable_hugepages_on_boot/tasks/manual_modify_grub.yml +++ b/ansible/roles/enable_hugepages_on_boot/tasks/manual_modify_grub.yml @@ -20,16 +20,17 @@ recurse: yes register: grub_files +- name: check if hugepages are already enabled + command: "grep -o 'default_hugepagesz=' {{ item.path }}" + register: hugepage_enabled + ignore_errors: True + with_items: "{{ grub_files.files }}" -- name: added hugepages to grub manually because we can't run update-grub in chroot +- name: add hugepages to grub manually because we can't run update-grub in chroot replace: dest: "{{ item.path }}" - # console= should end the line - regexp: '(linux\s+/boot/vmlinuz.*console=\S+$)' - # default_hugepagesz=1G hugepagesz=1G hugepages=8 + regexp: '(linux\s+/boot/vmlinuz.*$)' replace: '\1 default_hugepagesz={{ huge_pagesize_short[huge_pagesize_mb] }} hugepagesz={{ huge_pagesize_short[huge_pagesize_mb] }} hugepages={{ num_hugepages }}' with_items: "{{ grub_files.files }}" - - - - + # we suppose consistent /boot/grub/grub.cfg files + when: hugepage_enabled['results'][0].stdout == "" -- cgit 1.2.3-korg