To summarize: There are two bugs in the current compat rule for NVMe: 1. /sys/bus/nvme is assumed which doesn't exist 2. ID_SERIAL is used which is set to something different in line 23 of the persistent storage rules. So not getting the actual ID_SERIAL.