IBV_SET_ECE(3)

πŸ’… IBV_SET_ECE β€” bestie, let's talk ECE

okay so real quick, this whole page is from the Libibverbs Programmer's Manual and it's literally about ibv_set_ece β€” the little verb that sets your ECE options and then actually uses them at the QP configuration stage. it's giving "set it and let the QP cook" ✨

✨ NAME ✨

ibv_set_ece β€” set ECE options and use them for QP configuration stage.

periodt, that's the whole vibe.

πŸ¦‹ SYNOPSIS πŸ¦‹

#include <infiniband/verbs.h>

int ibv_set_ece(struct ibv_qp *qp, struct ibv_ece *ece);

🌸 DESCRIPTION 🌸

so ibv_set_ece() sets ECE options and uses them for the QP configuration stage. no cap, that's the job πŸ’–

the desired ECE options get used during various modify QP stages, based on which options are supported in the relevant QP state. iykyk β€” it's state-dependent, bestie.

πŸŽ€ ARGUMENTS πŸŽ€

  • qp β€” the queue pair (QP) that's associated with the ECE options.

πŸ’œ ece Argument πŸ’œ

the requested ECE values. this is an IN/OUT field, which means the accepted options get returned right back in this same field. slay, bidirectional communication 🫢

struct ibv_ece {
    uint32_t vendor_id;
    uint32_t options;
    uint32_t comp_mask;
};
  • vendor_id β€” unique identifier of the provider vendor on the network. providers set the IEEE OUI here so they can distinguish themselves in a non-homogenius network. iconic self-identification moment πŸ‘‘
  • options β€” provider specific attributes which are supported or needed to be enabled by ECE users.
  • comp_mask β€” bitmask specifying what fields in the structure are valid.

πŸ”₯ RETURN VALUE πŸ”₯

ibv_set_ece() returns 0 when the call was successful, or the errno value which indicates the failure reason. so 0 = we ate, anything else = something went sideways 😭

  • EOPNOTSUPP β€” libibverbs or the provider driver doesn't support the ibv_set_ece() verb. literally not supported, don't come for it πŸ’€
  • EINVAL β€” in one of the following:
    • the QP is invalid.
    • the ECE options are invalid.
fr fr, check both before you blame the driver.

🌈 SEE ALSO 🌈

ibv_query_ece(3),

(yes, there's a trailing comma in the original, i don't make the rules πŸŽ€)

πŸ‘‘ AUTHOR πŸ‘‘

Leon Romanovsky <leonro@mellanox.com>


okay bestie that's the whole page, go forth and configure your QPs πŸ’…βœ¨

sign-off from the libibverbs era, dated 2020-01-22 β€” this manpage is literally a whole vibe, main character energy from start to finish πŸ¦‹πŸ’–

πŸ“¦ where this page comes from