mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2026-05-04 12:41:00 +02:00
BUG/MEDIUM: h2: Don't forget to wake the tasklet after shutr/shutw.
When reaching h2_shutr/h2_shutw, as we may have generated an empty frame, a goaway or a rst, make sure we wake the I/O tasklet, or we may not send what we just generated. Also in h2_shutw(), don't forget to return if all went well, we don't want to subscribe the h2s to wait events.
This commit is contained in:
parent
7ccff1a3d3
commit
435ce2d71d
@ -2862,6 +2862,8 @@ static void h2_do_shutr(struct h2s *h2s)
|
||||
h2c_send_goaway_error(h2c, h2s) <= 0)
|
||||
return;
|
||||
|
||||
if (!(h2c->wait_event.wait_reason & SUB_CAN_SEND))
|
||||
tasklet_wakeup(h2c->wait_event.task);
|
||||
h2s_close(h2s);
|
||||
|
||||
return;
|
||||
@ -2918,6 +2920,9 @@ static void h2_do_shutw(struct h2s *h2s)
|
||||
h2s_close(h2s);
|
||||
}
|
||||
|
||||
if (!(h2c->wait_event.wait_reason & SUB_CAN_SEND))
|
||||
tasklet_wakeup(h2c->wait_event.task);
|
||||
return;
|
||||
|
||||
add_to_list:
|
||||
if (LIST_ISEMPTY(&h2s->list)) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user