a lvm global_filter related boot issue

JimmyZ

Member
Sep 6, 2019
4
1
23
41
I have a custom global_filter set in lvm.conf like this:
Code:
global_filter=["a|M4-CT064M4SSD2|", "r|.*|"]

Basically I have quite a lot of physical disks, and some of them were spun down most of the time, I don't want to accidentally wake them up by lvm, and white listing the only disk I have lvm on seems easier instead of black listing all the other disks. this global_filter works according to pvscan, it shows the only ssd I want.

But then it would throw me to the initramfs shell during boot like this:
Code:
Gave up waiting for root files system device. Common problems:
 - Boot args (cat /proc/cmdline)
     - Check rootdelay= (did the system wait long enough?)
 - Missing modules (cat /proc/modules; ls /dev)
ALERT! /dev/mapper/vg_m4-lv_debian_root does not exist. Dropping to a shell!
lvm vgchange -ay in the initramfs shell then it boots normally though.

Removing the global_filter then update-initramfs does fix this but I'd like to keep the filter on, any suggestions?

And I feel like this is a lvm bug not really specific to PVE, but since I encountered this on a PVE8 system, I feel like I should probably ask here.

BTW I installed PVE on debian so the lv name is not pve_root.
 
I changed the filter to:
Code:
global_filter=["r|WDC|", "r|TOSHIBA|", "r|/dev/zd.*|", "r|/dev/mapper/.*|"]
then it boots without issue, so this is a viable workaround. But I guess that's still a bug in lvm?
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!