lsm_pool_member_info(3)

πŸ“¦
version 1.10.3 Β· 3 versions
, in fedora 43, fedora 44

πŸ’– lsm_pool_member_info β€” the libstoragemgmt C API manual, bestie edition πŸ’–

okay so this one lives in the Libstoragemgmt C API Manual, and it's called lsm_pool_member_info. It's giving "tell me who's in this pool's friend group" energy. Let's go 🫢


✨ NAME ✨

lsm_pool_member_info β€” retrieves the membership of given pool.

like. literally who is in this pool. who are its people. πŸ’…


🌸 SYNOPSIS 🌸

int lsm_pool_member_info (lsm_connect *conn, lsm_pool *pool,
lsm_volume_raid_type *raid_type, lsm_pool_member_type *member_type,
lsm_string_list **member_ids, lsm_flag flags);

πŸŽ€ ARGUMENTS πŸŽ€

  • conn β€” a valid connection. it has to be real, bestie, no imaginary friends.
  • pool β€” the pointer of lsm_pool. the pool we're investigating πŸ‘€
  • raid_type β€” an lsm_volume_raid_type. the valid values are, and I'm listing every single one because we don't gatekeep:
    • LSM_VOLUME_RAID_TYPE_RAID0 β€” Stripe.
    • LSM_VOLUME_RAID_TYPE_RAID1 β€” Two disks Mirror
    • LSM_VOLUME_RAID_TYPE_RAID3 β€” Byte-level striping with dedicated parity
    • LSM_VOLUME_RAID_TYPE_RAID4 β€” Block-level striping with dedicated parity
    • LSM_VOLUME_RAID_TYPE_RAID5 β€” Block-level striping with distributed parity
    • LSM_VOLUME_RAID_TYPE_RAID6 β€” Block-level striping with two distributed parities, aka, RAID-DP
    • LSM_VOLUME_RAID_TYPE_RAID10 β€” Stripe of mirrors
    • LSM_VOLUME_RAID_TYPE_RAID15 β€” Parity of mirrors
    • LSM_VOLUME_RAID_TYPE_RAID16 β€” Dual parity of mirrors
    • LSM_VOLUME_RAID_TYPE_RAID50 β€” Stripe of parities
    • LSM_VOLUME_RAID_TYPE_RAID60 β€” Stripe of dual parities
    • LSM_VOLUME_RAID_TYPE_RAID51 β€” Mirror of parities
    • LSM_VOLUME_RAID_TYPE_RAID61 β€” Mirror of dual parities
    • LSM_VOLUME_RAID_TYPE_JBOD β€” Just bunch of disks, no parity, no striping. chaotic. iconic. no notes.
    • LSM_VOLUME_RAID_TYPE_UNKNOWN β€” The plugin failed to detect the volume's RAID type. 😭
    • LSM_VOLUME_RAID_TYPE_MIXED β€” This volume contains multiple RAID settings.
    • LSM_VOLUME_RAID_TYPE_OTHER β€” Vendor specific RAID type
  • member_type β€” an lsm_pool_member_type. valid values, again, all of them:
    • LSM_POOL_MEMBER_TYPE_POOL β€” Current pool (also known as sub-pool) is allocated from other pool (parent pool). The 'raid_type' will set to RAID_TYPE_OTHER unless certain RAID system support RAID using space of parent pools.
    • LSM_POOL_MEMBER_TYPE_DISK β€” Pool is created from RAID group using whole disks.
    • LSM_POOL_MEMBER_TYPE_OTHER β€” Vendor specific RAID member type.
    • LSM_POOL_MEMBER_TYPE_UNKNOWN β€” Plugin failed to detect the RAID member type.
  • member_ids β€” Pointer of lsm_string_list. When 'member_type' is LSM_POOL_MEMBER_TYPE_POOL, the 'member_ids' will contain a list of parent Pool IDs. When 'member_type' is LSM_POOL_MEMBER_TYPE_DISK, the 'member_ids' will contain a list of disk IDs. When 'member_type' is LSM_POOL_MEMBER_TYPE_OTHER or LSM_POOL_MEMBER_TYPE_UNKNOWN, the member_ids should be NULL. Memory need to be freed via lsm_string_list_free. 🫢 don't leak, bestie, that's not the vibe.
  • flags β€” Reserved for future use, must be LSM_CLIENT_FLAG_RSVD. it's not for you yet, it's reserved. hands off. βœ‹

πŸ¦‹ VERSION πŸ¦‹

1.2.


πŸ’œ DESCRIPTION πŸ’œ

Retrieves the membership information of certain pool: RAID type, member type and member ids. Currently, LibStorageMgmt supports two types of pool, and they're both a little bit main character in their own way:

  • Sub-pool β€” LSM_POOL_MEMBER_TYPE_POOL
    • Pool space is allocated from parent pool.
    • Example:
      • NetApp ONTAP volume
  • Disk RAID pool β€” LSM_POOL_MEMBER_TYPE_DISK
    • Pool is a RAID group assembled by disks.
    • Example:
      • LSI MegaRAID disk group
      • EMC VNX pool
      • NetApp ONTAP aggregate

so like. one of them borrows space from its parent (it's giving living at home), and the other one is a whole RAID group made of actual disks. both valid. both slay. πŸ’…


🌈 CAPABILITY 🌈

LSM_CAP_POOL_MEMBER_INFO


⭐ RETURN ⭐

Error code as enumerated by 'lsm_error_number'. the whole roster:

  • LSM_ERR_OK β€” On success. πŸŽ‰ we ate.
  • LSM_ERR_INVALID_ARGUMENT β€” When any argument is NULL or invalid flags.
  • LSM_ERR_NO_SUPPORT β€” Not supported. πŸ’€

ngl bestie, if you pass a NULL anywhere or get cute with flags, LSM_ERR_INVALID_ARGUMENT is coming for you. and remember: when member_type is LSM_POOL_MEMBER_TYPE_OTHER or LSM_POOL_MEMBER_TYPE_UNKNOWN, member_ids should be NULL β€” and the memory you do get needs to be freed via lsm_string_list_free. periodt. ✨

okay that's the whole page! this dropped in February 2026, it's lsm_pool_member_info from the Libstoragemgmt C API Manual, and that's the tea. go check your pool's membership, you've got this πŸ§šπŸ’–

πŸ“¦ where this page comes from