Netdev Archive on lore.kernel.org help / color / mirror / Atom feed
From: Tony Nguyen <anthony.l.nguyen@intel.com> To: davem@davemloft.net, kuba@kernel.org Cc: Dave Ertman <david.m.ertman@intel.com>, netdev@vger.kernel.org, sassmann@redhat.com, anthony.l.nguyen@intel.com, Tony Brelinski <tonyx.brelinski@intel.com> Subject: [PATCH net 5/6] ice: Allow all LLDP packets from PF to Tx Date: Fri, 4 Jun 2021 09:08:15 -0700 [thread overview] Message-ID: <20210604160816.3391716-6-anthony.l.nguyen@intel.com> (raw) In-Reply-To: <20210604160816.3391716-1-anthony.l.nguyen@intel.com> From: Dave Ertman <david.m.ertman@intel.com> Currently in the ice driver, the check whether to allow a LLDP packet to egress the interface from the PF_VSI is being based on the SKB's priority field. It checks to see if the packets priority is equal to TC_PRIO_CONTROL. Injected LLDP packets do not always meet this condition. SCAPY defaults to a sk_buff->protocol value of ETH_P_ALL (0x0003) and does not set the priority field. There will be other injection methods (even ones used by end users) that will not correctly configure the socket so that SKB fields are correctly populated. Then ethernet header has to have to correct value for the protocol though. Add a check to also allow packets whose ethhdr->h_proto matches ETH_P_LLDP (0x88CC). Fixes: 0c3a6101ff2d ("ice: Allow egress control packets from PF_VSI") Signed-off-by: Dave Ertman <david.m.ertman@intel.com> Tested-by: Tony Brelinski <tonyx.brelinski@intel.com> Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com> --- drivers/net/ethernet/intel/ice/ice_txrx.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/net/ethernet/intel/ice/ice_txrx.c b/drivers/net/ethernet/intel/ice/ice_txrx.c index 93e5d9ebfd74..04748aa4c7c8 100644 --- a/drivers/net/ethernet/intel/ice/ice_txrx.c +++ b/drivers/net/ethernet/intel/ice/ice_txrx.c @@ -2149,6 +2149,7 @@ ice_xmit_frame_ring(struct sk_buff *skb, struct ice_ring *tx_ring) struct ice_tx_offload_params offload = { 0 }; struct ice_vsi *vsi = tx_ring->vsi; struct ice_tx_buf *first; + struct ethhdr *eth; unsigned int count; int tso, csum; @@ -2195,7 +2196,9 @@ ice_xmit_frame_ring(struct sk_buff *skb, struct ice_ring *tx_ring) goto out_drop; /* allow CONTROL frames egress from main VSI if FW LLDP disabled */ - if (unlikely(skb->priority == TC_PRIO_CONTROL && + eth = (struct ethhdr *)skb_mac_header(skb); + if (unlikely((skb->priority == TC_PRIO_CONTROL || + eth->h_proto == htons(ETH_P_LLDP)) && vsi->type == ICE_VSI_PF && vsi->port_info->qos_cfg.is_sw_lldp)) offload.cd_qw1 |= (u64)(ICE_TX_DESC_DTYPE_CTX | -- 2.26.2
next prev parent reply other threads:[~2021-06-04 16:09 UTC|newest] Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-06-04 16:08 [PATCH net 0/6][pull request] Intel Wired LAN Driver Updates 2021-06-04 Tony Nguyen 2021-06-04 16:08 ` [PATCH net 1/6] ice: Fix allowing VF to request more/less queues via virtchnl Tony Nguyen 2021-06-04 16:08 ` [PATCH net 2/6] ice: Fix VFR issues for AVF drivers that expect ATQLEN cleared Tony Nguyen 2021-06-04 16:08 ` [PATCH net 3/6] ice: handle the VF VSI rebuild failure Tony Nguyen 2021-06-04 16:08 ` [PATCH net 4/6] ice: report supported and advertised autoneg using PHY capabilities Tony Nguyen 2021-06-04 16:08 ` Tony Nguyen [this message] 2021-06-04 16:08 ` [PATCH net 6/6] virtchnl: Add missing padding to virtchnl_proto_hdrs Tony Nguyen 2021-06-04 21:40 ` [PATCH net 0/6][pull request] Intel Wired LAN Driver Updates 2021-06-04 patchwork-bot+netdevbpf
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20210604160816.3391716-6-anthony.l.nguyen@intel.com \ --to=anthony.l.nguyen@intel.com \ --cc=davem@davemloft.net \ --cc=david.m.ertman@intel.com \ --cc=kuba@kernel.org \ --cc=netdev@vger.kernel.org \ --cc=sassmann@redhat.com \ --cc=tonyx.brelinski@intel.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).