ibm-information-center/dist/eclipse/plugins/i5OS.ic.apis_5.4.0.1/qyassdmo.htm

1351 lines
38 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Copyright" content="Copyright (c) 2006 by IBM Corporation">
<title>Start DASD Management Operation (QYASSDMO) API</title>
<!-- Begin Header Records ========================================= -->
<!-- All rights reserved. Licensed Materials Property of IBM -->
<!-- US Government Users Restricted Rights -->
<!-- Use, duplication or disclosure restricted by -->
<!-- GSA ADP Schedule Contract with IBM Corp. -->
<!-- Change History: -->
<!-- YYMMDD USERID Change description -->
<!-- File cleanup completed Oct 2001 by v2cdijab -->
<!-- End Header Records -->
<link rel="stylesheet" type="text/css" href="../rzahg/ic.css">
</head>
<body>
<a name="Top_Of_Page"></a>
<!-- Java sync-link -->
<script type="text/javascript" language="Javascript" src="../rzahg/synch.js">
</script>
<h2>Start DASD Management Operation (QYASSDMO) API</h2>
<div class="box" style="width: 80%;">
<br>
&nbsp;&nbsp;Required Parameter Group:<br>
<!-- iddvc RMBR -->
<br>
<table width="100%">
<tr>
<td align="center" valign="top" width="10%">1</td>
<td align="left" valign="top" width="50%">Session handle</td>
<td align="left" valign="top" width="20%">Input</td>
<td align="left" valign="top" width="20%">Char(8)</td>
</tr>
<tr>
<td align="center" valign="top">2</td>
<td align="left" valign="top">Operation key</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Binary(4)</td>
</tr>
<tr>
<td align="center" valign="top">3</td>
<td align="left" valign="top">Operation variable</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(*)</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="left" valign="top">Length of operation variable</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Binary(4)</td>
</tr>
<tr>
<td align="center" valign="top">5</td>
<td align="left" valign="top">Format name of operation variable</td>
<td align="left" valign="top">Input</td>
<td align="left" valign="top">Char(8)</td>
</tr>
<tr>
<td align="center" valign="top">6</td>
<td align="left" valign="top">Error code</td>
<td align="left" valign="top">I/O</td>
<td align="left" valign="top">Char(*)</td>
</tr>
</table>
<br>
&nbsp;&nbsp;Default Public Authority: *USE<br>
<!-- iddvc RMBR -->
<br>
&nbsp;&nbsp;Threadsafe: Yes<br>
<!-- iddvc RMBR -->
<br>
</div>
<p>The Start DASD Management Operation (QYASSDMO) API performs various disk
management operations as indicated by the Operation key input parameter.</p>
<p>A session handle must be obtained prior to using this API by starting a disk
management session using the Start DASD Management Session (QYASSDMS) API.
Subsequent QYASSDMS API calls pass this session handle as an input
parameter.</p>
<p>Disk management operations that can be requested are:</p>
<ul>
<li>Change the storage threshold percentage of an ASP</li>
<li>Add disk units to an ASP</li>
<li>Suspend mirrored protection on a disk unit</li>
<li>Resume mirrored protection on a disk unit</li>
<li>Include a disk unit in device parity protection</li>
<li>Rebuild data on a disk unit after a device parity fault</li>
<li>Replace mirrored disk unit</li>
<li>Start device parity protection on a new parity set</li>
<li>Enable remote load source mirroring</li>
<li>Disable remote load source mirroring</li>
<li>Power off a disk unit</li>
<li>Power on a disk unit</li>
<li>Format a disk unit</li>
<li>Clear a disk unit</li>
<li>Scan surface of a disk unit</li>
<li><img src="delta.gif" alt="Start of change">Change multiple connection unit</li>
<li>Suspend geographic mirroring</li>
<li>Resume geographic mirroring</li>
<li>Write changes to disk<img src="deltaend.gif" alt="End of change"></li>
</ul>
<p>Most operations require that an operation variable be specified. There are
various operation formats associated with the operation that need to be placed
in the operation variable. When an operation variable is required, the input
parameters Length of operation variable and Format name of operation variable
also need to be specified. If the operation does not need an operation variable
to be supplied, then enter a value of zero in the Length of operation variable
parameter and enter a value of all blanks for Format name of operation
variable. When the parameter Length of operation variable is set to zero and
the parameter Format name of operation variable is all blanks, the parameter
operation variable is ignored.</p>
<br>
<h3>Authorities and Locks</h3>
<p>To use this API you must have *SERVICE special authority or be authorized to
the Service Disk Units function of Operating System/400 through iSeries
Navigator's Application Administration support. The Change Function Usage
Information (QSYCHFUI) API, with a function ID of QIBM_QYAS_SERVICE_DISKMGMT,
also can be used to change the list of users who are allowed to work with disk
units.</p>
<h3>Required Parameter Group</h3>
<dl>
<dt><strong>Session handle</strong></dt>
<dd>INPUT; CHAR(8)
<p>The unique ID that was returned to the client on a preceding Start DASD
Management Session (QYASSDMS) API. The session handle contains arbitrary binary
data and should not be interpreted as character data.</p>
<p>If the session handle is not used to perform an operation using this API or
is not used to check the status of an operation using the QYASRDMS API within 5
minutes after a session is started or an operation has completed, the session
of the associated handle will be ended and the associated handle will be
invalidated if a call is made to start another disk management session.</p>
</dd>
<dt><strong>Operation key</strong></dt>
<dd>INPUT; BINARY(4)
<p>An integer value indicating which disk management operation is to be
performed. Valid operation key values are:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">Change the storage threshold percentage of an
ASP</td>
</tr>
<tr>
<td align="left" valign="top"><em>2</em></td>
<td align="left" valign="top">Add disk units to an ASP</td>
</tr>
<tr>
<td align="left" valign="top"><em>3</em></td>
<td align="left" valign="top">Suspend mirrored protection on a disk unit</td>
</tr>
<tr>
<td align="left" valign="top"><em>4</em></td>
<td align="left" valign="top">Resume mirrored protection on a disk unit</td>
</tr>
<tr>
<td align="left" valign="top"><em>5</em></td>
<td align="left" valign="top">Include a disk unit in device parity
protection</td>
</tr>
<tr>
<td align="left" valign="top"><em>6</em></td>
<td align="left" valign="top">Rebuild data on a disk unit after a device parity
fault</td>
</tr>
<tr>
<td align="left" valign="top"><em>7</em></td>
<td align="left" valign="top">Replace mirrored disk unit</td>
</tr>
<tr>
<td align="left" valign="top"><em>8</em></td>
<td align="left" valign="top">Start device parity protection on a new parity
set</td>
</tr>
<tr>
<td align="left" valign="top"><em>9</em></td>
<td align="left" valign="top">Enable remote load source mirroring</td>
</tr>
<tr>
<td align="left" valign="top"><em>10</em></td>
<td align="left" valign="top">Disable remote load source mirroring</td>
</tr>
<tr>
<td align="left" valign="top"><em>11</em></td>
<td align="left" valign="top">Power off a disk unit</td>
</tr>
<tr>
<td align="left" valign="top"><em>12</em></td>
<td align="left" valign="top">Power on a disk unit</td>
</tr>
<tr>
<td align="left" valign="top"><em>13</em></td>
<td align="left" valign="top">Format a disk unit</td>
</tr>
<tr>
<td align="left" valign="top"><em>14</em></td>
<td align="left" valign="top">Clear a disk unit</td>
</tr>
<tr>
<td align="left" valign="top"><em>15</em></td>
<td align="left" valign="top">Scan surface of a disk unit</td>
</tr>
<tr>
<td align="left" valign="top"><img src="delta.gif" alt="Start of change"><em>16</em></td>
<td align="left" valign="top">Change multiple connection unit</td>
</tr>
<tr>
<td align="left" valign="top"><em>17</em></td>
<td align="left" valign="top">Suspend geographic mirroring</td>
</tr>
<tr>
<td align="left" valign="top"><em>18</em></td>
<td align="left" valign="top">Resume geographic mirroring</td>
</tr>
<tr>
<td align="left" valign="top"><em>19</em></td>
<td align="left" valign="top">Write changes to disk<img src="deltaend.gif" alt="End of change"></td>
</tr>
</table>
<p>The following is a description of each operation:</p>
<dl>
<dt><strong>Change the storage threshold percentage of an ASP</strong></dt>
<dd>The storage threshold for an ASP determines when the system warns you that
the space allocated for the ASP is almost full. It specifies a percentage of
used ASP storage space. This operation changes the storage threshold
percentage.<br>
<br>
</dd>
<dt><strong>Add disk units to an ASP</strong></dt>
<dd>This operation allows you to add disk units to an ASP. If the ASP does not
exist, it will be created. The ASP balancing function can be called optionally.
The ASP balancing function improves disk performance by balancing disk
utilization across all of the disk units in an ASP.<br>
<br>
</dd>
<dt><strong>Suspend mirrored protection on a disk unit</strong></dt>
<dd>When mirrored protection is configured for an ASP, this operation suspends
mirrored protection on a disk unit in the ASP. This operation is required to
replace a disk unit in an ASP that is mirrored protected.
<p>Sometimes mirrored protection may be suspended automatically when a disk
unit fails. In the situation where mirrored protection is already suspended and
this operation is called, a successful completion code will still be
returned.</p>
</dd>
<dt><strong>Resume mirrored protection on a disk unit</strong></dt>
<dd>This operation synchronizes data in a mirrored pair of disk units where
mirrored protection has been suspended and then resumes mirrored protection.
<p>If mirrored protection has already been resumed and this operation is
called, a successful completion code will still be returned.</p>
</dd>
<dt><strong>Include a disk unit in device parity protection</strong></dt>
<dd>This operation includes an unconfigured disk unit in a device parity set.
When attaching a new disk unit to an existing IOP
<img src="delta.gif" alt="Start of change">
which controls disk units that have
<img src="deltaend.gif" alt="End of change">
device parity protection, the disk unit can be included in the device parity
set.<br>
<br>
</dd>
<dt><strong>Rebuild data on a disk unit after a device parity
fault</strong></dt>
<dd>After replacement of a failed disk unit in a device parity set, this
operation rebuilds data that existed on the failed disk unit onto the new disk
unit.<br>
<br>
</dd>
<dt><strong>Replace a mirrored disk unit</strong></dt>
<dd>When a disk unit in a mirrored pair has failed, it can be replaced using
this operation.
<p>A disk unit selected to replace the failed mirrored disk unit must satisfy
all of the mirrored protection configuration rules and restrictions when it is
paired with the remaining disk unit in the mirrored pair.</p>
</dd>
<dt><strong>Start device parity protection on a new parity set</strong></dt>
<dd>This operation starts device parity protection on a controller that has no
configured disks.<br>
<br>
</dd>
<dt><strong>Enable remote load source mirroring</strong></dt>
<dd>This operation enables mirroring of the load source disk unit
<img src="delta.gif" alt="Start of change">
to a disk unit in a position that is not IPL capable.<br>
<img src="deltaend.gif" alt="End of change">
<br>
</dd>
<dt><strong>Disable remote load source mirroring</strong></dt>
<dd><img src="delta.gif" alt="Start of change">This operation disables the function of mirroring of the load source disk
unit to a disk unit in a slot which is not IPL capable.<br>
<img src="deltaend.gif" alt="End of change">
<br>
</dd>
<dt><strong>Power off a disk unit</strong></dt>
<dd>This operation powers off a disk unit. The bus, IOP, and controller also
may be powered off, depending on the hardware configuration.<br>
<br>
</dd>
<dt><strong>Power on a disk unit</strong></dt>
<dd>This operation powers on a disk unit. The bus, IOP, and controller also may
be powered on, depending on the hardware configuration.<br>
<br>
</dd>
<dt><strong>Format a disk unit</strong></dt>
<dd>This operation formats a disk unit.<br>
<br>
</dd>
<dt><strong>Clear a disk unit</strong></dt>
<dd>This operation clears a disk unit. The entire disk unit will have binary
zeroes written to it.<br>
<br>
</dd>
<dt><strong>Scan surface of a disk unit</strong></dt>
<dd>This operation is used to check the disk surface for problems that could
affect the data.<br>
<br>
</dd>
<dt><img src="delta.gif" alt="Start of change"><strong>Change multiple connection unit</strong></dt>
<dd>This operation is used to change the multiple connection unit identifier
for disk units so that they are correct for the system that owns the disk
units.<br>
<br>
</dd>
<dt><strong>Suspend geographic mirroring</strong></dt>
<dd>This operation is used to suspend geographic mirroring of an ASP.<br>
<br>
</dd>
<dt><strong>Resume geographic mirroring</strong></dt>
<dd>This operation is used to resume geographic mirroring of an ASP.<br>
<br>
</dd>
<dt><strong>Write changes to disk</strong></dt>
<dd>This operation is used to write to disk changed objects in a UDFS ASP
or in an ASP group.<br><img src="deltaend.gif" alt="End of change">
<br>
</dd>
</dl>
</dd>
<dt><strong>Operation variable</strong></dt>
<dd>INPUT; CHAR(*)
<p>The operation variable that is to be sent to the Start DASD Management
Operation (QYASSDMO) API.</p>
</dd>
<dt><strong>Length of operation variable</strong></dt>
<dd>INPUT; BINARY(4)
<p>The length of the operation variable, in bytes. The length of the operation
variable must be equal to or greater than the length of the associated
operation variable format.</p>
</dd>
<dt><strong>Format name of operation variable</strong></dt>
<dd>INPUT; CHAR(8)
<p>The format of the information that is sent to the Start DASD Management
Operation (QYASSDMO) API. The DMOP0100, DMOP0200, DMOP0300, DMOP0400, DMOP0500,
DMOP0600
<img src="delta.gif" alt="Start of change">
and DMOP0700
<img src="deltaend.gif" alt="End of change">
formats are used by this API for the operation variable. For
detailed descriptions of the formats, see <a href="#HDRDMOPFMT">Format
Descriptions</a>.</p>
<p>A value of all blanks indicates that no format is used. The Length of
operation variable parameter must be set to 0.</p>
<p>The following indicates the operations that use each of the operation
formats.</p>
<dl>
<dt><strong>All blanks (no format used)</strong></dt>
<dd>Enable remote load source mirroring<br>
Disable remote load source mirroring<br>
<br>
</dd>
<dt><strong>DMOP0100</strong></dt>
<dd>Change the storage threshold percentage of an ASP<br>
<br>
</dd>
<dt><strong>DMOP0200</strong></dt>
<dd>Add disk units to an ASP<br>
<br>
</dd>
<dt><strong>DMOP0300</strong></dt>
<dd>Suspend mirrored protection on a disk unit<br>
Resume mirrored protection on a disk unit<br>
Rebuild data on a disk unit after a device parity fault<br>
<br>
</dd>
<dt><strong>DMOP0400</strong></dt>
<dd>Include a disk unit in device parity protection<br>
Format a disk unit<br>
Clear a disk unit<br>
Scan surface of a disk unit<br>
Start device parity protection on a new parity set<br>
<img src="delta.gif" alt="Start of change">
Change multiple connection unit<br>
<img src="deltaend.gif" alt="End of change">
<br>
</dd>
<dt><strong>DMOP0500</strong></dt>
<dd>Replace mirrored disk unit<br>
<br>
</dd>
<dt><strong>DMOP0600</strong></dt>
<dd>Power off a disk unit<br>
Power on a disk unit<br>
<br>
</dd>
<dt><img src="delta.gif" alt="Start of change"><strong>DMOP0700</strong></dt>
<dd>Suspend geographic mirroring<br>
Resume geographic mirroring<br>
Change multiple connection unit<br>
Write changes to disk<br><img src="deltaend.gif" alt="End of change">
<br>
</dd>
</dl>
</dd>
<dt><strong>Error code</strong></dt>
<dd>I/O; CHAR(*)
<p>The structure in which to return error information. For the format of the
structure, see <a href="../apiref/error.htm#hdrerrcod">Error Code Parameter</a>.</p>
</dd>
</dl>
<br>
<h3><a name="HDRDMOPFMT">Format Descriptions</a></h3>
<h4>DMOP0100 Format</h4>
<p>The following shows the information sent for the DMOP0100 format. For
detailed descriptions of the fields in the table, see
<a href="#HDRDMOPFLD">Field Descriptions</a>.</p>
<table border="1" width="80%">
<tr>
<th align="center" valign="bottom" colspan="2">Offset</th>
<th align="left" valign="bottom" rowspan="2">Type</th>
<th align="left" valign="bottom" rowspan="2">Field</th>
</tr>
<tr>
<th align="center" valign="bottom">Dec</th>
<th align="center" valign="bottom">Hex</th>
</tr>
<tr>
<td align="center" valign="top" width="10%">0</td>
<td align="center" valign="top" width="10%">0</td>
<td align="left" valign="top" width="20%">BINARY(4)</td>
<td align="left" valign="top" width="60%">ASP number</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="center" valign="top">4</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">ASP storage threshold</td>
</tr>
</table>
<br>
<br>
<h4>DMOP0200 Format</h4>
<p>The following shows the information sent for the DMOP0200 format. For
detailed descriptions of the fields in the table, see
<a href="#HDRDMOPFLD">Field Descriptions</a>.</p>
<table border="1" width="80%">
<tr>
<th align="center" valign="bottom" colspan="2">Offset</th>
<th align="left" valign="bottom" rowspan="2">Type</th>
<th align="left" valign="bottom" rowspan="2">Field</th>
</tr>
<tr>
<th align="center" valign="bottom">Dec</th>
<th align="center" valign="bottom">Hex</th>
</tr>
<tr>
<td align="center" valign="top" width="10%">0</td>
<td align="center" valign="top" width="10%">0</td>
<td align="left" valign="top" width="20%">BINARY(4)</td>
<td align="left" valign="top" width="60%">ASP number</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="center" valign="top">4</td>
<td align="left" valign="top">CHAR(1)</td>
<td align="left" valign="top">Balance disk units flag</td>
</tr>
<tr>
<td align="center" valign="top">5</td>
<td align="center" valign="top">5</td>
<td align="left" valign="top">CHAR(3)</td>
<td align="left" valign="top">Reserved</td>
</tr>
<tr>
<td align="center" valign="top">8</td>
<td align="center" valign="top">8</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Offset to disk unit resource names</td>
</tr>
<tr>
<td align="center" valign="top">12</td>
<td align="center" valign="top">C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Number of disk unit resource names</td>
</tr>
<tr>
<td align="center" valign="top">16</td>
<td align="center" valign="top">10</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Reserved (must be set to 0)</td>
</tr>
<tr>
<td align="left" valign="top" colspan="4"><strong>NOTE:</strong> The following
fields repeat the number of time specified in the Number of disk unit resource
name records field.</td>
</tr>
<tr>
<td align="center" valign="top" colspan="2">&nbsp;</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Disk unit resource name</td>
</tr>
</table>
<br>
<br>
<h4>DMOP0300 Format</h4>
<p>The following shows the information sent for the DMOP0300 format. For
detailed descriptions of the fields in the table, see
<a href="#HDRDMOPFLD">Field Descriptions</a>.</p>
<table border="1" width="80%">
<tr>
<th align="center" valign="bottom" colspan="2">Offset</th>
<th align="left" valign="bottom" rowspan="2">Type</th>
<th align="left" valign="bottom" rowspan="2">Field</th>
</tr>
<tr>
<th align="center" valign="bottom">Dec</th>
<th align="center" valign="bottom">Hex</th>
</tr>
<tr>
<td align="center" valign="top" width="10%">0</td>
<td align="center" valign="top" width="10%">0</td>
<td align="left" valign="top" width="20%">CHAR(10)</td>
<td align="left" valign="top" width="60%">Disk unit resource name</td>
</tr>
</table>
<br>
<br>
<h4>DMOP0400 Format</h4>
<p>The following shows the information sent for the DMOP0400 format. For
detailed descriptions of the fields in the table, see
<a href="#HDRDMOPFLD">Field Descriptions</a>.</p>
<table border="1" width="80%">
<tr>
<th align="center" valign="bottom" colspan="2">Offset</th>
<th align="left" valign="bottom" rowspan="2">Type</th>
<th align="left" valign="bottom" rowspan="2">Field</th>
</tr>
<tr>
<th align="center" valign="bottom">Dec</th>
<th align="center" valign="bottom">Hex</th>
</tr>
<tr>
<td align="center" valign="top" width="10%">0</td>
<td align="center" valign="top" width="10%">0</td>
<td align="left" valign="top" width="20%">BINARY(4)</td>
<td align="left" valign="top" width="60%">Offset to disk unit resource
names</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="center" valign="top">4</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Number of disk unit resource names</td>
</tr>
<tr>
<td align="center" valign="top">8</td>
<td align="center" valign="top">8</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Reserved (must be set to 0)</td>
</tr>
<tr>
<td align="left" valign="top" colspan="4"><strong>NOTE:</strong> The following
fields repeat the number of time specified in the number of disk unit resource
name records field.</td>
</tr>
<tr>
<td align="center" valign="top" colspan="2">&nbsp;</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Disk unit resource name</td>
</tr>
</table>
<br>
<br>
<h4>DMOP0500 Format</h4>
<p>The following shows the information sent for the DMOP0500 format. For
detailed descriptions of the fields in the table, see
<a href="#HDRDMOPFLD">Field Descriptions</a>.</p>
<table border="1" width="80%">
<tr>
<th align="center" valign="bottom" colspan="2">Offset</th>
<th align="left" valign="bottom" rowspan="2">Type</th>
<th align="left" valign="bottom" rowspan="2">Field</th>
</tr>
<tr>
<th align="center" valign="bottom">Dec</th>
<th align="center" valign="bottom">Hex</th>
</tr>
<tr>
<td align="center" valign="top" width="10%">0</td>
<td align="center" valign="top" width="10%">0</td>
<td align="left" valign="top" width="20%">CHAR(10)</td>
<td align="left" valign="top" width="60%">Resource name of disk unit to be
replaced</td>
</tr>
<tr>
<td align="center" valign="top">10</td>
<td align="center" valign="top">A</td>
<td align="left" valign="top">CHAR(10)</td>
<td align="left" valign="top">Resource name of new disk unit</td>
</tr>
</table>
<br>
<br>
<h4>DMOP0600 Format</h4>
<p>The following shows the information sent for the DMOP0600 format. For
detailed descriptions of the fields in the table, see
<a href="#HDRDMOPFLD">Field Descriptions</a>.</p>
<table border="1" width="80%">
<tr>
<th align="center" valign="bottom" colspan="2">Offset</th>
<th align="left" valign="bottom" rowspan="2">Type</th>
<th align="left" valign="bottom" rowspan="2">Field</th>
</tr>
<tr>
<th align="center" valign="bottom">Dec</th>
<th align="center" valign="bottom">Hex</th>
</tr>
<tr>
<td align="center" valign="top" width="10%">0</td>
<td align="center" valign="top" width="10%">0</td>
<td align="left" valign="top" width="20%">CHAR(10)</td>
<td align="left" valign="top" width="60%">Disk unit resource name</td>
</tr>
<tr>
<td align="center" valign="top">10</td>
<td align="center" valign="top">A</td>
<td align="left" valign="top">CHAR(4)</td>
<td align="left" valign="top">Tower number</td>
</tr>
<tr>
<td align="center" valign="top">14</td>
<td align="center" valign="top">E</td>
<td align="left" valign="top">CHAR(5)</td>
<td align="left" valign="top">Device position</td>
</tr>
</table>
<br>
<br>
<h4><img src="delta.gif" alt="Start of change">DMOP0700 Format</h4>
<p>The following shows the information sent for the DMOP0700 format. For
detailed descriptions of the fields in the table, see
<a href="#HDRDMOPFLD">Field Descriptions</a>.</p>
<table border="1" width="80%">
<tr>
<th align="center" valign="bottom" colspan="2">Offset</th>
<th align="left" valign="bottom" rowspan="2">Type</th>
<th align="left" valign="bottom" rowspan="2">Field</th>
</tr>
<tr>
<th align="center" valign="bottom">Dec</th>
<th align="center" valign="bottom">Hex</th>
</tr>
<tr>
<td align="center" valign="top" width="10%">0</td>
<td align="center" valign="top" width="10%">0</td>
<td align="left" valign="top" width="20%">BINARY(4)</td>
<td align="left" valign="top" width="60%">Offset to ASP numbers</td>
</tr>
<tr>
<td align="center" valign="top">4</td>
<td align="center" valign="top">4</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Number of ASP numbers</td>
</tr>
<tr>
<td align="center" valign="top">8</td>
<td align="center" valign="top">8</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">ASP operation option</td>
</tr>
<tr>
<td align="center" valign="top">12</td>
<td align="center" valign="top">C</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">Reserved (must be set to 0)</td>
</tr>
<tr>
<td align="left" valign="top" colspan="4"><strong>NOTE:</strong> The
following fields repeat the number of times specified in the number
of ASP numbers field.</td>
</tr>
<tr>
<td align="center" valign="top" colspan="2">&nbsp;</td>
<td align="left" valign="top">BINARY(4)</td>
<td align="left" valign="top">ASP number</td>
</tr>
</table>
<p><img src="deltaend.gif" alt="End of change"></p>
<br>
<h3><a name="HDRDMOPFLD">Field Descriptions</a></h3>
<p><img src="delta.gif" alt="Start of change"><strong>ASP number.</strong> The number identifying the Auxiliary Storage Pool
(ASP). Valid values range from 1 through 255. A value of 1 indicates the System
ASP. Values 2 through 32 indicate basic user ASPs. Values 33 through 255
indicate independent ASPs.<img src="deltaend.gif" alt="End of change"></p>
<p><img src="delta.gif" alt="Start of change"><strong>ASP operation option.</strong> An option that is operation
dependent. Valid values are:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">No operation option exists.
This is valid for all operations except suspend geographic mirroring.</td>
</tr>
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">Valid only for suspend geographic mirroring.
Changes to data on the production copy are to be tracked while geographic
mirroring is suspended. Tracking changes should result in less data being
sent to the mirror copy when geographic mirroring is resumed.</td>
</tr>
<tr>
<td align="left" valign="top"><em>2</em></td>
<td align="left" valign="top">Valid only for suspend geographic mirroring.
Changes to data on the production copy are not to be tracked while geographic
mirroring is suspended.<img src="deltaend.gif" alt="End of change"></td>
</tr>
</table>
<p><strong>ASP storage threshold.</strong> A percentage of used ASP storage
space that when reached will cause the system to issue a warning indicating the
space allocated to an ASP is almost full. Valid values range from 1 to 100
percent.</p>
<p><strong>Balance disk units flag.</strong> A boolean flag used to indicate if
the ASP capacity balancing function is to be applied. Valid values are:</p>
<table cellpadding="5">
<!-- cols="5 95" -->
<tr>
<td align="left" valign="top"><em>0</em></td>
<td align="left" valign="top">Do not apply the ASP capacity balancing
function</td>
</tr>
<tr>
<td align="left" valign="top"><em>1</em></td>
<td align="left" valign="top">Apply the ASP capacity balancing function</td>
</tr>
</table>
<p><strong><a name="HDRDP">Device position.</a></strong> The physical location
of a device within a tower. It is used with the Tower number field to identify
the slot where a device resides. These two fields combined may be used as an
alternative to the Disk unit resource name field for power on and power off
operations. If these two fields are used as an alternative to the disk unit
resource name, then the disk unit resource name field must be all blanks.</p>
<p><strong><a name="HDRDURN">Disk unit resource name</a>.</strong> A disk unit.
The system resource manager assigns a resource name to every hardware device
that is physically attached to the system. If the Tower number and the
Device positions fields are to be used as an alternative to the disk unit
resource name, then the Disk unit resource name field must be all
blanks.</p>
<p><img src="delta.gif" alt="Start of change"><strong>Number of ASP numbers.</strong> The quantity of ASP numbers
specified in the ASP number array.<img src="deltaend.gif" alt="End of change"></p>
<p><strong>Number of disk unit resource names.</strong> The number of Disk
unit resource names specified in the Disk unit resource name array.</p>
<p><strong>Offset to ASP numbers.</strong> The offset in bytes
from t<img src="delta.gif" alt="Start of change">he start of the operation variable to the first ASP number.<img src="deltaend.gif" alt="End of change"></p>
<p><strong>Offset to disk unit resource names.</strong> The offset in bytes
from the start of the operation variable to the first disk unit resource
name.</p>
<p><strong>Resource name of disk unit to be replaced.</strong> The disk unit
resource name of the disk unit that is to be replaced with a nonconfigured
disk unit.</p>
<p><strong>Resource name of new disk unit.</strong> The disk unit resource
name of the disk unit that is to replace a disk unit.</p>
<p><strong><a name="HDRTN">Tower number.</a></strong> Uniquely identifies a
tower on the system. It is used with the Device position field to identify
the slot in which a device resides. These two fields combined may be
used as an alternative to the Disk unit resource name field for power on
and power off operations. If these two fields are used as an alternative
to the disk unit resource name, then the Disk unit resource name field
must be all blanks.</p>
<br>
<h3>Error Messages</h3>
<table width="100%" cellpadding="5">
<!-- cols="15 85" -->
<tr>
<th align="left" valign="top">Message ID</th>
<th align="left" valign="top">Error Message Text</th>
</tr>
<tr>
<td align="left" valign="top" width="15%">CPF2277 E</td>
<td align="left" valign="top" width="85%">User &amp;1 not allowed to use
function &amp;2.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA20 E</td>
<td align="left" valign="top">Session handle not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA22 E</td>
<td align="left" valign="top">A save storage operation is in progress.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA23 E</td>
<td align="left" valign="top">Operation failed.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA24 E</td>
<td align="left" valign="top">Operation in progress.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA25 E</td>
<td align="left" valign="top">A general DASD management error occurred.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA26 E</td>
<td align="left" valign="top">ASP event threshold out of range.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA27 E</td>
<td align="left" valign="top">Could not restore mirrored data.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA28 E</td>
<td align="left" valign="top">Could not resume mirroring on disk unit
&amp;1.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA29 E</td>
<td align="left" valign="top">Could not suspend mirroring on disk unit
&amp;1.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA2A E</td>
<td align="left" valign="top">Disk unit &amp;1 not part of a mirrored set.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA2B E</td>
<td align="left" valign="top">Replacement disk unit &amp;1 still active.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA2C E</td>
<td align="left" valign="top">Replacement disk unit &amp;1 wrong type or
model.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA2D E</td>
<td align="left" valign="top">Replacement disk unit &amp;1 wrong capacity.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA2E E</td>
<td align="left" valign="top">Replacement disk unit &amp;1 already
configured.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA2F E</td>
<td align="left" valign="top">Disk unit &amp;1 could not be powered off.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA30 E</td>
<td align="left" valign="top">Disk unit &amp;1 could not be powered on.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA32 E</td>
<td align="left" valign="top">Disk unit &amp;1 not found.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA33 E</td>
<td align="left" valign="top">Tower not found.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA34 E</td>
<td align="left" valign="top">Device position not found.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA35 E</td>
<td align="left" valign="top">Disk unit &amp;1 configured.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA36 E</td>
<td align="left" valign="top">Add mirrored ASP failed - cannot pair units.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA37 E</td>
<td align="left" valign="top">Cannot add disk unit &amp;1 - already
configured.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA38 E</td>
<td align="left" valign="top">Cannot add unprotected disk unit &amp;1 to
protected ASP.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA39 E</td>
<td align="left" valign="top">Cannot add disk unit. This system has the maximum
number of disk units allowed.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA3A E</td>
<td align="left" valign="top">Create new ASP failed.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA3B E</td>
<td align="left" valign="top">ASP number out of range.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA3C E</td>
<td align="left" valign="top">Cannot replace parity disk unit &amp;1 - old disk
unit &amp;1 not in parity set.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA3D E</td>
<td align="left" valign="top">Cannot replace parity disk unit &amp;1 - new disk
unit in wrong position.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA3E E</td>
<td align="left" valign="top">Cannot replace parity disk unit &amp;1 - new disk
unit is wrong capacity.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA3F E</td>
<td align="left" valign="top">Cannot rebuild parity information.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA40 E</td>
<td align="left" valign="top">Disk unit &amp;1 not part of parity set.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA41 E</td>
<td align="left" valign="top">Device parity set not operational.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA42 E</td>
<td align="left" valign="top">Disk unit &amp;1 not eligible to be added to
device parity protection.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA43 F</td>
<td align="left" valign="top">Required fields not provided.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA44 E</td>
<td align="left" valign="top">Operation key not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA47 E</td>
<td align="left" valign="top">Session not active.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA48 E</td>
<td align="left" valign="top">Operation failed with unrecognized return code,
&amp;1.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA4A E</td>
<td align="left" valign="top">Format &amp;1 for operation key &amp;2 not
valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA4B E</td>
<td align="left" valign="top">Length of operation variable not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA4C E</td>
<td align="left" valign="top">Value for balance disk units flag not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA4D E</td>
<td align="left" valign="top">ASP number not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA4E E</td>
<td align="left" valign="top">ASP storage threshold value not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA4F E</td>
<td align="left" valign="top">Offset to disk unit resource name array not
valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA50 E</td>
<td align="left" valign="top">Number of disk unit resource names is out of
range.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA51 E</td>
<td align="left" valign="top">Array of disk unit resource names was not
provided.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA52 E</td>
<td align="left" valign="top">Wrong number of disk unit resource names.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA53 E</td>
<td align="left" valign="top">Unexpected authority validation error has
occurred.</td>
</tr>
<tr>
<td align="left" valign="top"><img src="delta.gif" alt="Start of change">CPFBA54 E</td>
<td align="left" valign="top">CRG not in correct state for operation.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA55 E</td>
<td align="left" valign="top">Geographic mirroring operation failed.</td>
</tr>
<tr>
<td align="left" valign="top">CPFBA56 E</td>
<td align="left" valign="top">DASD management operation failed.<img src="deltaend.gif" alt="End of change"></td>
</tr>
<tr>
<td align="left" valign="top">CPF3C21 E</td>
<td align="left" valign="top">Format name, &amp;1, is not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3C36 E</td>
<td align="left" valign="top">Number of parameters, &amp;1, entered for this
API was not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3CF1 E</td>
<td align="left" valign="top">Error code parameter not valid.</td>
</tr>
<tr>
<td align="left" valign="top">CPF3CF2 E</td>
<td align="left" valign="top">Error(s) occurred during running of &amp;1
API.</td>
</tr>
</table>
<br>
<hr>
API introduced: V4R5
<hr>
<center>
<table cellpadding="2" cellspacing="2">
<tr align="center">
<td valign="middle" align="center">
<a href="#Top_Of_Page">Top</a> |
<a href="config.htm">Configuration APIs</a> |
<a href="aplist.htm">APIs by category</a></td>
</tr>
</table>
</center>
</body>
</html>