During initialization of GPFS, it is necessary to synchronize the GPFS daemon and the DM application to ensure mount operations will not fail. There are two mechanisms to accomplish this:
During GPFS initialization, the daemon invokes the shell script gpfsready, located in directory var/mmfs/etc. This occurs as the file systems are starting to be mounted. The shell script can be programmed to start (or restart) the DM application. Upon return from this script, a session should have been created and a disposition set for the mount event. Otherwise, mount operations may fail due to a lack of disposition.
In a multinode environment such as GPFS, usually only a small subset of the nodes are session nodes, having DM applications running locally. On a node that is not a session node, the gpfsready script can be programmed to synchronize between the local GPFS daemon and a remote DM application. This will prevent mount from failing on any node.
A sample shell script gpfsready.sample is installed in directory /user/lpp/mmfs/samples.
If no mount disposition has ever been set in the nodeset, the first external mount of a DMAPI-enabled file system on each node will activate a time-out interval on that node. Any mount operation on that node that starts during the time-out interval will wait for the mount disposition until the timeout expires. The time-out interval is configurable, using the GPFS configuration option dmapiMountTimeout (the interval can even be made infinite). A message is displayed at the beginning of the wait. If there is still no disposition for the mount event when the time-out expires, the mount operation will fail with an EIO error code. See "GPFS configuration options for DMAPI" for more information on dmapiMountTimeout.