s390/ipl: Fix incorrect initialization of nvme dump block
authorAlexander Egorenkov <egorenar@linux.ibm.com>
Fri, 10 May 2024 10:41:26 +0000 (12:41 +0200)
committerAlexander Gordeev <agordeev@linux.ibm.com>
Tue, 14 May 2024 18:21:55 +0000 (20:21 +0200)
Initialize the correct fields of the nvme dump block.
This bug had not been detected before because first, the fcp and nvme fields
of struct ipl_parameter_block are part of the same union and, therefore,
overlap in memory and second, they are identical in structure and size.

Fixes: d70e38cb1dee ("s390: nvme dump support")
Reviewed-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Alexander Egorenkov <egorenar@linux.ibm.com>
Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
arch/s390/kernel/ipl.c

index 73d09cd4c6b00ad964791f0eed06ca7dab6c1984..2f004dfd6131617021ab4daee323d658dff2b450 100644 (file)
@@ -1862,9 +1862,9 @@ static int __init dump_nvme_init(void)
        }
        dump_block_nvme->hdr.len = IPL_BP_NVME_LEN;
        dump_block_nvme->hdr.version = IPL_PARM_BLOCK_VERSION;
-       dump_block_nvme->fcp.len = IPL_BP0_NVME_LEN;
-       dump_block_nvme->fcp.pbt = IPL_PBT_NVME;
-       dump_block_nvme->fcp.opt = IPL_PB0_NVME_OPT_DUMP;
+       dump_block_nvme->nvme.len = IPL_BP0_NVME_LEN;
+       dump_block_nvme->nvme.pbt = IPL_PBT_NVME;
+       dump_block_nvme->nvme.opt = IPL_PB0_NVME_OPT_DUMP;
        dump_capabilities |= DUMP_TYPE_NVME;
        return 0;
 }