[Pvfs2-cvs] commit by slang in pvfs2/src/io/bmi/bmi_tcp: bmi-tcp.c
CVS commit program
cvs at parl.clemson.edu
Sat Oct 20 11:40:13 EDT 2007
Update of /projects/cvsroot/pvfs2/src/io/bmi/bmi_tcp
In directory parlweb1:/tmp/cvs-serv25181/src/io/bmi/bmi_tcp
Modified Files:
bmi-tcp.c
Log Message:
commit of Phil's patches for the halloween bug fixes. See the pvfs2-dev for details.
Index: bmi-tcp.c
===================================================================
RCS file: /projects/cvsroot/pvfs2/src/io/bmi/bmi_tcp/bmi-tcp.c,v
diff -p -u -r1.120 -r1.121
--- bmi-tcp.c 16 Oct 2007 22:53:44 -0000 1.120
+++ bmi-tcp.c 20 Oct 2007 15:40:13 -0000 1.121
@@ -1841,6 +1841,7 @@ void tcp_forget_addr(method_addr_p map,
int error_code)
{
struct tcp_addr* tcp_addr_data = map->method_data;
+ PVFS_BMI_addr_t bmi_addr = tcp_addr_data->bmi_addr;
int tmp_outcount;
method_addr_p tmp_addr;
int tmp_status;
@@ -1855,15 +1856,19 @@ void tcp_forget_addr(method_addr_p map,
0, &tmp_outcount, &tmp_addr, &tmp_status, 0, &interface_mutex);
}
- gen_mutex_unlock(&interface_mutex);
- bmi_method_addr_forget_callback(tcp_addr_data->bmi_addr);
- gen_mutex_lock(&interface_mutex);
tcp_shutdown_addr(map);
tcp_cleanse_addr(map, error_code);
tcp_addr_data->addr_error = error_code;
if (dealloc_flag)
{
dealloc_tcp_method_addr(map);
+ }
+ else
+ {
+ /* this will cause the bmi control layer to check to see if
+ * this address can be completely forgotten
+ */
+ bmi_method_addr_forget_callback(bmi_addr);
}
return;
};
More information about the Pvfs2-cvs
mailing list