mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-01 10:45:49 +00:00
octeontx2-af: Fix installation of PF multicast rule
Due to target variable is being reassigned in npc_install_flow()
function, PF multicast rules are not getting installed.
This patch addresses the issue by fixing the "IF" condition
checks when rules are installed by AF.
Fixes: 6c40ca957f
("octeontx2-pf: Adds TC offload support").
Signed-off-by: Geetha sowjanya <gakula@marvell.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/20241205113435.10601-1-gakula@marvell.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
This commit is contained in:
parent
f136552b7c
commit
af47a328e8
@ -1452,23 +1452,21 @@ int rvu_mbox_handler_npc_install_flow(struct rvu *rvu,
|
||||
* hence modify pcifunc accordingly.
|
||||
*/
|
||||
|
||||
/* AF installing for a PF/VF */
|
||||
if (!req->hdr.pcifunc)
|
||||
if (!req->hdr.pcifunc) {
|
||||
/* AF installing for a PF/VF */
|
||||
target = req->vf;
|
||||
|
||||
/* PF installing for its VF */
|
||||
if (!from_vf && req->vf && !from_rep_dev) {
|
||||
} else if (!from_vf && req->vf && !from_rep_dev) {
|
||||
/* PF installing for its VF */
|
||||
target = (req->hdr.pcifunc & ~RVU_PFVF_FUNC_MASK) | req->vf;
|
||||
pf_set_vfs_mac = req->default_rule &&
|
||||
(req->features & BIT_ULL(NPC_DMAC));
|
||||
}
|
||||
|
||||
/* Representor device installing for a representee */
|
||||
if (from_rep_dev && req->vf)
|
||||
} else if (from_rep_dev && req->vf) {
|
||||
/* Representor device installing for a representee */
|
||||
target = req->vf;
|
||||
else
|
||||
} else {
|
||||
/* msg received from PF/VF */
|
||||
target = req->hdr.pcifunc;
|
||||
}
|
||||
|
||||
/* ignore chan_mask in case pf func is not AF, revisit later */
|
||||
if (!is_pffunc_af(req->hdr.pcifunc))
|
||||
|
Loading…
Reference in New Issue
Block a user