z/OS UNIX System Services File System Interface Reference
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Sysplex considerations

z/OS UNIX System Services File System Interface Reference
SA23-2285-00

If the PFS allows the LFS to share its files in a sysplex Shared File System configuration, the following additional considerations apply to cross-system support:
  • If an LFS client system leaves the sysplex, all opens that were done at the LFS owner for users at the lost client are closed. These closes must be correlated by the PFS to the open context to which they belong. The following interface is used to accomplish this:
    • On vn_open from the LFS owner to the PFS, the client's sysid will be passed in the osi_otsysid field. This is a 1-byte value that the PFS saves within its open context.
    • If the LFS client system leaves the sysplex, the LFS makes one call to vn_close for each vnode, and on that call it passes the client's sysid in the osi_otsysid field. No other operations run on this vnode at this time.

      The PFS should scan through all its open contexts for this file and perform vn_close processing for each one that has a matching client sysid. The difference between this type of vn_close and a regular vn_close that passes a regular Open_token is that the first seven bytes of this Open_token field are zero. The PFS must insure that its Open_tokens use more than just the last byte of the 8-byte token field.

    Note: The PFS is also responsible for cleaning up any remaining open contexts on vn_inact of a vnode. These open contexts can persist for a long period of time. To avoid accumulating an indeterminate number of orphaned open contexts in the PFS, this vn_close is done when an LFS client abnormally terminates.
  • If an LFS client system is at an earlier release level where the Open_token is not supported, the client does not store or pass back the Open_token. Consequently, all vnode operations from the LFS owner to the PFS for this client will pass a 0 for the Open_token.

    Since the Open_token is not usable in this configuration, a flag, osi_otstateless, is passed to the PFS on vn_open to indicate that this is a "stateless" client, and the PFS does not return an Open_token or expect one to be passed to it on future vnode operations. The osi_otstateless flag is also set for vn_closes from this client.

  • If an LFS server system leaves the sysplex, current vnode references at the remaining client systems are broken, and current users receive RC=EIO for any future file operations.
To summarize, the following information can be passed to the PFS in the osi_opentoken field:
  • For vn_open:
    0
    A non-sysplex open() or a local open() at the LFS owner.
    sysid
    A remote LFS client open being done at an LFS owner.
    sysid & stateless
    An open from an LFS client that does not support open tokens is being done at an LFS owner.
  • For vn_close:
    Open_token
    A regular vn_close when the Open_token is available.
    sysid
    A mass vn_close at an LFS owner for all opens from that sysid.
    sysid & stateless
    A vn_close from an LFS client that does not support open tokens is being done at an LFS owner.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014