Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions | Variables
ipath_mad.c File Reference
#include <rdma/ib_smi.h>
#include <rdma/ib_pma.h>
#include "ipath_kernel.h"
#include "ipath_verbs.h"
#include "ipath_common.h"

Go to the source code of this file.

Data Structures

struct  nodeinfo


#define IB_SMP_UNSUP_VERSION   cpu_to_be16(0x0004)
#define IB_SMP_UNSUP_METHOD   cpu_to_be16(0x0008)
#define IB_SMP_UNSUP_METH_ATTR   cpu_to_be16(0x000C)
#define IB_SMP_INVALID_FIELD   cpu_to_be16(0x001C)
#define COUNTER_MASK(q, n)   (q << ((9 - n) * 3))
#define COUNTER_MASK0_9


struct nodeinfo __attribute__ ((packed))
int ipath_process_mad (struct ib_device *ibdev, int mad_flags, u8 port_num, struct ib_wc *in_wc, struct ib_grh *in_grh, struct ib_mad *in_mad, struct ib_mad *out_mad)


u8 base_version
u8 class_version
u8 node_type
u8 num_ports
__be64 sys_guid
__be64 node_guid
__be64 port_guid
__be16 partition_cap
__be16 device_id
__be32 revision
u8 local_port_num
u8 vendor_id [3]

Macro Definition Documentation

#define COUNTER_MASK (   q,
)    (q << ((9 - n) * 3))

Definition at line 821 of file ipath_mad.c.

#define COUNTER_MASK0_9
COUNTER_MASK(1, 1) | \
COUNTER_MASK(1, 2) | \
COUNTER_MASK(1, 3) | \

Definition at line 822 of file ipath_mad.c.

#define IB_SMP_INVALID_FIELD   cpu_to_be16(0x001C)

Definition at line 44 of file ipath_mad.c.

#define IB_SMP_UNSUP_METH_ATTR   cpu_to_be16(0x000C)

Definition at line 43 of file ipath_mad.c.

#define IB_SMP_UNSUP_METHOD   cpu_to_be16(0x0008)

Definition at line 42 of file ipath_mad.c.

#define IB_SMP_UNSUP_VERSION   cpu_to_be16(0x0004)

Definition at line 41 of file ipath_mad.c.

Function Documentation

struct nodeinfo __attribute__ ( (packed)  )

Definition at line 171 of file esd_usb2.c.

int ipath_process_mad ( struct ib_device ibdev,
int  mad_flags,
u8  port_num,
struct ib_wc in_wc,
struct ib_grh in_grh,
struct ib_mad in_mad,
struct ib_mad out_mad 

ipath_process_mad - process an incoming MAD packet : the infiniband device this packet came in on : MAD flags : the port number this packet came in on : the work completion entry for this packet : the global route header for this packet : the incoming MAD : any outgoing MAD reply

Returns IB_MAD_RESULT_SUCCESS if this is a MAD that we are not interested in processing.

Note that the verbs framework has already done the MAD sanity checks, and hop count/pointer updating for IB_MGMT_CLASS_SUBN_DIRECTED_ROUTE MADs.

This is called by the ib_mad module.

Definition at line 1486 of file ipath_mad.c.

Variable Documentation

u8 base_version

Definition at line 83 of file ipath_mad.c.

u8 class_version

Definition at line 84 of file ipath_mad.c.

__be16 device_id

Definition at line 91 of file ipath_mad.c.

u8 local_port_num

Definition at line 93 of file ipath_mad.c.

__be64 node_guid

Definition at line 88 of file ipath_mad.c.

Definition at line 85 of file ipath_mad.c.

u8 num_ports

Definition at line 86 of file ipath_mad.c.

__be16 partition_cap

Definition at line 90 of file ipath_mad.c.

__be64 port_guid

Definition at line 89 of file ipath_mad.c.

Definition at line 92 of file ipath_mad.c.

__be64 sys_guid

Definition at line 87 of file ipath_mad.c.

u8 vendor_id[3]

Definition at line 94 of file ipath_mad.c.