mirror of
https://github.com/xcat2/xNBA.git
synced 2024-12-15 07:41:45 +00:00
Unplug before sending close() message, to avoid screwing up interfaces
which respond to close with a reopen() (e.g. iSCSI).
This commit is contained in:
parent
d3ad76bc74
commit
4075f7596b
@ -29,16 +29,16 @@
|
||||
void job_done ( struct job_interface *job, int rc ) {
|
||||
struct job_interface *dest = job_get_dest ( job );
|
||||
|
||||
dest->op->done ( dest, rc );
|
||||
job_unplug ( job );
|
||||
dest->op->done ( dest, rc );
|
||||
job_put ( dest );
|
||||
}
|
||||
|
||||
void job_kill ( struct job_interface *job ) {
|
||||
struct job_interface *dest = job_get_dest ( job );
|
||||
|
||||
dest->op->kill ( dest );
|
||||
job_unplug ( job );
|
||||
dest->op->kill ( dest );
|
||||
job_put ( dest );
|
||||
}
|
||||
|
||||
|
@ -50,8 +50,8 @@ void resolv_done ( struct resolv_interface *resolv, struct sockaddr *sa,
|
||||
int rc ) {
|
||||
struct resolv_interface *dest = resolv_get_dest ( resolv );
|
||||
|
||||
dest->op->done ( dest, sa, rc );
|
||||
resolv_unplug ( resolv );
|
||||
dest->op->done ( dest, sa, rc );
|
||||
resolv_put ( dest );
|
||||
}
|
||||
|
||||
|
@ -38,8 +38,8 @@ void xfer_close ( struct xfer_interface *xfer, int rc ) {
|
||||
|
||||
DBGC ( xfer, "XFER %p->%p close\n", xfer, dest );
|
||||
|
||||
dest->op->close ( dest, rc );
|
||||
xfer_unplug ( xfer );
|
||||
dest->op->close ( dest, rc );
|
||||
xfer_put ( dest );
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user