git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
linux 2.6.16.38 w/ vs2.0.3-rc1
[linux-2.6.git]
/
drivers
/
infiniband
/
core
/
mad_priv.h
diff --git
a/drivers/infiniband/core/mad_priv.h
b/drivers/infiniband/core/mad_priv.h
index
d147f3b
..
570f786
100644
(file)
--- a/
drivers/infiniband/core/mad_priv.h
+++ b/
drivers/infiniband/core/mad_priv.h
@@
-31,13
+31,12
@@
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*
- * $Id: mad_priv.h
5596 2006-03-03 01:00:07
Z sean.hefty $
+ * $Id: mad_priv.h
2730 2005-06-28 16:43:03
Z sean.hefty $
*/
#ifndef __IB_MAD_PRIV_H__
#define __IB_MAD_PRIV_H__
*/
#ifndef __IB_MAD_PRIV_H__
#define __IB_MAD_PRIV_H__
-#include <linux/completion.h>
#include <linux/pci.h>
#include <linux/kthread.h>
#include <linux/workqueue.h>
#include <linux/pci.h>
#include <linux/kthread.h>
#include <linux/workqueue.h>
@@
-86,12
+85,6
@@
struct ib_mad_private {
} mad;
} __attribute__ ((packed));
} mad;
} __attribute__ ((packed));
-struct ib_rmpp_segment {
- struct list_head list;
- u32 num;
- u8 data[0];
-};
-
struct ib_mad_agent_private {
struct list_head agent_list;
struct ib_mad_agent agent;
struct ib_mad_agent_private {
struct list_head agent_list;
struct ib_mad_agent agent;
@@
-109,7
+102,7
@@
struct ib_mad_agent_private {
struct list_head rmpp_list;
atomic_t refcount;
struct list_head rmpp_list;
atomic_t refcount;
-
struct completion comp
;
+
wait_queue_head_t wait
;
};
struct ib_mad_snoop_private {
};
struct ib_mad_snoop_private {
@@
-118,7
+111,7
@@
struct ib_mad_snoop_private {
int snoop_index;
int mad_snoop_flags;
atomic_t refcount;
int snoop_index;
int mad_snoop_flags;
atomic_t refcount;
-
struct completion comp
;
+
wait_queue_head_t wait
;
};
struct ib_mad_send_wr_private {
};
struct ib_mad_send_wr_private {
@@
-126,8
+119,7
@@
struct ib_mad_send_wr_private {
struct list_head agent_list;
struct ib_mad_agent_private *mad_agent_priv;
struct ib_mad_send_buf send_buf;
struct list_head agent_list;
struct ib_mad_agent_private *mad_agent_priv;
struct ib_mad_send_buf send_buf;
- DECLARE_PCI_UNMAP_ADDR(header_mapping)
- DECLARE_PCI_UNMAP_ADDR(payload_mapping)
+ DECLARE_PCI_UNMAP_ADDR(mapping)
struct ib_send_wr send_wr;
struct ib_sge sg_list[IB_MAD_SEND_REQ_MAX_SG];
__be64 tid;
struct ib_send_wr send_wr;
struct ib_sge sg_list[IB_MAD_SEND_REQ_MAX_SG];
__be64 tid;
@@
-138,12
+130,11
@@
struct ib_mad_send_wr_private {
enum ib_wc_status status;
/* RMPP control */
enum ib_wc_status status;
/* RMPP control */
- struct list_head rmpp_list;
- struct ib_rmpp_segment *last_ack_seg;
- struct ib_rmpp_segment *cur_seg;
int last_ack;
int seg_num;
int newwin;
int last_ack;
int seg_num;
int newwin;
+ int total_seg;
+ int data_offset;
int pad;
};
int pad;
};
@@
-212,11
+203,12
@@
struct ib_mad_port_private {
struct ib_mad_qp_info qp_info[IB_MAD_QPS_CORE];
};
struct ib_mad_qp_info qp_info[IB_MAD_QPS_CORE];
};
+extern kmem_cache_t *ib_mad_cache;
+
int ib_send_mad(struct ib_mad_send_wr_private *mad_send_wr);
struct ib_mad_send_wr_private *
int ib_send_mad(struct ib_mad_send_wr_private *mad_send_wr);
struct ib_mad_send_wr_private *
-ib_find_send_mad(struct ib_mad_agent_private *mad_agent_priv,
- struct ib_mad_recv_wc *mad_recv_wc);
+ib_find_send_mad(struct ib_mad_agent_private *mad_agent_priv, __be64 tid);
void ib_mad_complete_send_wr(struct ib_mad_send_wr_private *mad_send_wr,
struct ib_mad_send_wc *mad_send_wc);
void ib_mad_complete_send_wr(struct ib_mad_send_wr_private *mad_send_wr,
struct ib_mad_send_wc *mad_send_wc);