HBA_GetFcpPersistentBinding, HBA_GetPersistentBindingV2, HBA_SetPersistentBindingV2, HBA_RemovePersistentBinding, HBA_RemoveAllPersistentBindings - handle persistent bindings between FCP-2 discovered devices and operating system SCSI information
cc [ flag... ] file... -lHBAAPI [ library... ] #include <hbaapi.h> HBA_STATUS HBA_GetFcpPersistentBinding(HBA_HANDLE handle, HBA_FCPBINDING *binding);
HBA_STATUS HBA_GetPersistentBindingV2(HBA_HANDLE handle, HBA_WWN hbaPortWWN, HBA_FCPBINDING2 *binding);
HBA_STATUS HBA_SetPersistentBindingV2(HBA_HANDLE handle, HBA_WWN hbaPortWWN, HBA_FCPBINDING2 *binding);
HBA_STATUS HBA_RemovePersistentBinding(HBA_HANDLE handle, HBA_WWN hbaPortWWN, HBA_FCPBINDING2 *binding);
HBA_STATUS HBA_RemoveAllPersistentBindings(HBA_HANDLE handle, HBA_WWN hbaPortWWN);
handle
binding
HBA_GetFcpPersistentBinding()
HBA_GetPersistentBindingV2()
HBA_SetPersistentBindingV2()
HBA_RemovePersistentBinding()
hbaPortWWN
HBA_GetPersistentBindingV2()
HBA_SetPersistentBindingV2()
HBA_RemovePersistentBinding()
HBA_RemoveAllPersistentBindings()
The HBA_GetFcpPersistentBinding() function retrieves the set of mappings between FCP LUNs and SCSI LUNs that are reestablished upon initialization or reboot. The means of establishing the persistent bindings is vendor-specific and accomplished outside the scope of the HBA API.
The HBA_GetPersistentBindingV2() function retrieves the set of persistent bindings between FCP LUNs and SCSI LUNs for the specified HBA Port that are reestablished upon initialization or reboot. The means of establishing the persistent bindings is vendor-specific and accomplished outside the scope of the HBA API. The binding information can contain bindings to Logical Unit Unique Device Identifiers.
The HBA_SetPersistentBindingV2() function sets additional persistent bindings between FCP LUNs and SCSI LUNs for the specified HBA Port. It can also accept bindings to Logical Unit Unique Device Identifiers. Bindings already set will remain set. An error occurs if a request is made to bind to an OS SCSI ID which has already been bound. Persistent bindings will not affect Target Mappings until the OS, HBA, and/or Fabric has been reinitialized. Before then, the effects are not specified.
The HBA_RemovePersistentBinding() function removes one or more persistent bindings. The persistent binding will only be removed if both the OS SCSI LUN and the SCSI Lun match a binding specifed in the arguments. Persistent bindings removed will not affect Target Mappings until the OS, HBA, and/or Fabric has been reinitialized. Before then, the effects are not specified.
The HBA_RemoveAllPersistentBindings() function removes all persistent bindings. Persistent bindings removed will not affect Target Mappings until the OS, HBA, and/or Fabric has been reinitialized. Before then, the effects are not specified.
The HBA_GetFcpPersistentBinding() function returns the following values:
HBA_STATUS_OK
HBA_STATUS_ERROR_MORE_DATA
HBA_STATUS_ERROR_NOT_SUPPORTED
In the event that other error codes are returned, the value of binding->NumberOfEntries after the call should be checked, and if greater than the value before the call, a larger buffer should be allocated for a retry of the routine.
The HBA_GetPersistentBindingV2() function returns the following values:
HBA_STATUS_OK
HBA_STATUS_ERROR_MORE_DATA
HBA_STATUS_ERROR_ILLEGAL_WWN
HBA_STATUS_ERROR_NOT_SUPPORTED
The value of binding remains unchanged. The structure it points to contains binding information. The number of entries returned is the minimum between the number of entries specifed in the binding argument and the total number of bindings.
The HBA_SetPersistentBindingV2() function returns the following values.
HBA_STATUS_OK
HBA_STATUS_ERROR_ILLEGAL_WWN
HBA_STATUS_ERROR_NOT_SUPPORTED
The value of binding remains unchanged. The success or failure of each Persistent binding set is indicated in the Status member of the HBA_FCPBINDINGENTRY2 structure.
The HBA_RemovePersistentBinding() function returns the following values:
HBA_STATUS_OK
HBA_STATUS_ERROR_ILLEGAL_WWN
HBA_STATUS_ERROR_NOT_SUPPORTED
The value of binding remains unchanged. The success or failure of each Persistent binding set is indicated in the Status member of the HBA_FCPBINDINGENTRY2 structure.
The HBA_RemoveAllPersistentBindings() function returns the following values:
HBA_STATUS_OK
HBA_STATUS_ERROR_ILLEGAL_WWN
HBA_STATUS_ERROR_NOT_SUPPORTED
See libhbaapi(3LIB) for general error status values.
See attributes(5) for descriptions of the following attributes:
|
HBA_GetFcpTargetMapping(3HBAAPI), HBA_OpenAdapter(3HBAAPI), libhbaapi(3LIB), attributes(5)
The HBA_GetFcpTargetMapping(3HBAAPI) and HBA_GetFcpPersistentBinding() functions do not take a portindex to define to which port of a multi-ported HBA the command should apply. The behavior on multi-ported HBAs is vendor-specific and could result in mappings or bindings for all ports being intermixed in the response buffer. SNIA version 2 defines a HBA_GetFcpTargetMappingV2() that takes a Port WWN as an argument. This fixes the bug with multi-ported HBAs in HBA_GetFcpTargetMapping().
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |