Programming Interface Information:
The Monitor Records are intended Programming Interfaces that
allow the customer to write programs to obtain services of z/VM.

MRIODDEV

Prolog
Control 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  260  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.
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         Cummulative 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    0  IODDEV_END             

MRIODDEV Cross Reference

                      Hex           Hex
Name                 Offset Length Value
 
IODDEV                     0    260
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               104      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_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 V5R3.0.
Last updated on 12 Jun 2007 at 12:35:23.
Copyright IBM Corporation, 1990, 2007