Programming Interface Information:
The Monitor Records are intended Programming Interfaces that allow the customer to write programs to obtain services of z/VM. |
MRIODDEV
PrologControl Block Contents
Cross Reference
MRIODDEV Prolog
DSECT NAME - IODDEV FUNCTION - Map a Monitor record. LOCATED BY - Through the Monitor Control Area REFERENCED CONTROL BLOCKS - MRRECHDR Monitor Record Header NAME - MRIODDEV DESCRIPTIVE NAME - Monitor Sample Record Domain 6 - I/O Domain Record 3 - Device Activity DESCRIPTION - Describes I/O activities of a real device. A separate record is generated for each online device that is enabled for monitoring. NOTES: - Fields labeled by the prefix, 'IODDEV_HF', are high-frequency counters. - When a virtual machine owning the device uses SIE ASSIST, CP does not handle the normal I/O and cannot update the RDEV counters. Therefore, for a device that had been in SIE ASSIST, some RDEV or high-frequency counters may not correctly reflect real device activity. - "SCM Facility Data." Data obtained from the Subchannel Management Facility. - "SIE ASSIST Activity Data." This data indicates how often and for how long the device had been in each respective state. There may be situations that would cause the device to be pulled out of SIE ASSIST and later put back in it. Some devices may take longer than others to get out of SIE ASSIST. This can degrade the performance of the preferred guest. - SIE ASSIST Activity Data is valid only for devices that are eligible for SIE ASSIST, indicated by IODDEV_VDEVIOP1. - A SIE Assisted (I/O Assisted) device must be in one of three states: OUT, IN, LEAVING assist. For each state a count of transitions into the state and a count of accumulated time in the state are kept. However, since the time accumulator can only be updated when a device changes states, the accumulators reported in this monitor record (IODDEV_VIUTIMOT, IODDEV_VIUTIMIN, and IODDEV_VIUTIMLV) do not include time for the state the device is in when the monitor record is created. To determine the unassigned time, calculate the delta of the MRHDRTOD and IODDEV_VIUSTAMP. This delta should be converted to microseconds and then added to the accumulator for the state indicated by the IODDEV_VIUSTATE field. - The I/O measurement fields, IODDEV_PAVxxxxx, are data that is collected from I/O operations that were executed on a PAV/HyperPAV Alias device on behalf of a PAV/HyperPAV Base device. These monitor fields are only filled in for Pav/HyperPAV base devices that are currently be measured. The I/O measurements for I/O's executed on a PAV/HyperPAV base device are accumulated in the RDEVMBLK by the channel subsystem, while the I/O measurements executed on a PAV/HyperPAV Alias device on behalf of a PAV/HyperPAV base device are accumulated in the RDEVPAVM by CP in HCPPAVSW using measurement deltas that were stored in the IORBK for the I/O operation that just completed on a PAV/HyperPAV Alias device on behalf of a PAV/HyperPAV base device.
MRIODDEV Control Block Contents
Offsets Dec Hex Type Len Name (Dim) Description 0 0 Structure 268 IODDEV 0 0 Character 0 IODDEV_MRHDR Record header. See MRRECHDR for details. 0 0 Character 20 MRHDR 0 0 Unsigned 2 MRHDRLEN record length in bytes 2 2 Unsigned 2 MRHDRZER field of zeros 4 4 Unsigned 1 MRHDRDM domain identifier 5 5 Unsigned 1 * 6 6 Unsigned 2 MRHDRRC record identifier 8 8 Character 8 MRHDRTOD Time at which this record was built. In time-of-day (TOD) clock format. See IBM System 370 XA Principle of Operation for explanation of format. 16 10 Character 4 * 20 14 Character 0 MRHDR_END End of header 20 14 Bitstring 1 IODDEV_RDEVAFLG Device allocation flag 21 15 Bitstring 1 IODDEV_RDEVLPM logical path mask -logically available channel paths to this device 22 16 Bitstring 1 IODDEV_VDEVIOP1 SIE ASSIST flags 1... .... IODDEV_VDEVIOPX Eligible for SIE ASSIST to XA guest .1.. .... IODDEV_VDEVIOP3 Eligible for SIE ASSIST to 370 guest ..1. .... * ...1 .... * .... 1... * .... .1.. * .... ..1. * .... ...1 * 23 17 Bitstring 1 IODDEV_CALFLAG1 Flags byte. 1... .... IODDEV_CALMDCNO Device is not eligible for minidisk cache. .1.. .... IODDEV_CALMDCDN Caching on for this device, except for minidisks that are explicitly set off. ..1. .... IODDEV_CALMDCDF Caching off for this device, except for minidisks that are explicitly set on. ...1 .... IODDEV_CALMDCOF Caching set off for this device. .... 1... IODDEV_RDEVSHAR DASD is shareable. .... .1.. IODDEV_CALSCMBK RDEVMBLK is non-zero indicating that an SCMBK is assigned to this device .... ..1. IODDEV_CALTHROT Device belongs to throttle set. .... ...1 IODDEV_ENCRYCAP When on, device is encryption capable. 24 18 Unsigned 4 IODDEV_RDEVSID host subchannel I.D. number defined at initialization 28 1C Character 8 IODDEV_RDEVCHPS The eight channel path IDs available to access a device 36 24 Character 6 IODDEV_RDEVSER DASD volume serial identifier 42 2A Character 8 IODDEV_CALUSER Userid of current owner (for dedicated devices only) 50 32 Unsigned 2 IODDEV_RDEVLCNT Cardinal count of minidisks defined on all or any part of this real DASD volume 52 34 Unsigned 2 IODDEV_SCMSSCH SCM Facility Data Cumulative count of SSCHS and RSCHs for this device. This value may be wrapped when format-1 measurement blocks are being used (MTRSYS_CALFLG2 = x'80'). 54 36 Unsigned 2 IODDEV_SCMCOUNT SCM Facility Data (see notes in prolog). Cumulative sample count. Incremented whenever any measurement fields are updated. This value may be wrapped when format-1 measurement blocks are being used (MTRSYS_CALFLG2 = x'80'). 56 38 Unsigned 4 IODDEV_SCMCNTIM SCM Facility Data (see notes in prolog). The time the device is connected to the channel. This is the sum of time intervals measured whenever the device is logically connected to the channel path for purposes of transferring information between it and the channel subsystem. 60 3C Unsigned 4 IODDEV_SCMFPTIM SCM Facility Data (see notes in prolog). Device function pending time, the time interval between acceptance of the start function at the subchannel and acceptance of the first command associated with the initiation of channel-program execution at the device. 64 40 Unsigned 4 IODDEV_SCMDDTIM SCM Facility Data (see notes in prolog). Device disconnect time. The sum of the time intervals measured whenever the device is logically disconnected from the channel subsystem while the subchannel is active 68 44 Unsigned 4 IODDEV_HFRDEVCT Number of high frequency samples done 72 48 Unsigned 4 IODDEV_HFCTIO High-frequency Count. Number of SSCH, HSCH, and CSCH I/O requests queued, excluding the active request. If this is a PAV Alias RDEV for PAV Minidisks, this field will always be zero because all I/O queueing happens on the Base device for PAV Minidisks. To determine if this is a PAV Alias see the field IODDEV_RDEVPVFG. To determine if this is device is used for PAV Minidisks, examine IODDEV_CALUSER being set to zero. 76 4C Unsigned 4 IODDEV_RDEVCTSR Cumulative count of SSCHs done for error recovery purposes 80 50 Unsigned 4 IODDEV_RDEVRCWH Cumulative count of real reserve CCWs that have been sent to a device and are held immediately 84 54 Unsigned 4 IODDEV_RDEVRCWP Cumulative count of real reserve CCWs that have been sent to a device and are held pending 88 58 Character 8 IODDEV_RDEVRTPD Cumulative amount of real time a real reserve CCW is held pending 96 60 Unsigned 4 IODDEV_RDEVCTSI Cumulative count of solicited interrupts for this device 100 64 Unsigned 4 IODDEV_RDEVCTUI Cumulative count of unsolicited interrupts for this device 104 68 Unsigned 4 IODDEV_RDEVMICT Cumulative count of missing interrupts detected for this device. Incremented only when the SET MITIME command is active for this device 108 6C Unsigned 4 IODDEV_RDEVCTRG Cumulative count of RDEV lock requests granted immediately for this device 112 70 Unsigned 4 IODDEV_RDEVCTRD Cumulative count of RDEV lock requests that were deferred for this device 116 74 Unsigned 4 IODDEV_RDEVSKCT Cumulative count of DASD access arm position changes (Seek I/O) executed on this device. NOTE: accuracy is not guaranteed since counts may be skipped on multi-track operations on a cache control unit. 120 78 Unsigned 4 IODDEV_RDEVSKSM Cumulative amount of DASD access arm movement (displacements). This is the sum of absolute differences, in cylinders, between successive Seeks. IODDEV_RDEVSKSM is deprecated and should not be used for further development. Code should be changed to use IODDEV_RDEVSKSM64 defined below. For values above 'FFFFFFFF'x then this field will contain 'FFFFFFFF'x (and will not wrap). 124 7C Unsigned 4 IODDEV_RDEVWRCT Cumulative number of WRITE channel programs that have occurred on this device 128 80 Unsigned 4 IODDEV_RDEVRDCT Cumulative number of READ channel programs that have occurred on this device 132 84 Unsigned 4 IODDEV_RDEVMCIA Cumulative count of SSCH's avoided due to Minidisk Cache read hit 136 88 Unsigned 4 IODDEV_VIUCNTIN SIE ASSIST Activity Data (see notes in prolog). Cumulative count of times the device was in SIE ASSIST. 140 8C Unsigned 4 IODDEV_VIUTIMIN SIE ASSIST Activity Data (see notes in prolog). Cumulative time, in micro seconds, spent in SIE ASSIST, including getting there. Accumulated after the device starts to leave SIE ASSIST (e.g., it stays zero until after the device leaves SIE ASSIST for the first time). This field will wrap around after a total of about 71 minutes (1.1 hours). 144 90 Unsigned 4 IODDEV_VIUCNTLV SIE ASSIST Activity Data (see notes in prolog). Cumulative count of times the device started to leave SIE ASSIST. 148 94 Unsigned 4 IODDEV_VIUTIMLV SIE ASSIST Activity Data (see notes in prolog). Cumulative time, in mirco seconds, spent in the process of leaving SIE ASSIST. Accumulated after the device has completed the process (e.g., it stays zero until after the device is out of SIE ASSIST for the first time). This field will wrap around after a total of about 71 minutes (1.1 hours). 152 98 Unsigned 4 IODDEV_VIUCNTOT SIE ASSIST Activity Data (see notes in prolog). Cumulative count of times the device is out of SIE ASSIST. Initialized to one. 156 9C Unsigned 4 IODDEV_VIUTIMOT SIE ASSIST Activity Data (see notes in prolog). Cumulative time, in micro seconds, spent outside of SIE ASSIST. Accumulated after the device has gone into SIE ASSIST (e.g., it stays zero until after the first time the device goes into SIE ASSIST). This field will wrap around after a total of about 71 minutes (1.1 hours). 160 A0 Unsigned 4 IODDEV_SCMDATIM SCM Facility Data (see notes in prolog). Device-active-only time. The sum of the time intervals when the subchannel is device-active but not subchannel-active at the end of an I/O operation or chain of I/O operations initiated by START SUBCHANNEL. 164 A4 Character 8 IODDEV_VIUSTAMP SIE ASSIST Activity Data (see notes in prolog). Time stamp of last transition between I/O Assist states. 172 AC Bitstring 1 IODDEV_VIUSTATE SIE ASSIST Activity Data (see notes in prolog). VDEV state in I/O Assist. X'00' = device is OUT of Assist, X'01' = device is IN Assist, X'02' = device is LEAVING Assist 173 AD Character 3 * Reserved and available for IBM use. 176 B0 Unsigned 4 IODDEV_THRDLYS Cumulative count of the number of times I/O was delayed for a throttled device. 180 B4 Unsigned 4 IODDEV_SCMCQTIM SCM Facility Data (see notes in prolog). Control Unit Queuing time. The sum of the time intervals measured by the control unit whenever the device is logically disconnected from the channel subsystem during an I/O operation while the device is busy with an operation initiated from a different system. 184 B8 Unsigned 4 IODDEV_SCMDBTIM SCM Facility Data (see notes in prolog). Accumulated device-busy time. The sum of the time intervals when the subchannel is device busy during an attempt initiate a start function or resume function at the subchannel. 188 BC Unsigned 4 IODDEV_SCMIRTIM SCM Facility Data (see notes in prolog). Accumulated initial- command-response time. The initial-command-response time for a start or resume function is the time interval beginning from when the first command of the channel program is sent to the device until the device indicates it has accepted the command. 192 C0 Unsigned 4 IODDEV_SCGSSCH SCM Facility Data (see notes in prolog). Cumulative count of SSCHs and RSCHs for this device. This is the fullword count which is stored when format-1 measurement blocks are being used (MTRSYS_CALFLG2 = x'80'). 196 C4 Unsigned 4 IODDEV_SCGCOUNT SCM Facility Data (see notes in prolog). Cumulative sample count. Incremented whenever any measurement fields are updated. This is the fullword count which is stored when format-1 measurement blocks are being used (MTRSYS_CALFLG2 = x'80'). 200 C8 Unsigned 2 IODDEV_RDEVDEV Device number 202 CA Unsigned 2 * Reserved and available for IBM use. 204 CC Bitstring 1 IODDEV_EDEVTYPE EDEV emulation type 205 CD Bitstring 1 IODDEV_PREFPATH Preferred path mask 206 CE Character 2 * Reserved and available for IBM use. 208 D0 Unsigned 4 IODDEV_PAVINELG Number of times the alias device tried to take work from the base device and found I/O it could have stolen except that the I/O was ineligible for steal. 212 D4 Unsigned 4 IODDEV_PAVUSES Number of times the alias device took work from the base device. 216 D8 Bitstring 1 IODDEV_RDEVPVFG PAV flag (RDEVPVFG) 1... .... IODDEV_RDEVPVBA PAV Base device .1.. .... IODDEV_RDEVPVAL PAV Alias device ..1. .... IODDEV_RDEVHPBA HyperPAV Base Device ...1 .... IODDEV_RDEVHPAL HyperPAV Alias Device .... 1... IODDEV_RDEVFREQ HyperPAV Alias Device is on the free queue .... .1.. * .... ..1. * .... ...1 * 217 D9 Bitstring 1 * Reserved and available for IBM use. 218 DA Unsigned 2 IODDEV_RDEVHPPL HyperPAV Pool Number 220 DC Unsigned 4 IODDEV_PAVSSCH Cumulative count of SSCHs and RSCHs executed on Alias devices on behalf of this Base device 224 E0 Unsigned 4 IODDEV_PAVCOUNT Cumulative sample count for Alias Devices that were executing I/O on behalf of this Base device. 228 E4 Unsigned 4 IODDEV_PAVCNTIM The time Alias devices, on behalf of this Base device, are connected to the channel. This is the sum of time intervals measured whenever the alias devices are logically connected to the channel path for purposes of transferring information between them and the channel subsystem. 232 E8 Unsigned 4 IODDEV_PAVFPTIM Device function pending time for Alias devices on behalf of this Base device. It is the time interval between acceptance of the start function at the subchannel and acceptance of the first command associated with the initiation of channel-program execution at the device. 236 EC Unsigned 4 IODDEV_PAVDDTIM Device disconnect time for Alias devices on behalf of this Base device. It is the sum of the time intervals measured whenever the device is logically disconnected from the channel subsystem while the subchannel is active. 240 F0 Unsigned 4 IODDEV_PAVCQTIM Control Unit Queuing time for Alias devices on behalf of this Base device. It is the sum of the time intervals measured by the control unit whenever the device is logically disconnected from the channel subsystem during an I/O operation while the device is busy with an operation initiated from a different system. 244 F4 Unsigned 4 IODDEV_PAVDATIM Device-active-only time for Alias devices on behalf of this Base device. It is the sum of the time intervals when the subchannel is device-active but not subchannel-active at the end of an I/O operation or chain of I/O operations initiated by START SUBCHANNEL. 248 F8 Unsigned 4 IODDEV_PAVDBTIM Accumulated device-busy time for Alias devices on behalf of this Base device. It is the sum of the time intervals when the subchannel is device busy during an attempt initiate a start function or resume function at the subchannel. 252 FC Unsigned 4 IODDEV_PAVIRTIM Accumulated initial-command- response time for Alias devices on behalf of this Base Device. The initial-command-resp time for a start or resume function is the time interval beginning from when the first command of the channel program is sent to the device until the device indicates it has accepted the command. 256 100 Unsigned 4 IODDEV_PAVCC3S Number of times that I/O executed on a HyperPAV/PAV alias device on behalf of this HyperPAV/PAV Base device received a CC3 condition and was retried on the base device. 260 104 Character 8 IODDEV_RDEVSKSM64 260 104 Unsigned 4 IODDEV_RDEVSKSM64_HI 264 108 Unsigned 4 IODDEV_RDEVSKSM64_LO Cumulative amount of DASD access arm movement (displacements). This is the sum of absolute differences, in cylinders, between successive Seeks. 268 10C Character 0 IODDEV_END
MRIODDEV Cross Reference
Hex Hex Name Offset Length Value IODDEV 0 268 IODDEV_CALFLAG1 17 1 IODDEV_CALMDCDF 17 20 IODDEV_CALMDCDN 17 40 IODDEV_CALMDCNO 17 80 IODDEV_CALMDCOF 17 10 IODDEV_CALSCMBK 17 04 IODDEV_CALTHROT 17 02 IODDEV_CALUSER 2A 8 IODDEV_EDEVTYPE CC 1 IODDEV_ENCRYCAP 17 01 IODDEV_END 10C 0 IODDEV_HFCTIO 48 4 IODDEV_HFRDEVCT 44 4 IODDEV_MRHDR 0 0 IODDEV_PAVCC3S 100 4 IODDEV_PAVCNTIM E4 4 IODDEV_PAVCOUNT E0 4 IODDEV_PAVCQTIM F0 4 IODDEV_PAVDATIM F4 4 IODDEV_PAVDBTIM F8 4 IODDEV_PAVDDTIM EC 4 IODDEV_PAVFPTIM E8 4 IODDEV_PAVINELG D0 4 IODDEV_PAVIRTIM FC 4 IODDEV_PAVSSCH DC 4 IODDEV_PAVUSES D4 4 IODDEV_PREFPATH CD 1 IODDEV_RDEVAFLG 14 1 IODDEV_RDEVCHPS 1C 8 IODDEV_RDEVCTRD 70 4 IODDEV_RDEVCTRG 6C 4 IODDEV_RDEVCTSI 60 4 IODDEV_RDEVCTSR 4C 4 IODDEV_RDEVCTUI 64 4 IODDEV_RDEVDEV C8 2 IODDEV_RDEVFREQ D8 08 IODDEV_RDEVHPAL D8 10 IODDEV_RDEVHPBA D8 20 IODDEV_RDEVHPPL DA 2 IODDEV_RDEVLCNT 32 2 IODDEV_RDEVLPM 15 1 IODDEV_RDEVMCIA 84 4 IODDEV_RDEVMICT 68 4 IODDEV_RDEVPVAL D8 40 IODDEV_RDEVPVBA D8 80 IODDEV_RDEVPVFG D8 1 IODDEV_RDEVRCWH 50 4 IODDEV_RDEVRCWP 54 4 IODDEV_RDEVRDCT 80 4 IODDEV_RDEVRTPD 58 8 IODDEV_RDEVSER 24 6 IODDEV_RDEVSHAR 17 08 IODDEV_RDEVSID 18 4 IODDEV_RDEVSKCT 74 4 IODDEV_RDEVSKSM 78 4 IODDEV_RDEVSKSM64 104 8 IODDEV_RDEVSKSM64_HI 104 4 IODDEV_RDEVSKSM64_LO 108 4 IODDEV_RDEVWRCT 7C 4 IODDEV_SCGCOUNT C4 4 IODDEV_SCGSSCH C0 4 IODDEV_SCMCNTIM 38 4 IODDEV_SCMCOUNT 36 2 IODDEV_SCMCQTIM B4 4 IODDEV_SCMDATIM A0 4 IODDEV_SCMDBTIM B8 4 IODDEV_SCMDDTIM 40 4 IODDEV_SCMFPTIM 3C 4 IODDEV_SCMIRTIM BC 4 IODDEV_SCMSSCH 34 2 IODDEV_THRDLYS B0 4 IODDEV_VDEVIOPX 16 80 IODDEV_VDEVIOP1 16 1 IODDEV_VDEVIOP3 16 40 IODDEV_VIUCNTIN 88 4 IODDEV_VIUCNTLV 90 4 IODDEV_VIUCNTOT 98 4 IODDEV_VIUSTAMP A4 8 IODDEV_VIUSTATE AC 1 IODDEV_VIUTIMIN 8C 4 IODDEV_VIUTIMLV 94 4 IODDEV_VIUTIMOT 9C 4 MRHDR 0 20 MRHDR_END 14 0 MRHDRDM 4 1 MRHDRLEN 0 2 MRHDRRC 6 2 MRHDRTOD 8 8 MRHDRZER 2 2
This information is based on z/VM V6R1.0.
Last updated on 20 Mar 2013 at 14:43:13.
Copyright IBM Corporation, 1990, 2013