Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
linux-davinci
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
linux
linux-davinci
Commits
cc9969c9
Commit
cc9969c9
authored
Jul 26, 2008
by
Roland Dreier
Browse files
Options
Browse Files
Download
Plain Diff
Merge branches 'bkl-removal', 'ipoib', 'mlx4' and 'nes' into for-linus
parents
5ba18b18
99059224
51a379d0
6492cdf3
Changes
31
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
31 changed files
with
1195 additions
and
951 deletions
+1195
-951
drivers/infiniband/hw/mlx4/cq.c
drivers/infiniband/hw/mlx4/cq.c
+1
-0
drivers/infiniband/hw/mlx4/main.c
drivers/infiniband/hw/mlx4/main.c
+1
-0
drivers/infiniband/hw/mlx4/mlx4_ib.h
drivers/infiniband/hw/mlx4/mlx4_ib.h
+1
-0
drivers/infiniband/hw/mlx4/mr.c
drivers/infiniband/hw/mlx4/mr.c
+1
-0
drivers/infiniband/hw/mlx4/qp.c
drivers/infiniband/hw/mlx4/qp.c
+1
-0
drivers/infiniband/hw/mlx4/srq.c
drivers/infiniband/hw/mlx4/srq.c
+1
-0
drivers/infiniband/hw/mlx4/user.h
drivers/infiniband/hw/mlx4/user.h
+1
-0
drivers/infiniband/hw/nes/nes.c
drivers/infiniband/hw/nes/nes.c
+1
-3
drivers/infiniband/hw/nes/nes_cm.c
drivers/infiniband/hw/nes/nes_cm.c
+1135
-899
drivers/infiniband/hw/nes/nes_cm.h
drivers/infiniband/hw/nes/nes_cm.h
+20
-3
drivers/infiniband/hw/nes/nes_hw.c
drivers/infiniband/hw/nes/nes_hw.c
+0
-9
drivers/infiniband/hw/nes/nes_verbs.c
drivers/infiniband/hw/nes/nes_verbs.c
+0
-15
drivers/infiniband/ulp/ipoib/Kconfig
drivers/infiniband/ulp/ipoib/Kconfig
+12
-10
drivers/net/mlx4/alloc.c
drivers/net/mlx4/alloc.c
+1
-0
drivers/net/mlx4/catas.c
drivers/net/mlx4/catas.c
+1
-0
drivers/net/mlx4/cmd.c
drivers/net/mlx4/cmd.c
+1
-1
drivers/net/mlx4/cq.c
drivers/net/mlx4/cq.c
+1
-1
drivers/net/mlx4/eq.c
drivers/net/mlx4/eq.c
+1
-1
drivers/net/mlx4/fw.c
drivers/net/mlx4/fw.c
+1
-1
drivers/net/mlx4/fw.h
drivers/net/mlx4/fw.h
+1
-1
drivers/net/mlx4/icm.c
drivers/net/mlx4/icm.c
+1
-1
drivers/net/mlx4/icm.h
drivers/net/mlx4/icm.h
+1
-1
drivers/net/mlx4/intf.c
drivers/net/mlx4/intf.c
+1
-0
drivers/net/mlx4/main.c
drivers/net/mlx4/main.c
+1
-1
drivers/net/mlx4/mcg.c
drivers/net/mlx4/mcg.c
+1
-0
drivers/net/mlx4/mlx4.h
drivers/net/mlx4/mlx4.h
+1
-1
drivers/net/mlx4/mr.c
drivers/net/mlx4/mr.c
+1
-1
drivers/net/mlx4/qp.c
drivers/net/mlx4/qp.c
+1
-1
drivers/net/mlx4/reset.c
drivers/net/mlx4/reset.c
+1
-0
drivers/net/mlx4/srq.c
drivers/net/mlx4/srq.c
+1
-0
include/linux/mlx4/qp.h
include/linux/mlx4/qp.h
+3
-1
No files found.
drivers/infiniband/hw/mlx4/cq.c
View file @
cc9969c9
/*
* Copyright (c) 2007 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2007, 2008 Mellanox Technologies. All rights reserved.
*
* This software is available to you under a choice of one of two
* licenses. You may choose to be licensed under the terms of the GNU
...
...
drivers/infiniband/hw/mlx4/main.c
View file @
cc9969c9
/*
* Copyright (c) 2006, 2007 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2007, 2008 Mellanox Technologies. All rights reserved.
*
* This software is available to you under a choice of one of two
* licenses. You may choose to be licensed under the terms of the GNU
...
...
drivers/infiniband/hw/mlx4/mlx4_ib.h
View file @
cc9969c9
/*
* Copyright (c) 2006, 2007 Cisco Systems. All rights reserved.
* Copyright (c) 2007, 2008 Mellanox Technologies. All rights reserved.
*
* This software is available to you under a choice of one of two
* licenses. You may choose to be licensed under the terms of the GNU
...
...
drivers/infiniband/hw/mlx4/mr.c
View file @
cc9969c9
/*
* Copyright (c) 2007 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2007, 2008 Mellanox Technologies. All rights reserved.
*
* This software is available to you under a choice of one of two
* licenses. You may choose to be licensed under the terms of the GNU
...
...
drivers/infiniband/hw/mlx4/qp.c
View file @
cc9969c9
/*
* Copyright (c) 2007 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2007, 2008 Mellanox Technologies. All rights reserved.
*
* This software is available to you under a choice of one of two
* licenses. You may choose to be licensed under the terms of the GNU
...
...
drivers/infiniband/hw/mlx4/srq.c
View file @
cc9969c9
/*
* Copyright (c) 2007 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2007, 2008 Mellanox Technologies. All rights reserved.
*
* This software is available to you under a choice of one of two
* licenses. You may choose to be licensed under the terms of the GNU
...
...
drivers/infiniband/hw/mlx4/user.h
View file @
cc9969c9
/*
* Copyright (c) 2007 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2007, 2008 Mellanox Technologies. All rights reserved.
*
* This software is available to you under a choice of one of two
* licenses. You may choose to be licensed under the terms of the GNU
...
...
drivers/infiniband/hw/nes/nes.c
View file @
cc9969c9
...
...
@@ -276,6 +276,7 @@ static void nes_cqp_rem_ref_callback(struct nes_device *nesdev, struct nes_cqp_r
}
nes_free_resource
(
nesadapter
,
nesadapter
->
allocated_qps
,
nesqp
->
hwqp
.
qp_id
);
nesadapter
->
qp_table
[
nesqp
->
hwqp
.
qp_id
-
NES_FIRST_QPN
]
=
NULL
;
kfree
(
nesqp
->
allocated_buffer
);
}
...
...
@@ -289,7 +290,6 @@ void nes_rem_ref(struct ib_qp *ibqp)
struct
nes_qp
*
nesqp
;
struct
nes_vnic
*
nesvnic
=
to_nesvnic
(
ibqp
->
device
);
struct
nes_device
*
nesdev
=
nesvnic
->
nesdev
;
struct
nes_adapter
*
nesadapter
=
nesdev
->
nesadapter
;
struct
nes_hw_cqp_wqe
*
cqp_wqe
;
struct
nes_cqp_request
*
cqp_request
;
u32
opcode
;
...
...
@@ -303,8 +303,6 @@ void nes_rem_ref(struct ib_qp *ibqp)
}
if
(
atomic_dec_and_test
(
&
nesqp
->
refcount
))
{
nesadapter
->
qp_table
[
nesqp
->
hwqp
.
qp_id
-
NES_FIRST_QPN
]
=
NULL
;
/* Destroy the QP */
cqp_request
=
nes_get_cqp_request
(
nesdev
);
if
(
cqp_request
==
NULL
)
{
...
...
drivers/infiniband/hw/nes/nes_cm.c
View file @
cc9969c9
This diff is collapsed.
Click to expand it.
drivers/infiniband/hw/nes/nes_cm.h
View file @
cc9969c9
...
...
@@ -83,6 +83,8 @@ enum nes_timer_type {
#define SET_FIN 4
#define SET_RST 8
#define TCP_OPTIONS_PADDING 3
struct
option_base
{
u8
optionnum
;
u8
length
;
...
...
@@ -177,6 +179,7 @@ enum nes_cm_node_state {
NES_CM_STATE_ESTABLISHED
,
NES_CM_STATE_ACCEPTING
,
NES_CM_STATE_MPAREQ_SENT
,
NES_CM_STATE_MPAREQ_RCVD
,
NES_CM_STATE_TSA
,
NES_CM_STATE_FIN_WAIT1
,
NES_CM_STATE_FIN_WAIT2
,
...
...
@@ -187,6 +190,16 @@ enum nes_cm_node_state {
NES_CM_STATE_CLOSED
};
enum
nes_tcpip_pkt_type
{
NES_PKT_TYPE_UNKNOWN
,
NES_PKT_TYPE_SYN
,
NES_PKT_TYPE_SYNACK
,
NES_PKT_TYPE_ACK
,
NES_PKT_TYPE_FIN
,
NES_PKT_TYPE_RST
};
/* type of nes connection */
enum
nes_cm_conn_type
{
NES_CM_IWARP_CONN_TYPE
,
...
...
@@ -257,7 +270,9 @@ struct nes_cm_node {
struct
net_device
*
netdev
;
struct
nes_cm_node
*
loopbackpartner
;
struct
list_head
retrans_list
;
struct
nes_timer_entry
*
send_entry
;
spinlock_t
retrans_list_lock
;
struct
list_head
recv_list
;
spinlock_t
recv_list_lock
;
...
...
@@ -276,6 +291,8 @@ struct nes_cm_node {
struct
nes_vnic
*
nesvnic
;
int
apbvt_set
;
int
accept_pend
;
int
freed
;
struct
nes_qp
*
nesqp
;
};
/* structure for client or CM to fill when making CM api calls. */
...
...
@@ -366,14 +383,14 @@ struct nes_cm_ops {
struct
nes_cm_info
*
);
int
(
*
stop_listener
)(
struct
nes_cm_core
*
,
struct
nes_cm_listener
*
);
struct
nes_cm_node
*
(
*
connect
)(
struct
nes_cm_core
*
,
struct
nes_vnic
*
,
struct
ietf_mpa_frame
*
,
struct
nes_vnic
*
,
u16
,
void
*
,
struct
nes_cm_info
*
);
int
(
*
close
)(
struct
nes_cm_core
*
,
struct
nes_cm_node
*
);
int
(
*
accept
)(
struct
nes_cm_core
*
,
struct
ietf_mpa_frame
*
,
struct
nes_cm_node
*
);
int
(
*
reject
)(
struct
nes_cm_core
*
,
struct
ietf_mpa_frame
*
,
struct
nes_cm_node
*
);
int
(
*
recv_pkt
)(
struct
nes_cm_core
*
,
struct
nes_vnic
*
,
void
(
*
recv_pkt
)(
struct
nes_cm_core
*
,
struct
nes_vnic
*
,
struct
sk_buff
*
);
int
(
*
destroy_cm_core
)(
struct
nes_cm_core
*
);
int
(
*
get
)(
struct
nes_cm_core
*
);
...
...
drivers/infiniband/hw/nes/nes_hw.c
View file @
cc9969c9
...
...
@@ -2814,7 +2814,6 @@ static void nes_process_iwarp_aeqe(struct nes_device *nesdev,
nesqp
=
*
((
struct
nes_qp
**
)
&
context
);
if
(
atomic_inc_return
(
&
nesqp
->
close_timer_started
)
==
1
)
{
nesqp
->
cm_id
->
add_ref
(
nesqp
->
cm_id
);
nes_add_ref
(
&
nesqp
->
ibqp
);
schedule_nes_timer
(
nesqp
->
cm_node
,
(
struct
sk_buff
*
)
nesqp
,
NES_TIMER_TYPE_CLOSE
,
1
,
0
);
nes_debug
(
NES_DBG_AEQ
,
"QP%u Not decrementing QP refcount (%d),"
...
...
@@ -2838,7 +2837,6 @@ static void nes_process_iwarp_aeqe(struct nes_device *nesdev,
if
(
async_event_id
==
NES_AEQE_AEID_RESET_SENT
)
{
tcp_state
=
NES_AEQE_TCP_STATE_CLOSED
;
}
nes_add_ref
(
&
nesqp
->
ibqp
);
spin_lock_irqsave
(
&
nesqp
->
lock
,
flags
);
nesqp
->
hw_iwarp_state
=
iwarp_state
;
nesqp
->
hw_tcp_state
=
tcp_state
;
...
...
@@ -2876,7 +2874,6 @@ static void nes_process_iwarp_aeqe(struct nes_device *nesdev,
}
spin_unlock_irqrestore
(
&
nesqp
->
lock
,
flags
);
if
(
next_iwarp_state
)
{
nes_add_ref
(
&
nesqp
->
ibqp
);
nes_debug
(
NES_DBG_AEQ
,
"issuing hw modifyqp for QP%u. next state = 0x%08X,"
" also added another reference
\n
"
,
nesqp
->
hwqp
.
qp_id
,
next_iwarp_state
);
...
...
@@ -2888,7 +2885,6 @@ static void nes_process_iwarp_aeqe(struct nes_device *nesdev,
/* FIN Received but ib state not RTS,
close complete will be on its way */
spin_unlock_irqrestore
(
&
nesqp
->
lock
,
flags
);
nes_rem_ref
(
&
nesqp
->
ibqp
);
return
;
}
spin_unlock_irqrestore
(
&
nesqp
->
lock
,
flags
);
...
...
@@ -2922,7 +2918,6 @@ static void nes_process_iwarp_aeqe(struct nes_device *nesdev,
if
((
tcp_state
==
NES_AEQE_TCP_STATE_CLOSE_WAIT
)
||
((
nesqp
->
ibqp_state
==
IB_QPS_RTS
)
&&
(
async_event_id
==
NES_AEQE_AEID_LLP_CONNECTION_RESET
)))
{
nes_add_ref
(
&
nesqp
->
ibqp
);
nes_cm_disconn
(
nesqp
);
}
else
{
nesqp
->
in_disconnect
=
0
;
...
...
@@ -2931,7 +2926,6 @@ static void nes_process_iwarp_aeqe(struct nes_device *nesdev,
break
;
case
NES_AEQE_AEID_LLP_TOO_MANY_RETRIES
:
nesqp
=
*
((
struct
nes_qp
**
)
&
context
);
nes_add_ref
(
&
nesqp
->
ibqp
);
spin_lock_irqsave
(
&
nesqp
->
lock
,
flags
);
nesqp
->
hw_iwarp_state
=
NES_AEQE_IWARP_STATE_ERROR
;
nesqp
->
hw_tcp_state
=
NES_AEQE_TCP_STATE_CLOSED
;
...
...
@@ -3042,7 +3036,6 @@ static void nes_process_iwarp_aeqe(struct nes_device *nesdev,
nesqp
->
ibqp
.
event_handler
(
&
ibevent
,
nesqp
->
ibqp
.
qp_context
);
}
/* tell cm to disconnect, cm will queue work to thread */
nes_add_ref
(
&
nesqp
->
ibqp
);
nes_cm_disconn
(
nesqp
);
break
;
case
NES_AEQE_AEID_DDP_UBE_INVALID_MSN_NO_BUFFER_AVAILABLE
:
...
...
@@ -3062,7 +3055,6 @@ static void nes_process_iwarp_aeqe(struct nes_device *nesdev,
nesqp
->
ibqp
.
event_handler
(
&
ibevent
,
nesqp
->
ibqp
.
qp_context
);
}
/* tell cm to disconnect, cm will queue work to thread */
nes_add_ref
(
&
nesqp
->
ibqp
);
nes_cm_disconn
(
nesqp
);
break
;
case
NES_AEQE_AEID_LLP_RECEIVED_MPA_CRC_ERROR
:
...
...
@@ -3082,7 +3074,6 @@ static void nes_process_iwarp_aeqe(struct nes_device *nesdev,
nesqp
->
ibqp
.
event_handler
(
&
ibevent
,
nesqp
->
ibqp
.
qp_context
);
}
/* tell cm to disconnect, cm will queue work to thread */
nes_add_ref
(
&
nesqp
->
ibqp
);
nes_cm_disconn
(
nesqp
);
break
;
/* TODO: additional AEs need to be here */
...
...
drivers/infiniband/hw/nes/nes_verbs.c
View file @
cc9969c9
...
...
@@ -2867,7 +2867,6 @@ int nes_modify_qp(struct ib_qp *ibqp, struct ib_qp_attr *attr,
nesqp
->
hwqp
.
qp_id
,
attr
->
qp_state
,
nesqp
->
ibqp_state
,
nesqp
->
iwarp_state
,
atomic_read
(
&
nesqp
->
refcount
));
nes_add_ref
(
&
nesqp
->
ibqp
);
spin_lock_irqsave
(
&
nesqp
->
lock
,
qplockflags
);
nes_debug
(
NES_DBG_MOD_QP
,
"QP%u: hw_iwarp_state=0x%X, hw_tcp_state=0x%X,"
...
...
@@ -2882,7 +2881,6 @@ int nes_modify_qp(struct ib_qp *ibqp, struct ib_qp_attr *attr,
nesqp
->
hwqp
.
qp_id
);
if
(
nesqp
->
iwarp_state
>
(
u32
)
NES_CQP_QP_IWARP_STATE_IDLE
)
{
spin_unlock_irqrestore
(
&
nesqp
->
lock
,
qplockflags
);
nes_rem_ref
(
&
nesqp
->
ibqp
);
return
-
EINVAL
;
}
next_iwarp_state
=
NES_CQP_QP_IWARP_STATE_IDLE
;
...
...
@@ -2893,7 +2891,6 @@ int nes_modify_qp(struct ib_qp *ibqp, struct ib_qp_attr *attr,
nesqp
->
hwqp
.
qp_id
);
if
(
nesqp
->
iwarp_state
>
(
u32
)
NES_CQP_QP_IWARP_STATE_IDLE
)
{
spin_unlock_irqrestore
(
&
nesqp
->
lock
,
qplockflags
);
nes_rem_ref
(
&
nesqp
->
ibqp
);
return
-
EINVAL
;
}
next_iwarp_state
=
NES_CQP_QP_IWARP_STATE_IDLE
;
...
...
@@ -2904,14 +2901,12 @@ int nes_modify_qp(struct ib_qp *ibqp, struct ib_qp_attr *attr,
nesqp
->
hwqp
.
qp_id
);
if
(
nesqp
->
iwarp_state
>
(
u32
)
NES_CQP_QP_IWARP_STATE_RTS
)
{
spin_unlock_irqrestore
(
&
nesqp
->
lock
,
qplockflags
);
nes_rem_ref
(
&
nesqp
->
ibqp
);
return
-
EINVAL
;
}
if
(
nesqp
->
cm_id
==
NULL
)
{
nes_debug
(
NES_DBG_MOD_QP
,
"QP%u: Failing attempt to move QP to RTS without a CM_ID.
\n
"
,
nesqp
->
hwqp
.
qp_id
);
spin_unlock_irqrestore
(
&
nesqp
->
lock
,
qplockflags
);
nes_rem_ref
(
&
nesqp
->
ibqp
);
return
-
EINVAL
;
}
next_iwarp_state
=
NES_CQP_QP_IWARP_STATE_RTS
;
...
...
@@ -2929,7 +2924,6 @@ int nes_modify_qp(struct ib_qp *ibqp, struct ib_qp_attr *attr,
nesqp
->
hwqp
.
qp_id
,
nesqp
->
hwqp
.
sq_head
,
nesqp
->
hwqp
.
sq_tail
);
if
(
nesqp
->
iwarp_state
==
(
u32
)
NES_CQP_QP_IWARP_STATE_CLOSING
)
{
spin_unlock_irqrestore
(
&
nesqp
->
lock
,
qplockflags
);
nes_rem_ref
(
&
nesqp
->
ibqp
);
return
0
;
}
else
{
if
(
nesqp
->
iwarp_state
>
(
u32
)
NES_CQP_QP_IWARP_STATE_CLOSING
)
{
...
...
@@ -2937,7 +2931,6 @@ int nes_modify_qp(struct ib_qp *ibqp, struct ib_qp_attr *attr,
" ignored due to current iWARP state
\n
"
,
nesqp
->
hwqp
.
qp_id
);
spin_unlock_irqrestore
(
&
nesqp
->
lock
,
qplockflags
);
nes_rem_ref
(
&
nesqp
->
ibqp
);
return
-
EINVAL
;
}
if
(
nesqp
->
hw_iwarp_state
!=
NES_AEQE_IWARP_STATE_RTS
)
{
...
...
@@ -2969,7 +2962,6 @@ int nes_modify_qp(struct ib_qp *ibqp, struct ib_qp_attr *attr,
nesqp
->
hwqp
.
qp_id
);
if
(
nesqp
->
iwarp_state
>=
(
u32
)
NES_CQP_QP_IWARP_STATE_TERMINATE
)
{
spin_unlock_irqrestore
(
&
nesqp
->
lock
,
qplockflags
);
nes_rem_ref
(
&
nesqp
->
ibqp
);
return
-
EINVAL
;
}
/* next_iwarp_state = (NES_CQP_QP_IWARP_STATE_TERMINATE | 0x02000000); */
...
...
@@ -2982,7 +2974,6 @@ int nes_modify_qp(struct ib_qp *ibqp, struct ib_qp_attr *attr,
case
IB_QPS_RESET
:
if
(
nesqp
->
iwarp_state
==
(
u32
)
NES_CQP_QP_IWARP_STATE_ERROR
)
{
spin_unlock_irqrestore
(
&
nesqp
->
lock
,
qplockflags
);
nes_rem_ref
(
&
nesqp
->
ibqp
);
return
-
EINVAL
;
}
nes_debug
(
NES_DBG_MOD_QP
,
"QP%u: new state = error
\n
"
,
...
...
@@ -3008,7 +2999,6 @@ int nes_modify_qp(struct ib_qp *ibqp, struct ib_qp_attr *attr,
break
;
default:
spin_unlock_irqrestore
(
&
nesqp
->
lock
,
qplockflags
);
nes_rem_ref
(
&
nesqp
->
ibqp
);
return
-
EINVAL
;
break
;
}
...
...
@@ -3088,7 +3078,6 @@ int nes_modify_qp(struct ib_qp *ibqp, struct ib_qp_attr *attr,
nesqp
->
hwqp
.
qp_id
,
atomic_read
(
&
nesqp
->
refcount
),
original_last_aeq
,
nesqp
->
last_aeq
);
/* this one is for the cm_disconnect thread */
nes_add_ref
(
&
nesqp
->
ibqp
);
spin_lock_irqsave
(
&
nesqp
->
lock
,
qplockflags
);
nesqp
->
hw_tcp_state
=
NES_AEQE_TCP_STATE_CLOSED
;
nesqp
->
last_aeq
=
NES_AEQE_AEID_RESET_SENT
;
...
...
@@ -3097,14 +3086,12 @@ int nes_modify_qp(struct ib_qp *ibqp, struct ib_qp_attr *attr,
}
else
{
nes_debug
(
NES_DBG_MOD_QP
,
"QP%u No fake disconnect, QP refcount=%d
\n
"
,
nesqp
->
hwqp
.
qp_id
,
atomic_read
(
&
nesqp
->
refcount
));
nes_rem_ref
(
&
nesqp
->
ibqp
);
}
}
else
{
spin_lock_irqsave
(
&
nesqp
->
lock
,
qplockflags
);
if
(
nesqp
->
cm_id
)
{
/* These two are for the timer thread */
if
(
atomic_inc_return
(
&
nesqp
->
close_timer_started
)
==
1
)
{
nes_add_ref
(
&
nesqp
->
ibqp
);
nesqp
->
cm_id
->
add_ref
(
nesqp
->
cm_id
);
nes_debug
(
NES_DBG_MOD_QP
,
"QP%u Not decrementing QP refcount (%d),"
" need ae to finish up, original_last_aeq = 0x%04X."
...
...
@@ -3128,14 +3115,12 @@ int nes_modify_qp(struct ib_qp *ibqp, struct ib_qp_attr *attr,
" original_last_aeq = 0x%04X. last_aeq = 0x%04X.
\n
"
,
nesqp
->
hwqp
.
qp_id
,
atomic_read
(
&
nesqp
->
refcount
),
original_last_aeq
,
nesqp
->
last_aeq
);
nes_rem_ref
(
&
nesqp
->
ibqp
);
}
}
else
{
nes_debug
(
NES_DBG_MOD_QP
,
"QP%u Decrementing QP refcount (%d), No ae to finish up,"
" original_last_aeq = 0x%04X. last_aeq = 0x%04X.
\n
"
,
nesqp
->
hwqp
.
qp_id
,
atomic_read
(
&
nesqp
->
refcount
),
original_last_aeq
,
nesqp
->
last_aeq
);
nes_rem_ref
(
&
nesqp
->
ibqp
);
}
err
=
0
;
...
...
drivers/infiniband/ulp/ipoib/Kconfig
View file @
cc9969c9
...
...
@@ -11,16 +11,17 @@ config INFINIBAND_IPOIB
config INFINIBAND_IPOIB_CM
bool "IP-over-InfiniBand Connected Mode support"
depends on INFINIBAND_IPOIB
&& EXPERIMENTAL
depends on INFINIBAND_IPOIB
default n
---help---
This option enables experimental support for IPoIB connected mode.
After enabling this option, you need to switch to connected mode through
/sys/class/net/ibXXX/mode to actually create connections, and then increase
the interface MTU with e.g. ifconfig ib0 mtu 65520.
This option enables support for IPoIB connected mode. After
enabling this option, you need to switch to connected mode
through /sys/class/net/ibXXX/mode to actually create
connections, and then increase the interface MTU with
e.g. ifconfig ib0 mtu 65520.
WARNING: Enabling connected mode will trigger some
packet
drops for multicast and UD mode traffic from this interface,
WARNING: Enabling connected mode will trigger some
packet
drops for multicast and UD mode traffic from this interface,
unless you limit mtu for these destinations to 2044.
config INFINIBAND_IPOIB_DEBUG
...
...
@@ -33,9 +34,10 @@ config INFINIBAND_IPOIB_DEBUG
debug_level and mcast_debug_level module parameters (which
can also be set after the driver is loaded through sysfs).
This option also creates an "ipoib_debugfs," which can be
mounted to expose debugging information about IB multicast
groups used by the IPoIB driver.
This option also creates a directory tree under ipoib/ in
debugfs, which contains files that expose debugging
information about IB multicast groups used by the IPoIB
driver.
config INFINIBAND_IPOIB_DEBUG_DATA
bool "IP-over-InfiniBand data path debugging"
...
...
drivers/net/mlx4/alloc.c
View file @
cc9969c9
/*
* Copyright (c) 2006, 2007 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2007, 2008 Mellanox Technologies. All rights reserved.
*
* This software is available to you under a choice of one of two
* licenses. You may choose to be licensed under the terms of the GNU
...
...
drivers/net/mlx4/catas.c
View file @
cc9969c9
/*
* Copyright (c) 2007 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2007, 2008 Mellanox Technologies. All rights reserved.
*
* This software is available to you under a choice of one of two
* licenses. You may choose to be licensed under the terms of the GNU
...
...
drivers/net/mlx4/cmd.c
View file @
cc9969c9
/*
* Copyright (c) 2004, 2005 Topspin Communications. All rights reserved.
* Copyright (c) 2005 Mellanox Technologies. All rights reserved.
* Copyright (c) 2005
, 2006, 2007, 2008
Mellanox Technologies. All rights reserved.
* Copyright (c) 2005, 2006, 2007 Cisco Systems, Inc. All rights reserved.
*
* This software is available to you under a choice of one of two
...
...
drivers/net/mlx4/cq.c
View file @
cc9969c9
...
...
@@ -2,7 +2,7 @@
* Copyright (c) 2004, 2005 Topspin Communications. All rights reserved.
* Copyright (c) 2005 Sun Microsystems, Inc. All rights reserved.
* Copyright (c) 2005, 2006, 2007 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2005 Mellanox Technologies. All rights reserved.
* Copyright (c) 2005
, 2006, 2007, 2008
Mellanox Technologies. All rights reserved.
* Copyright (c) 2004 Voltaire, Inc. All rights reserved.
*
* This software is available to you under a choice of one of two
...
...
drivers/net/mlx4/eq.c
View file @
cc9969c9
/*
* Copyright (c) 2005 Mellanox Technologies. All rights reserved.
* Copyright (c) 2005
, 2006, 2007, 2008
Mellanox Technologies. All rights reserved.
* Copyright (c) 2005, 2006, 2007 Cisco Systems, Inc. All rights reserved.
*
* This software is available to you under a choice of one of two
...
...
drivers/net/mlx4/fw.c
View file @
cc9969c9
/*
* Copyright (c) 2004, 2005 Topspin Communications. All rights reserved.
* Copyright (c) 2005 Mellanox Technologies. All rights reserved.
* Copyright (c) 2005
, 2006, 2007, 2008
Mellanox Technologies. All rights reserved.
* Copyright (c) 2005, 2006, 2007 Cisco Systems, Inc. All rights reserved.
*
* This software is available to you under a choice of one of two
...
...
drivers/net/mlx4/fw.h
View file @
cc9969c9
/*
* Copyright (c) 2004, 2005 Topspin Communications. All rights reserved.
* Copyright (c) 2005 Mellanox Technologies. All rights reserved.
* Copyright (c) 2005
, 2006, 2007, 2008
Mellanox Technologies. All rights reserved.
* Copyright (c) 2006, 2007 Cisco Systems. All rights reserved.
*
* This software is available to you under a choice of one of two
...
...
drivers/net/mlx4/icm.c
View file @
cc9969c9
/*
* Copyright (c) 2005 Mellanox Technologies. All rights reserved.
* Copyright (c) 2005
, 2006, 2007, 2008
Mellanox Technologies. All rights reserved.
* Copyright (c) 2006, 2007 Cisco Systems, Inc. All rights reserved.
*
* This software is available to you under a choice of one of two
...
...
drivers/net/mlx4/icm.h
View file @
cc9969c9
/*
* Copyright (c) 2005 Mellanox Technologies. All rights reserved.
* Copyright (c) 2005
, 2006, 2007, 2008
Mellanox Technologies. All rights reserved.
* Copyright (c) 2006, 2007 Cisco Systems, Inc. All rights reserved.
*
* This software is available to you under a choice of one of two
...
...
drivers/net/mlx4/intf.c
View file @
cc9969c9
/*
* Copyright (c) 2006, 2007 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2007, 2008 Mellanox Technologies. All rights reserved.
*
* This software is available to you under a choice of one of two
* licenses. You may choose to be licensed under the terms of the GNU
...
...
drivers/net/mlx4/main.c
View file @
cc9969c9
/*
* Copyright (c) 2004, 2005 Topspin Communications. All rights reserved.
* Copyright (c) 2005 Sun Microsystems, Inc. All rights reserved.
* Copyright (c) 2005 Mellanox Technologies. All rights reserved.
* Copyright (c) 2005
, 2006, 2007, 2008
Mellanox Technologies. All rights reserved.
* Copyright (c) 2006, 2007 Cisco Systems, Inc. All rights reserved.
*
* This software is available to you under a choice of one of two
...
...
drivers/net/mlx4/mcg.c
View file @
cc9969c9
/*
* Copyright (c) 2006, 2007 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2007, 2008 Mellanox Technologies. All rights reserved.
*
* This software is available to you under a choice of one of two
* licenses. You may choose to be licensed under the terms of the GNU
...
...
drivers/net/mlx4/mlx4.h
View file @
cc9969c9
...
...
@@ -2,7 +2,7 @@
* Copyright (c) 2004, 2005 Topspin Communications. All rights reserved.
* Copyright (c) 2005 Sun Microsystems, Inc. All rights reserved.
* Copyright (c) 2005, 2006, 2007 Cisco Systems. All rights reserved.
* Copyright (c) 2005 Mellanox Technologies. All rights reserved.
* Copyright (c) 2005
, 2006, 2007, 2008
Mellanox Technologies. All rights reserved.
* Copyright (c) 2004 Voltaire, Inc. All rights reserved.
*
* This software is available to you under a choice of one of two
...
...
drivers/net/mlx4/mr.c
View file @
cc9969c9
/*
* Copyright (c) 2004 Topspin Communications. All rights reserved.
* Copyright (c) 2005 Mellanox Technologies. All rights reserved.
* Copyright (c) 2005
, 2006, 2007, 2008
Mellanox Technologies. All rights reserved.
* Copyright (c) 2006, 2007 Cisco Systems, Inc. All rights reserved.
*
* This software is available to you under a choice of one of two
...
...
drivers/net/mlx4/qp.c
View file @
cc9969c9
/*
* Copyright (c) 2004 Topspin Communications. All rights reserved.
* Copyright (c) 2005, 2006, 2007 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2005 Mellanox Technologies. All rights reserved.
* Copyright (c) 2005
, 2006, 2007, 2008
Mellanox Technologies. All rights reserved.
* Copyright (c) 2004 Voltaire, Inc. All rights reserved.
*
* This software is available to you under a choice of one of two
...
...
drivers/net/mlx4/reset.c
View file @
cc9969c9
/*
* Copyright (c) 2006, 2007 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2007, 2008 Mellanox Technologies. All rights reserved.
*
* This software is available to you under a choice of one of two
* licenses. You may choose to be licensed under the terms of the GNU
...
...
drivers/net/mlx4/srq.c
View file @
cc9969c9
/*
* Copyright (c) 2006, 2007 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2007, 2008 Mellanox Technologies. All rights reserved.
*
* This software is available to you under a choice of one of two
* licenses. You may choose to be licensed under the terms of the GNU
...
...
include/linux/mlx4/qp.h
View file @
cc9969c9
...
...
@@ -164,11 +164,13 @@ enum {
MLX4_WQE_CTRL_SOLICITED
=
1
<<
1
,
MLX4_WQE_CTRL_IP_CSUM
=
1
<<
4
,
MLX4_WQE_CTRL_TCP_UDP_CSUM
=
1
<<
5
,
MLX4_WQE_CTRL_INS_VLAN
=
1
<<
6
,
};
struct
mlx4_wqe_ctrl_seg
{
__be32
owner_opcode
;
u8
reserved2
[
3
];
__be16
vlan_tag
;
u8
ins_vlan
;
u8
fence_size
;
/*
* High 24 bits are SRC remote buffer; low 8 bits are flags:
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment