Print this page
5045 use atomic_{inc,dec}_* instead of atomic_add_*
*** 174,184 ****
"Another thread running(conn: %p)", conn);
rdsv3_stats_inc(s_send_sem_contention);
ret = -ENOMEM;
goto out;
}
! atomic_add_32(&conn->c_senders, 1);
if (conn->c_trans->xmit_prepare)
conn->c_trans->xmit_prepare(conn);
/*
--- 174,184 ----
"Another thread running(conn: %p)", conn);
rdsv3_stats_inc(s_send_sem_contention);
ret = -ENOMEM;
goto out;
}
! atomic_inc_32(&conn->c_senders);
if (conn->c_trans->xmit_prepare)
conn->c_trans->xmit_prepare(conn);
/*
*** 565,584 ****
mutex_enter(&conn->c_lock);
RDSV3_FOR_EACH_LIST_NODE_SAFE(rm, tmp, &conn->c_retrans, m_conn_item) {
if (rm->m_rdma_op == op) {
! atomic_add_32(&rm->m_refcount, 1);
found = rm;
goto out;
}
}
RDSV3_FOR_EACH_LIST_NODE_SAFE(rm, tmp, &conn->c_send_queue,
m_conn_item) {
if (rm->m_rdma_op == op) {
! atomic_add_32(&rm->m_refcount, 1);
found = rm;
break;
}
}
--- 565,584 ----
mutex_enter(&conn->c_lock);
RDSV3_FOR_EACH_LIST_NODE_SAFE(rm, tmp, &conn->c_retrans, m_conn_item) {
if (rm->m_rdma_op == op) {
! atomic_inc_32(&rm->m_refcount);
found = rm;
goto out;
}
}
RDSV3_FOR_EACH_LIST_NODE_SAFE(rm, tmp, &conn->c_send_queue,
m_conn_item) {
if (rm->m_rdma_op == op) {
! atomic_inc_32(&rm->m_refcount);
found = rm;
break;
}
}