Joseph
Why do you need VSMLOC at all if you are processing VSMLIST SP=PVT,SPACE=FREE ?
The TCB address is returned as part of the answer area buffer prior to each set
of ALLOC+FREE descriptors for each subpool.
It looks something like this :
# of TCBs
TCB_STRUCT(1) (includes # of SPs)
SP_STRUCT(1)
# of alloc blocks
ALLOC_STRUCT(1)
# of free blocks = n
FREE_STRUCT(n)
ALLOC_STRUCT(2)
# of free blocks = n
FREE_STRUCT(n)
..and so on until next subpool struct (after all alloc blocks
processed)
…
SP_STRUCT(2)
…
..and so on until next TCB struct (after all subpools processed)
TCB_STRUCT(2)
..and so on
I hope the above helps.
Rob Scott
Rocket Software
From: IBM Mainframe Discussion List <[email protected]> On Behalf Of
Joseph Reichman
Sent: 07 September 2022 14:23
To: [email protected]
Subject: Re: VSMLIST question
EXTERNAL EMAIL
Rob
You are correct 7FF……. Are LSQA type address
However my question is using VSMLIST SPACE=FREE SP=PVT the returned block
descriptors are both allocated followed by the free
Should I not be able to obtain the owning TCB
With VSMLOC for the allocated block ?
Thanks
> On Sep 7, 2022, at 9:05 AM, Rob Scott
> <[email protected]<mailto:[email protected]>> wrote:
>
> Joseph,
>
> The example address you posted looks very much like LSQA to me - are you sure
> it was returned by VSMLIST SP=PVT ?
>
> Also - did you check the return code from VSMLOC?
>
> Might be worth capturing a in-flight dump of the target address space and
> comparing what you are seeing with IPCS VSMDATA.
>
> Rob Scott
> Rocket Software
>
> -----Original Message-----
> From: IBM Mainframe Discussion List
> <[email protected]<mailto:[email protected]>> On Behalf Of
> Joseph Reichman
> Sent: 07 September 2022 13:13
> To: [email protected]<mailto:[email protected]>
> Subject: VSMLIST question
>
> EXTERNAL EMAIL
>
>
>
>
>
> Hi
>
>
>
> Its my understanding that when code the following (below the code for
> VSMLIST) what gets returned in my work area is the both an allocated followed
> by free storage this is what on understand from bullet 4 specified in the
> authorized Assembler guide page 240
>
>
>
> So for example I could get a block descriptor 00000001 7FFFFF88 00001000
> 00000001 7FFFFFF88 00000500 now it my understanding the
> first 12 bytes is the allocated block descriptor
>
>
>
> However when I do a VSMLOC on that address I get nothing return in the TCB=
> field
>
>
>
>
>
>
>
> I am running this code in SRB mode and move the storage I get returned to 64
> bit memory object
>
>
>
> thanks
>
>
>
> Code for VSMLIST
>
>
>
>
>
> LGF R8,PSAAOLD Get Home ASCB
>
> LGF R8,ASCBASXB-ASCB(,R8) Get asxb
>
> LGF R8,ASXBFTCB-ASXB(,R8) Get First tcb
>
> LGF R8,TCBJSTCB-TCB(,R8)
>
>
>
>
>
> Here id the VSMLIST invocation
>
>
>
>
>
> SAM31
>
> VSMLIST SP=PVT,
>
> WKAREA=((R6),4096),
>
> SPACE=FREE,
>
> TCB=((R8),ALL)
>
> CH R15,=H'4'
>
> BH EXITLST
>
> SAM64
>
>
>
>
>
>
>
>
>
> From the Authorized Assembler guide page 240
>
>
>
>
>
> This figure describes the work area that VSMLIST produces when you use
> SP=PVT. Note: 1. The number of subpools in the private area is a 31-bit
> number.
>
> 2. The address of the TCB is contained in a fullword.
>
> 3. Figure 37 on page 218 shows the format of the allocated storage
> information for the subpools owned by each TCB.
> The storage information begins at offset 0, "number of subpools" in that
> figure.
>
> 4. If you specify SPACE=FREE, free space information follows each allocated
> block descriptor. Figure 42 on page
> 221 describes the format of the free space information.
>
>
>
>
>
>
>
> Code for VSMLOC
>
>
>
> SAM31
>
> VSMLOC PVT,AREA=((R3),(R4)),TCB=TCBW
>
>
>
>
>
>
>
>
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions, send email to
> [email protected]<mailto:[email protected]> with the message:
> INFO IBM-MAIN
>
> ================================
> Rocket Software, Inc. and subsidiaries ■ 77 Fourth Avenue, Waltham MA 02451 ■
> Main Office Toll Free Number: +1 855.577.4323
> Contact Customer Support:
> https://my.rocketsoftware.com/RocketCommunity/RCEmailSupport<https://my.rocketsoftware.com/RocketCommunity/RCEmailSupport>
> Unsubscribe from Marketing Messages/Manage Your Subscription Preferences -
> http://www.rocketsoftware.com/manage-your-email-preferences<http://www.rocketsoftware.com/manage-your-email-preferences>
> Privacy Policy -
> http://www.rocketsoftware.com/company/legal/privacy-policy<http://www.rocketsoftware.com/company/legal/privacy-policy>
> ================================
>
> This communication and any attachments may contain confidential information
> of Rocket Software, Inc. All unauthorized use, disclosure or distribution is
> prohibited. If you are not the intended recipient, please notify Rocket
> Software immediately and destroy all copies of this communication. Thank you.
>
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to [email protected]<mailto:[email protected]> with
> the message: INFO IBM-MAIN
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected]<mailto:[email protected]> with
the message: INFO IBM-MAIN
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN