diff --git a/exchange/bitswap/bitswap.go b/exchange/bitswap/bitswap.go
index 88ff418c7731d258c8a1c564f91d771401dd3ae6..af84caa057d5f52749c40a60a71c7e1f7d5fc5b1 100644
--- a/exchange/bitswap/bitswap.go
+++ b/exchange/bitswap/bitswap.go
@@ -91,7 +91,7 @@ func (bs *bitswap) Block(parent context.Context, k u.Key) (*blocks.Block, error)
 			go func(p peer.Peer) {
 
 				log.Debugf("bitswap dialing peer: %s", p)
-				err := bs.sender.DialPeer(p)
+				err := bs.sender.DialPeer(ctx, p)
 				if err != nil {
 					log.Errorf("Error sender.DialPeer(%s)", p)
 					return
diff --git a/exchange/bitswap/network/interface.go b/exchange/bitswap/network/interface.go
index 467b0f400bdf09f98cd7998a9cbc6fc84c36be4a..1d3fc63a5d8fc72880009aabb5df0a31856b200f 100644
--- a/exchange/bitswap/network/interface.go
+++ b/exchange/bitswap/network/interface.go
@@ -12,7 +12,7 @@ import (
 type Adapter interface {
 
 	// DialPeer ensures there is a connection to peer.
-	DialPeer(peer.Peer) error
+	DialPeer(context.Context, peer.Peer) error
 
 	// SendMessage sends a BitSwap message to a peer.
 	SendMessage(
diff --git a/exchange/bitswap/network/net_message_adapter.go b/exchange/bitswap/network/net_message_adapter.go
index c7e1a852d665357e8bab6255b28fd4e392558a95..1bdf13ae984f83e82365b2fbc39a9025e41aaafa 100644
--- a/exchange/bitswap/network/net_message_adapter.go
+++ b/exchange/bitswap/network/net_message_adapter.go
@@ -67,7 +67,7 @@ func (adapter *impl) HandleMessage(
 	return outgoing
 }
 
-func (adapter *impl) DialPeer(p peer.Peer) error {
+func (adapter *impl) DialPeer(ctx context.Context, p peer.Peer) error {
 	return adapter.net.DialPeer(p)
 }