Uploaded image for project: 'RHEL'
  1. RHEL
  2. RHEL-132671

when key in lvmlocal doesn't match key on devices, 'vgchange --persist stop' should either fail or mention the mismatch

Linking RHIVOS CVEs to...Migration: Automation ...SWIFT: POC ConversionSync from "Extern...XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Undefined Undefined
    • None
    • rhel-10.2
    • lvm2
    • None
    • None
    • None
    • rhel-storage-lvm
    • None
    • False
    • False
    • Hide

      None

      Show
      None
    • None
    • None
    • None
    • None
    • Unspecified
    • Unspecified
    • Unspecified
    • x86_64
    • None

      A '-persist start' will fail if the keys are mismatched, since the device can only hold one key, however a '-persist stop' will succeed and even state 'lvmpersist: stopped VG with key 0xgivenkey' even though that's not what happened.

      Sure, LVM (like pvremove) has a history of success on no-ops or when deleting things that dont need to be deleted, but I think that after a 'vgchange --persist stop' the user expects no keys to be found on the device(s) afterwards.

      kernel-6.12.0-157.el10    BUILT: Thu Nov 13 01:02:26 PM CET 2025
      lvm2-2.03.36-1.el10    BUILT: Sat Oct 25 04:42:32 AM CEST 2025
      lvm2-libs-2.03.36-1.el10    BUILT: Sat Oct 25 04:42:32 AM CEST 2025
      lvm2-dbusd-2.03.36-1.el10    BUILT: Sat Oct 25 04:42:40 AM CEST 2025
       
       
      [root@virt-503 ~]#  grep key /etc/lvm/lvmlocal.conf
              # Configuration option local/pr_key.
              # The local persistent reservation key in hexadecimal.
              # 0x prefix. If pr_key is not set, host_id will be used to create a key.
              pr_key = "0xf42729a5035d8663"   # edited by QA Mon Dec  1 21:13:14 2025
      
      # Not the key listed above, so either a different machine's key or some kind of mismatch that needs to be addressed. 
      [root@virt-503 ~]# lvmpersist read-keys --vg persist_VG
      Device /dev/sdd: registered keys: 0x49ae5844b8d124c4
      Device /dev/sda: registered keys: 0x49ae5844b8d124c4
      Device /dev/sdb: registered keys: 0x49ae5844b8d124c4
      Device /dev/sde: registered keys: 0x49ae5844b8d124c4
      Device /dev/sdc: registered keys: 0x49ae5844b8d124c4
       
      [root@virt-503 ~]# vgchange --persist stop persist_VG
        lvmpersist: sg_persist unregister error on /dev/sda
        lvmpersist: sg_persist unregister error on /dev/sdb
        lvmpersist: sg_persist unregister error on /dev/sdc
        lvmpersist: sg_persist unregister error on /dev/sdd
        lvmpersist: sg_persist unregister error on /dev/sde
        lvmpersist: stopped persist_VG with key 0xf42729a5035d8663.
      [root@virt-503 ~]# echo $?
      0
       
      [root@virt-503 ~]# lvmpersist read-keys --vg persist_VG
      Device /dev/sdd: registered keys: 0x49ae5844b8d124c4
      Device /dev/sda: registered keys: 0x49ae5844b8d124c4
      Device /dev/sdb: registered keys: 0x49ae5844b8d124c4
      Device /dev/sde: registered keys: 0x49ae5844b8d124c4
      Device /dev/sdc: registered keys: 0x49ae5844b8d124c4
       
       [root@virt-503 ~]#  vgchange --persist start persist_VG
        persistent reservation is started by another key (0x49ae5844b8d124c4)
      [root@virt-503 ~]# echo $?
      5
      

              lvm-team lvm-team
              cmarthal@redhat.com Corey Marthaler
              lvm-team lvm-team
              Cluster QE Cluster QE
              Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

                Created:
                Updated: