Skip to content

Commit 320fae9

Browse files
committed
Merge branch '200GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/net-queue
Tony Nguyen says: ==================== Intel Wired LAN Driver Updates 2023-12-26 (idpf) This series contains updates to idpf driver only. Alexander resolves issues in singleq mode to prevent corrupted frames and leaking skbs. Pavan prevents extra padding on RSS struct causing load failure due to unexpected size. * '200GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/tnguy/net-queue: idpf: avoid compiler introduced padding in virtchnl2_rss_key struct idpf: fix corrupted frames and skb leaks in singleq mode ==================== Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Jakub Kicinski <[email protected]>
2 parents 2311e06 + a613fb4 commit 320fae9

File tree

3 files changed

+4
-5
lines changed

3 files changed

+4
-5
lines changed

drivers/net/ethernet/intel/idpf/idpf_singleq_txrx.c

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1044,7 +1044,6 @@ static int idpf_rx_singleq_clean(struct idpf_queue *rx_q, int budget)
10441044
}
10451045

10461046
idpf_rx_sync_for_cpu(rx_buf, fields.size);
1047-
skb = rx_q->skb;
10481047
if (skb)
10491048
idpf_rx_add_frag(rx_buf, skb, fields.size);
10501049
else

drivers/net/ethernet/intel/idpf/idpf_txrx.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -396,7 +396,7 @@ static void idpf_rx_desc_rel(struct idpf_queue *rxq, bool bufq, s32 q_model)
396396
if (!rxq)
397397
return;
398398

399-
if (!bufq && idpf_is_queue_model_split(q_model) && rxq->skb) {
399+
if (rxq->skb) {
400400
dev_kfree_skb_any(rxq->skb);
401401
rxq->skb = NULL;
402402
}

drivers/net/ethernet/intel/idpf/virtchnl2.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1104,9 +1104,9 @@ struct virtchnl2_rss_key {
11041104
__le32 vport_id;
11051105
__le16 key_len;
11061106
u8 pad;
1107-
__DECLARE_FLEX_ARRAY(u8, key_flex);
1108-
};
1109-
VIRTCHNL2_CHECK_STRUCT_LEN(8, virtchnl2_rss_key);
1107+
u8 key_flex[];
1108+
} __packed;
1109+
VIRTCHNL2_CHECK_STRUCT_LEN(7, virtchnl2_rss_key);
11101110

11111111
/**
11121112
* struct virtchnl2_queue_chunk - chunk of contiguous queues

0 commit comments

Comments
 (0)