Bug 1476273

Summary: grubby removes wrong parameters when using --remove-args=rd.lvm.lv=vg/lv
Product: Red Hat Enterprise Linux 7 Reporter: Jesús Serrano Sánchez-Toscano <jserrano>
Component: grubbyAssignee: Peter Jones <pjones>
Status: CLOSED ERRATA QA Contact: Release Test Team <release-test-team-automation>
Severity: high Docs Contact:
Priority: medium    
Version: 7.6CC: aruizrui, fmartine, herrold, jakubr, jomurphy, jserrano, jstodola, pjones, qcai, qguo
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: grubby-8.28-26.el7 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-08-06 13:07:10 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1629054    

Description Jesús Serrano Sánchez-Toscano 2017-07-28 13:27:08 UTC
Description of problem:
When using grubby to remove a specific LVM parameter (rd.lvm.lv) from the file /etc/grub2.cfg, it removes an incorrect one. Even if a non-existing combination of VG/LV is given to the argument "--remove-args=rd.lvm.lv=vg/lv", it removes a parameter of type "rd.lvm.lv" instead of giving a warning and not modifying the /etc/grub2.cfg.

Version-Release number of selected component (if applicable):
grubby-8.28-21.el7_3.x86_64

How reproducible:
Always

Steps to Reproduce:
1. Check the occurrences of the parameter 'rd.lvm.lv' from the /etc/grub2.cfg file:

[root@fvm-rhel-7-3-35 ~]# egrep -o 'rd.lvm.lv=\S+' /etc/grub2.cfg | sort -u
rd.lvm.lv=r7vg/root_lv
rd.lvm.lv=r7vg/swap_lv

2. Use grubby to remove the parameter 'rd.lvm.lv' which references to the swap LV:

[root@fvm-rhel-7-3-35 ~]# grubby --update-kernel=ALL --remove-args=rd.lvm.lv=r7vg/swap_lv

3. Check the result of what grubby has deleted:

[root@fvm-rhel-7-3-35 ~]# egrep -o 'rd.lvm.lv=\S+' /etc/grub2.cfg | sort -u
rd.lvm.lv=r7vg/swap_lv


Actual results:
It deletes a wrong parameter 'rd.lvm.lv' from the kernel boot line in the file /etc/grub2.cfg

Expected results:
Grubby should delete only the parameter indicated with the option "--remove-args=vg/lv" or give a warning if it doesn't find it in any of the kernel boot lines from the file /etc/grub2.cfg.

Additional info:
N/A

Comment 9 Qian Cai 2018-09-17 13:31:54 UTC
*** Bug 1629053 has been marked as a duplicate of this bug. ***

Comment 15 errata-xmlrpc 2019-08-06 13:07:10 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2019:2227