Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
margo
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
12
Issues
12
List
Boards
Labels
Milestones
Merge Requests
1
Merge Requests
1
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
sds
margo
Commits
f3a8d4e0
Commit
f3a8d4e0
authored
Nov 03, 2017
by
Matthieu Dorier
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
attempt to fix deadlock
parent
7e00d232
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
9 additions
and
9 deletions
+9
-9
margo.c
src/margo.c
+9
-9
No files found.
src/margo.c
View file @
f3a8d4e0
...
@@ -108,7 +108,7 @@ struct margo_instance
...
@@ -108,7 +108,7 @@ struct margo_instance
struct
margo_cb_arg
struct
margo_cb_arg
{
{
ABT_eventual
*
eventual
;
ABT_eventual
eventual
;
};
};
struct
margo_rpc_data
struct
margo_rpc_data
...
@@ -504,7 +504,7 @@ static hg_return_t margo_addr_lookup_cb(const struct hg_cb_info *info)
...
@@ -504,7 +504,7 @@ static hg_return_t margo_addr_lookup_cb(const struct hg_cb_info *info)
struct
margo_cb_arg
*
arg
=
info
->
arg
;
struct
margo_cb_arg
*
arg
=
info
->
arg
;
/* propagate return code out through eventual */
/* propagate return code out through eventual */
ABT_eventual_set
(
*
(
arg
->
eventual
)
,
&
evt
,
sizeof
(
evt
));
ABT_eventual_set
(
arg
->
eventual
,
&
evt
,
sizeof
(
evt
));
return
(
HG_SUCCESS
);
return
(
HG_SUCCESS
);
}
}
...
@@ -526,7 +526,7 @@ hg_return_t margo_addr_lookup(
...
@@ -526,7 +526,7 @@ hg_return_t margo_addr_lookup(
return
(
HG_NOMEM_ERROR
);
return
(
HG_NOMEM_ERROR
);
}
}
arg
.
eventual
=
&
eventual
;
arg
.
eventual
=
eventual
;
hret
=
HG_Addr_lookup
(
mid
->
hg_context
,
margo_addr_lookup_cb
,
hret
=
HG_Addr_lookup
(
mid
->
hg_context
,
margo_addr_lookup_cb
,
&
arg
,
name
,
HG_OP_ID_IGNORE
);
&
arg
,
name
,
HG_OP_ID_IGNORE
);
...
@@ -614,7 +614,7 @@ static hg_return_t margo_cb(const struct hg_cb_info *info)
...
@@ -614,7 +614,7 @@ static hg_return_t margo_cb(const struct hg_cb_info *info)
struct
margo_cb_arg
*
arg
=
info
->
arg
;
struct
margo_cb_arg
*
arg
=
info
->
arg
;
/* propagate return code out through eventual */
/* propagate return code out through eventual */
ABT_eventual_set
(
*
(
arg
->
eventual
)
,
&
hret
,
sizeof
(
hret
));
ABT_eventual_set
(
arg
->
eventual
,
&
hret
,
sizeof
(
hret
));
return
(
HG_SUCCESS
);
return
(
HG_SUCCESS
);
}
}
...
@@ -647,7 +647,7 @@ hg_return_t margo_iforward(
...
@@ -647,7 +647,7 @@ hg_return_t margo_iforward(
return
(
HG_NOMEM_ERROR
);
return
(
HG_NOMEM_ERROR
);
}
}
arg
.
eventual
=
&
eventual
;
arg
.
eventual
=
eventual
;
*
req
=
eventual
;
*
req
=
eventual
;
return
HG_Forward
(
handle
,
margo_cb
,
&
arg
,
in_struct
);
return
HG_Forward
(
handle
,
margo_cb
,
&
arg
,
in_struct
);
...
@@ -708,7 +708,7 @@ hg_return_t margo_forward_timed(
...
@@ -708,7 +708,7 @@ hg_return_t margo_forward_timed(
margo_timer_init
(
mid
,
&
forward_timer
,
margo_forward_timeout_cb
,
margo_timer_init
(
mid
,
&
forward_timer
,
margo_forward_timeout_cb
,
&
timeout_cb_dat
,
timeout_ms
);
&
timeout_cb_dat
,
timeout_ms
);
arg
.
eventual
=
&
eventual
;
arg
.
eventual
=
eventual
;
hret
=
HG_Forward
(
handle
,
margo_cb
,
&
arg
,
in_struct
);
hret
=
HG_Forward
(
handle
,
margo_cb
,
&
arg
,
in_struct
);
if
(
hret
==
HG_SUCCESS
)
if
(
hret
==
HG_SUCCESS
)
...
@@ -758,7 +758,7 @@ hg_return_t margo_irespond(
...
@@ -758,7 +758,7 @@ hg_return_t margo_irespond(
return
(
HG_NOMEM_ERROR
);
return
(
HG_NOMEM_ERROR
);
}
}
arg
.
eventual
=
&
eventual
;
arg
.
eventual
=
eventual
;
*
req
=
eventual
;
*
req
=
eventual
;
return
HG_Respond
(
handle
,
margo_cb
,
&
arg
,
out_struct
);
return
HG_Respond
(
handle
,
margo_cb
,
&
arg
,
out_struct
);
...
@@ -799,7 +799,7 @@ static hg_return_t margo_bulk_transfer_cb(const struct hg_cb_info *info)
...
@@ -799,7 +799,7 @@ static hg_return_t margo_bulk_transfer_cb(const struct hg_cb_info *info)
/* propagate return code out through eventual */
/* propagate return code out through eventual */
ABT_eventual_set
(
*
(
arg
->
eventual
)
,
&
hret
,
sizeof
(
hret
));
ABT_eventual_set
(
arg
->
eventual
,
&
hret
,
sizeof
(
hret
));
return
(
HG_SUCCESS
);
return
(
HG_SUCCESS
);
}
}
...
@@ -846,7 +846,7 @@ hg_return_t margo_bulk_itransfer(
...
@@ -846,7 +846,7 @@ hg_return_t margo_bulk_itransfer(
return
(
HG_NOMEM_ERROR
);
return
(
HG_NOMEM_ERROR
);
}
}
arg
.
eventual
=
&
eventual
;
arg
.
eventual
=
eventual
;
*
req
=
eventual
;
*
req
=
eventual
;
hret
=
HG_Bulk_transfer
(
mid
->
hg_context
,
margo_bulk_transfer_cb
,
hret
=
HG_Bulk_transfer
(
mid
->
hg_context
,
margo_bulk_transfer_cb
,
...
...
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