Displaying 2 results from an estimated 2 matches for "9fc8c93".
2019 Jun 25
2
Re: [libnbd PATCH 2/1] states: Avoid wasted send() when REPLY interrupts request
On Wed, Jun 19, 2019 at 09:11:52PM -0500, Eric Blake wrote:
> When we are blocked waiting for POLLOUT during a request, and happen
> to receive notice of POLLIN instead, we know that the work done in
> response to POLLIN will be non-blocking (it returns to %.READY as soon
> as it would block, which in turn jumps right back into ISSUE_COMMAND
> because we have a pending request not
2019 Jun 25
0
Re: [libnbd PATCH 2/1] states: Avoid wasted send() when REPLY interrupts request
...ne SET_NEXT_STATE(s) (*blocked = false, *next_state = (s))\n";
+ pr "#define SET_NEXT_STATE_AND_BLOCK(s) (*next_state = (s))\n";
pr "\n";
(* The state machine C code fragments. *)
diff --git i/generator/states-issue-command.c
w/generator/states-issue-command.c
index 9fc8c93..35f3c79 100644
--- i/generator/states-issue-command.c
+++ w/generator/states-issue-command.c
@@ -33,9 +33,9 @@
*/
if (h->wlen) {
if (h->in_write_payload)
- *next_state = %SEND_WRITE_PAYLOAD;
+ SET_NEXT_STATE_AND_BLOCK (%SEND_WRITE_PAYLOAD);
else
- *next_state...