gpfsSetStoragePool_t structure

Sets the assigned storage pool of a file.

Library

GPFS Library (libgpfs.a for AIX®, libgpfs.so for Linux®)

Structure

typedef struct {
	int structLen;
	int structType;
	int errReason;
	int errValue1;
	int errValue2;
	int reserved;
	char buffer[GPFS_FCNTL_MAX_NAME_BUFFER];
} gpfsSetStoragePool_t;

Description

The gpfsSetStoragePool_t structure is used to set a file's assigned storage pool. However, the directive does not cause the file data to be migrated immediately. Instead, the caller must append a gpfsRestripeData_t directive or invoke an explicit restripe with the mmrestripefs or mmrestripefile command. The caller must have su or root privileges to change a storage pool assignment.

Members

structLen
Length of the gpfsSetStoragePool_t structure.
structType
Structure identifier GPFS_FCNTL_SET_STORAGEPOOL.
errReason
Reason code describing the failure. Possible codes are defined in Error status.
errValue1
Returned value depending upon errReason.
errValue2
Returned value depending upon errReason.
reserved
Unused, but should be set to 0.
buffer
The name of the storage pool for the file's data. Only user files may be reassigned to different storage pool. System files, including all directories, must reside in the system pool and may not be moved. The size of the buffer may vary, but must be a multiple of eight.

Error status

These values are returned in the errReason field:
GPFS_FCNTL_ERR_NONE
Command was successful or no reason information was returned.
GPFS_FCNTL_ERR_NOPERM
User does not have permission to perform the requested operation.
GPFS_FCNTL_ERR_INVALID_STORAGE_POOL
Invalid storage pool name was given.
GPFS_FCNTL_ERR_INVALID_STORAGE_POOL_TYPE
Invalid storage pool. File cannot be assigned to given pool.
GPFS_FCNTL_ERR_INVALID_STORAGE_POOL_ISDIR
Invalid storage pool. Directories cannot be assigned to given pool.
GPFS_FCNTL_ERR_INVALID_STORAGE_POOL_ISLNK
Invalid storage pool. System files cannot be assigned to given pool.
GPFS_FCNTL_ERR_INVALID_STORAGE_POOL_ISSYS
Invalid storage pool. System files cannot be assigned to given pool.
GPFS_FCNTL_ERR_STORAGE_POOL_NOTENABLED
File system has not been upgraded to support storage pools.

Location

/usr/lpp/mmfs/lib/libgpfs.a for AIX

/usr/lpp/mmfs/lib/libgpfs.so for Linux