28.12.2012 Views

z/VM: System Messages and Codes Š CP - z/VM - IBM

z/VM: System Messages and Codes Š CP - z/VM - IBM

z/VM: System Messages and Codes Š CP - z/VM - IBM

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

IOL008 IOS006<br />

be incremented before it is possible for another<br />

processor to start processing the code that will do the<br />

corresponding decrement.<br />

v <strong>VM</strong>DCTCRT was incremented on one <strong>VM</strong>DBK, then<br />

a <strong>VM</strong>DBK switch occurred before the corresponding<br />

decrement took place. This may often happen on<br />

task threads that switch between a user <strong>VM</strong>DBK <strong>and</strong><br />

the system <strong>VM</strong>DBK, or switch between <strong>VM</strong>DBKs in a<br />

single virtual MP complex.<br />

v A task thread did not properly serialize its increment<br />

or decrement of <strong>VM</strong>DCTCRT, such as by using the<br />

compare-<strong>and</strong>-swap instruction.<br />

v When attempting to increment <strong>VM</strong>DCTCRT on other<br />

than the running <strong>VM</strong>DBK, the wrong <strong>VM</strong>DBK was<br />

chosen.<br />

User Response: Examine the <strong>CP</strong> trace table <strong>and</strong><br />

storage dump <strong>and</strong> try to determine why the base<br />

<strong>VM</strong>DBK changed from zero to a negative value in the<br />

<strong>VM</strong>DCTCRT field. Register R11 points to the dispatched<br />

<strong>VM</strong>DBK. The field <strong>VM</strong>DBASE in the dispatched <strong>VM</strong>DBK<br />

points to the <strong>VM</strong>DBK containing <strong>VM</strong>DCTCRT. Contact<br />

your <strong>IBM</strong> support personnel.<br />

IOL008<br />

Explanation: An attempt was made to destroy a lock<br />

that still had tasks waiting on it, or an attempt was<br />

made to acquire a lock that had been destroyed,<br />

conditions which should never occur.<br />

User Response: Examine the <strong>CP</strong> trace table <strong>and</strong><br />

storage dump to see why this event occurred.<br />

IOL009<br />

Explanation: A request to enqueue a task<br />

(H<strong>CP</strong>IOLGR) was made without the RDEV lock being<br />

held.<br />

User Response: Examine the calling routine to<br />

determine why it is calling H<strong>CP</strong>IOLGR without holding<br />

the RDEV lock.<br />

IOL010<br />

Explanation: A task was already enqueued<br />

(RDEVENQ) when another enqueue request was made.<br />

User Response: Examine why the calling routine has<br />

made an additional enqueue request (H<strong>CP</strong>IOLGR) while<br />

there is an existing enqueue.<br />

IOL017<br />

Explanation: The deferred execution counter,<br />

<strong>VM</strong>DDFRWK in the <strong>VM</strong>DBK, became negative.<br />

User Response: Examine the <strong>CP</strong> trace table <strong>and</strong><br />

storage dump to see why the <strong>VM</strong>DBK in R11 has a<br />

negative value for the <strong>VM</strong>DDFRWK field. This abend<br />

can be caused by the same things that cause a<br />

52 z/<strong>VM</strong>: <strong>System</strong> <strong>Messages</strong> <strong>and</strong> <strong>Codes</strong> — <strong>CP</strong><br />

DFR017 abend. See the description of DFR017 for<br />

possible reasons why the abend may have occurred.<br />

IOS002<br />

Explanation: H<strong>CP</strong>IOS attempted to initiate an I/O<br />

operation while another one was in progress for the<br />

same real device. An I/O condition code 2 was received<br />

in response to a SSCH (Start Subchannel), MSCH<br />

(Modify Subchannel) or HSCH (Halt Subchannel).<br />

User Response: Examine the <strong>CP</strong> trace table to<br />

analyze other events relating to that subchannel. Look<br />

at the RDEV (pointed to by R8) that H<strong>CP</strong>IOS uses to<br />

manage the real device. The active IORBK pointer<br />

(RDEVAIOR) may have been reset to zero prior to I/O<br />

completion, causing H<strong>CP</strong>IOS to prematurely initiate the<br />

next scheduled I/O operation. Another possibility is that<br />

the system did not hold onto a previously initiated<br />

operation.<br />

IOS003<br />

Explanation: H<strong>CP</strong>IOSRE was called to end a level of<br />

recursion on behalf of an error recovery procedure, but<br />

the recursive IORBK pointer, IORPIOR, contained<br />

zeros. IORPIOR should contain the address of the<br />

IORBK that precedes the last IORBK in the structure.<br />

User Response: Examine the save area of the <strong>CP</strong><br />

trace table entries to determine the calling module.<br />

Check R10 to see that it is pointing to a valid IORBK. If<br />

R10 contains the address of the IORBK, storage was<br />

probably overlaid. Otherwise, the requestor probably did<br />

not set the register correctly.<br />

IOS004<br />

Explanation: H<strong>CP</strong>IOSBS was attempting to transfer<br />

control to the interrupt response address specified in the<br />

IORBK field (IORIRA), but it contained zeros.<br />

User Response: Check R10 to see that it is pointing<br />

to a valid IORBK. If R10 contains the address of an<br />

IORBK, the interrupt response address was probably<br />

destroyed or never set when the request was initiated.<br />

Also examine the status in IORBK.<br />

IOS006<br />

Explanation: H<strong>CP</strong>IOS attempted to process an<br />

IORBK with the IORXFLG.IRO<strong>CP</strong>SUS bit on, but field<br />

IORSUSND was zero.<br />

User Response: Examine the IORBK, the RDEV, <strong>and</strong><br />

the <strong>CP</strong> trace table to determine what routine obtained<br />

the IORBK. Verify that the routine that built the IORBK<br />

correctly set both the IORSUSND field <strong>and</strong> the<br />

IOR<strong>CP</strong>SUS bit. If the routine did not, correct that<br />

routine. If it did, attempt to determine how IORSUSND<br />

was set to 0 (or how IOR<strong>CP</strong>SUS was set to 1).

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!