umad_set_grh

Langue: en

Version: May 24, 2007 (fedora - 05/07/09)

Section: 3 (Bibliothèques de fonctions)

NAME

umad_set_grh - set GRH fields within umad buffer using host ordering

SYNOPSIS

 #include <infiniband/umad.h>
 
 int umad_set_grh(void *umad, void *mad_addr);
 

DESCRIPTION

umad_set_grh() sets the GRH fields (grh_present, gid, hop_limit, traffic_class, flow_label) within the specified umad buffer based on the mad_addr supplied. The provided mad_addr fields are expected to be in host order. If the mad_addr pointer supplied is NULL, no GRH is set. The argument mad_addr is a pointer to an ib_mad_addr_t struct, as specified in <infiniband/umad.h>. The argument umad is a pointer to an ib_user_mad_t struct, as specified in <infiniband/umad.h>.
 typedef struct ib_mad_addr {
 uint32_t qpn;
 uint32_t qkey;
 uint16_t lid;
 uint8_t  sl;
 uint8_t  path_bits;
 uint8_t  grh_present;
 uint8_t  gid_index;
 uint8_t  hop_limit;
 uint8_t  traffic_class;
 uint8_t  gid[16];
 uint32_t flow_label;
 } ib_mad_addr_t;
 
 typedef struct ib_user_mad {
 uint32_t agent_id;
 uint32_t status;
 uint32_t timeout_ms;
 uint32_t retries;
 uint32_t length;
 ib_mad_addr_t addr;
 uint8_t  data[0];
 } ib_user_mad_t;
 

RETURN VALUE

umad_set_grh() returns 0 on success, and a negative value on errors. Currently, there are no errors indicated.

SEE ALSO

umad_set_grh_net(3)

AUTHOR

Hal Rosenstock <halr@voltaire.com>