- Instead of doing the unlock inside the if, just move the if-statement
later after the mandatory unlock. This commit was SVN r8885.
Этот коммит содержится в:
родитель
a0d3ddd267
Коммит
7ac0ffc349
@ -367,19 +367,16 @@ int mca_btl_sm_component_progress(void)
|
|||||||
* we use the _same_base_addr varient. */
|
* we use the _same_base_addr varient. */
|
||||||
frag = (mca_btl_sm_frag_t *)
|
frag = (mca_btl_sm_frag_t *)
|
||||||
ompi_fifo_read_from_tail_same_base_addr( fifo );
|
ompi_fifo_read_from_tail_same_base_addr( fifo );
|
||||||
if( OMPI_CB_FREE == frag ) {
|
|
||||||
/* release thread lock */
|
|
||||||
if( opal_using_threads() ) {
|
|
||||||
opal_atomic_unlock(&(fifo->tail_lock));
|
|
||||||
}
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* release thread lock */
|
/* release thread lock */
|
||||||
if( opal_using_threads() ) {
|
if( opal_using_threads() ) {
|
||||||
opal_atomic_unlock(&(fifo->tail_lock));
|
opal_atomic_unlock(&(fifo->tail_lock));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if( OMPI_CB_FREE == frag ) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
/* dispatch fragment by type */
|
/* dispatch fragment by type */
|
||||||
switch(frag->type) {
|
switch(frag->type) {
|
||||||
case MCA_BTL_SM_FRAG_ACK:
|
case MCA_BTL_SM_FRAG_ACK:
|
||||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user