summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--net/packet/af_packet.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/net/packet/af_packet.c b/net/packet/af_packet.c
index ab10e84eda3a..82a6f34d39d0 100644
--- a/net/packet/af_packet.c
+++ b/net/packet/af_packet.c
@@ -516,11 +516,13 @@ static void prb_init_blk_timer(struct packet_sock *po,
static void prb_setup_retire_blk_timer(struct packet_sock *po, int tx_ring)
{
+ struct tpacket_kbdq_core *pkc;
+
if (tx_ring)
BUG();
- prb_init_blk_timer(po, &po->rx_ring.prb_bdqc,
- prb_retire_rx_blk_timer_expired);
+ pkc = tx_ring ? &po->tx_ring.prb_bdqc : &po->rx_ring.prb_bdqc;
+ prb_init_blk_timer(po, pkc, prb_retire_rx_blk_timer_expired);
}
static int prb_calc_retire_blk_tmo(struct packet_sock *po,