Saved segments are based on the architected segments found in the z architecture. A segment is a whole number of megabytes. So, FILE FILENAME FILETYPE BEGPAG ENDPAG TYPE CL #USERS 0054 ITMV1A DCSSG 0000000280000 00000002FFE00 SR A 00000 uses segments 280 through 2FF (that is; it covers addresses 280000 through 2FFFFF) and that overlaps the beginning address of 0055 ITMV1B DCSSG 00000002FFE01 000000037FD00 SR A 00000 Change the definitions to FILE FILENAME FILETYPE BEGPAG ENDPAG TYPE CL #USERS 0054 ITMV1A DCSSG 0000000280000 00000002FFFFF SR A 00000 0055 ITMV1B DCSSG 0000000300000 000000037FD00 SR A 00000 and the segments will no longer overlap. If you really must work with segments on page boundary and load them together, you can use segment spaces and segment members: DEFSEG ITMV1A 280000-2FFE00 SR SPACE ITM DEFSEG ITMV1B 2FFE01-37FD00 SR SPACE ITM The segment space named ITM would cover address range 280000-37FFFF. When loading one member, CP will almost do as if it loads the whole space (CP must obey to the z architecture, with segments on megabyte boundaries), the second member can then also be loaded. But, the resultant space covers a range > 2GB, which I think is not supported either. Segment spaces were invented when we used to store all (or many) segments below the 16MB line, very small when installing many program products... I never used DCSSes above 2GB, maybe extra restrictions apply.
2011/5/25 Mark Post <mp...@novell.com> > Cross-posted to IBMVM and Linux-390 > > I'm working on a project where I want an xip2 file system that is larger > than 2GB. So, I'm trying to use the support built into z/VM and Linux to > logically concatenate multiple DCSS into one. But, I can't seem to get it > to work. I can load one segment or the other, but not both. The message > that comes out on the console is > extmem.cb0afe: ITMV1B needs used memory resources and cannot be loaded or > queried > > "man extmem.cb0afe" says "You cannot load or query the DCSS because it > overlaps with an already loaded DCSS or with the memory of the z/VM guest > virtual machine (guest storage)." I don't believe any of those apply, but I > need someone to tell me what to do differently, or to whom I should be > complaining. > > The segments are defined as this: > FILE FILENAME FILETYPE BEGPAG ENDPAG TYPE CL #USERS > 0054 ITMV1A DCSSG 0000000280000 00000002FFE00 SR A 00000 > 0055 ITMV1B DCSSG 00000002FFE01 000000037FD00 SR A 00000 > > The guest virtual storage is 1GB: > #CP Q V STOR > STORAGE = 1G > > The kernel was booted with a mem= value sufficient to contain the highest > address of the ITMV1B DCSS: > # cat /proc/cmdline > root=/dev/disk/by-path/ccw-0.0.9300-part1 TERM=dumb mem=16384M > BOOT_IMAGE=0 > > The command to allocate the two DCSS is: > echo itmv1a:itmv1b > /sys/devices/dcssblk/add > > And that's where I get my error (after 2 minutes). As I said previously, > if I try to load them individually, I can do one or the other, but not both. > > This is an up to date SLES11 SP1 system, running on z/VM 6.1 RSU 1003. > Does anyone see the problem? > > > Mark Post > -- Kris Buelens, IBM Belgium, VM customer support