Open VitekVlcek-Broadcom opened 11 months ago
Hi,
thanks for analyzing this issue.
MAXVOLUMESPERDS defines the maximum numbers of volumes in a multi volume dataset. The number of 41226 looks way to high for a MV dataset.
I have to take a closer look at the documentation if there is a corner case defined how this value might be interpreted differently.
zdsfs fails when mounting zos volume that contains
FDRABR.Vxxxxxx
datasetI executed
it fails with
When mounting a volume without
FDRABR.Vxxxxxx
dataset mount finishes successfullyI made a dump of VTOC entry for
FDRABR.VAARS02
My investigation: DSCB structure reveals 1)
DS1FMTID
(offset0x2C
) has a value0xF1
ieDSCB Format-1
1)DS1VOLSQ
(offset0x33
) contains0xA10A=41226
ie outside of range0..MAXVOLUMESPERDS
(0..59
)Because the value in
DS1VOLSQ
is out of range, the code fails here https://github.com/ibm-s390-linux/s390-tools/blob/master/libzds/libzds.c#L1937. I could mount the volume when I setdspindex=0
instead of failing ieI was puzzled by the fact that
DS1DSSN
(offset0x2D
) contains strange values further reading revealed thatFDRABR.VAARS02
is likely an artifact of FDR/ABR (Automatic Backup and Restore)I consider my proposal rather a hack than a solution. What do you think?