Fix wrong arguments in load_pdr action
According to fabric.p4, needs_qfi_push can only be present
when using load_pdr_qos, but not load_pdr.
Change-Id: I63b74762f56acc7e8a703a32ea368eb423ece41a
(cherry picked from commit 94015dee30b6d98e2658e6ff1ba557f5ad5010b5)
diff --git a/pipelines/fabric/impl/src/main/java/org/onosproject/pipelines/fabric/impl/behaviour/upf/FabricUpfTranslator.java b/pipelines/fabric/impl/src/main/java/org/onosproject/pipelines/fabric/impl/behaviour/upf/FabricUpfTranslator.java
index 179e793..f2e7584 100644
--- a/pipelines/fabric/impl/src/main/java/org/onosproject/pipelines/fabric/impl/behaviour/upf/FabricUpfTranslator.java
+++ b/pipelines/fabric/impl/src/main/java/org/onosproject/pipelines/fabric/impl/behaviour/upf/FabricUpfTranslator.java
@@ -368,11 +368,10 @@
tableId = FABRIC_INGRESS_SPGW_DOWNLINK_PDRS;
matchBuilder.matchExact(HDR_UE_ADDR, pdr.ueAddress().toInt());
if (pdr.hasQfi()) {
- actionBuilder.withParameter(new PiActionParam(QFI, pdr.qfi()));
+ actionBuilder.withParameter(new PiActionParam(QFI, pdr.qfi()))
+ .withParameter(new PiActionParam(NEEDS_QFI_PUSH, pdr.pushQfi() ? TRUE : FALSE));
actionId = FABRIC_INGRESS_SPGW_LOAD_PDR_QOS;
}
- actionBuilder.withParameter(
- new PiActionParam(NEEDS_QFI_PUSH, pdr.pushQfi() ? TRUE : FALSE));
} else {
throw new UpfProgrammableException("Flexible PDRs not yet supported! Cannot translate " + pdr);
}