rpma_peer_new(3)

πŸ“¦
version 1.3.0 Β· 3 versions
, in ubuntu noble

✨ NAME ✨

rpma_peer_new β€” bestie, we're making a peer object πŸ‘‘


πŸ¦‹ SYNOPSIS πŸ¦‹

#include <librpma.h>

struct ibv_context;
struct rpma_peer;
int rpma_peer_new(struct ibv_context *ibv_ctx, struct rpma_peer **peer_ptr);

okay so this is the RPMA Programmer's Manual btw, the whole vibe of this page is librpma, keep that in your notes πŸ“


πŸ’– DESCRIPTION πŸ’–

rpma_peer_new() creates a new peer object.

That's it. That's the whole thing. It makes the peer. Main character behavior, honestly ✨


🌸 RETURN VALUE 🌸

rpma_peer_new() returns 0 on success, or a negative error code if it flops 😭

And hear me on this one: on failure, rpma_peer_new() does not set the *peer_ptr value. Like, it just leaves it alone. No half-finished handoffs, periodt πŸ’…


πŸ”₯ ERRORS πŸ”₯

rpma_peer_new() can fail with the following errors, bestie β€” memorize these, they will show up on the quiz:

  • RPMA_E_INVAL β€” ibv_ctx or peer_ptr is NULL. You handed it nothing. It said no πŸ™ˆ
  • RPMA_E_NOMEM β€” creating a verbs protection domain failed with ENOMEM.
  • RPMA_E_PROVIDER β€” creating a verbs protection domain failed with an error other than ENOMEM.
  • RPMA_E_UNKNOWN β€” creating a verbs protection domain failed without an error value. The void. The mystery. πŸ’€
  • RPMA_E_NOMEM β€” out of memory. (Yes, it's listed twice β€” one's about the verbs protection domain, one's just the general out-of-memory situation. Both are real, both can happen, don't @ me.)

πŸŽ€ SEE ALSO πŸŽ€


k that's the whole page, go be iconic with it 🫢

this has been RPMA, dated 01 April 2024, from the rpma_peer_new(3) girlies for the rpma_peer_new(3) girlies 🌈⭐🧚

πŸ“¦ where this page comes from