diff --git a/connection.go b/connection.go
index <HASH>..<HASH> 100644
--- a/connection.go
+++ b/connection.go
@@ -1483,8 +1483,11 @@ func (c *connection) deleteRequest(r request) bool {
 		panic(n)
 	}
 	c.updateRequests()
-	// TODO: Other connections that aren't interested, and can provide this
-	// chunk might be wakeable?
+	for _c := range c.t.conns {
+		if !_c.Interested && _c != c && c.PeerHasPiece(pieceIndex(r.Index)) {
+			_c.updateRequests()
+		}
+	}
 	return true
 }
Wake connections that could send a request for a deleted piece

I'm not sure this is entirely correct, but not doing it is probably less correct. It should help prevent stalls where writers aren't requesting because they're starved out of opportunities by other connections.