diff --git a/include/proto/channel.h b/include/proto/channel.h
index 5e5d822..4872aa3 100644
--- a/include/proto/channel.h
+++ b/include/proto/channel.h
@@ -950,6 +950,7 @@
 
 	/* notify that some data was written to the SI from the buffer */
 	chn->flags |= CF_WRITE_PARTIAL | CF_WROTE_DATA;
+	chn_prod(chn)->flags &= ~SI_FL_RXBLK_ROOM; // si_rx_room_rdy()
 }
 
 /* HTX version of co_skip(). This function skips at most <len> bytes from the
@@ -967,6 +968,7 @@
 
 		/* notify that some data was written to the SI from the buffer */
 		chn->flags |= CF_WRITE_PARTIAL | CF_WROTE_DATA;
+		chn_prod(chn)->flags &= ~SI_FL_RXBLK_ROOM; // si_rx_room_rdy()
 	}
 }
 
diff --git a/src/stream_interface.c b/src/stream_interface.c
index 481938f..9b9a8e9 100644
--- a/src/stream_interface.c
+++ b/src/stream_interface.c
@@ -482,10 +482,6 @@
 				ic->rex = tick_add_ifset(now_ms, ic->rto);
 	}
 
-	if ((sio->flags & SI_FL_RXBLK_ROOM) &&
-	    ((oc->flags & CF_WRITE_PARTIAL) || channel_is_empty(oc)))
-		si_rx_room_rdy(sio);
-
 	if (oc->flags & CF_DONT_READ)
 		si_rx_chan_blk(sio);
 	else
@@ -761,6 +757,8 @@
 		oc->flags |= CF_WRITE_PARTIAL | CF_WROTE_DATA;
 		if (si->state == SI_ST_CON)
 			si->state = SI_ST_RDY;
+
+		si_rx_room_rdy(si_opposite(si));
 	}
 
 	if (conn->flags & CO_FL_ERROR || cs->flags & (CS_FL_ERROR|CS_FL_ERR_PENDING)) {
@@ -920,8 +918,7 @@
 	if (cs->conn->flags & CO_FL_ERROR)
 		return;
 
-	if (si_cs_send(cs))
-		si_rx_room_rdy(si_opposite(si));
+	si_cs_send(cs);
 }
 
 /* Updates at once the channel flags, and timers of both stream interfaces of a
