Hello everyone. After tackling the Device ID problem in my previous issue (many thanks to all who contributed) (https://github.com/sonic-net/sonic-buildimage/issues/19328), I now want to continue my P4 related tests. So I'm using p4runtime-shell to push some p4 config files to the Virtual Switch and I'm receiving the following error: [P4RT] Failed to validate P4Info. PacketIO metadata not supported by P4Info.
This error appears to be quite odd, because I'm testing a similar P4RT setup using Stratum, and I'm able to push the related files at the Virtual Switch that's using Stratum. I suspect maybe that the P4RT version that's used by this repo, may be out of date. Perhaps some different p4 config files could be the correct ones for the SONiC Virtual Switch, but I'm not having any luck finding said files. Could someone point me in the direction? Should I use different P4 config files? Should the p4rt app receive some updates?
Since this issue appears to be P4 related, I'm open to forward this issue to a different repo, though I want to know which one is the appropriate (e.g. p4runtime-shell, p4c, etc.)
Enable the P4RT container with: /usr/bin/p4rt.sh start and set the Device ID using redis-cil:
127.0.0.1:6379> select 4
OK
127.0.0.1:6379[4]> HMSET "NODE_CFG|integrated_circuit0" "node-id" "1"
OK
Attempt a connection using P4 runtime shell: python3 -m p4runtime_sh --grpc-addr <Switch-Address>:9559. This successfully connects to the P4RT shell (Though I should note: I'm not sure how to verify what is happening on the switch's side. Are there any logs available?)
Now attempt to push p4 config files with: python3 -m p4runtime_sh --grpc-addr <Switch-Address>:9559 --config <path-to-info-file>/p4info.txt,<path-to-bmv2-file>/bmv2.json
The command in step 4. should open a connection on the p4runtime-shell with no errors. Also, it would be nice to have a confirmation of what's happening on the SONiC side.
I would suggest referring to the previous issue for the outputs of show techsupport and sudo generate_dump. There have been little, if any, changes since the previous issue, but if it's important to provide files from latest runs of these commands let me know.
Additional information you deem important (e.g. issue happens only occasionally):
Finally, I'm attaching the p4 files I'm trying to push:
Description
Hello everyone. After tackling the Device ID problem in my previous issue (many thanks to all who contributed) (https://github.com/sonic-net/sonic-buildimage/issues/19328), I now want to continue my P4 related tests. So I'm using p4runtime-shell to push some p4 config files to the Virtual Switch and I'm receiving the following error: [P4RT] Failed to validate P4Info. PacketIO metadata not supported by P4Info.
This error appears to be quite odd, because I'm testing a similar P4RT setup using Stratum, and I'm able to push the related files at the Virtual Switch that's using Stratum. I suspect maybe that the P4RT version that's used by this repo, may be out of date. Perhaps some different p4 config files could be the correct ones for the SONiC Virtual Switch, but I'm not having any luck finding said files. Could someone point me in the direction? Should I use different P4 config files? Should the p4rt app receive some updates?
Since this issue appears to be P4 related, I'm open to forward this issue to a different repo, though I want to know which one is the appropriate (e.g. p4runtime-shell, p4c, etc.)
Steps to reproduce the issue:
/usr/bin/p4rt.sh start
and set the Device ID using redis-cil:python3 -m p4runtime_sh --grpc-addr <Switch-Address>:9559
. This successfully connects to the P4RT shell (Though I should note: I'm not sure how to verify what is happening on the switch's side. Are there any logs available?)python3 -m p4runtime_sh --grpc-addr <Switch-Address>:9559 --config <path-to-info-file>/p4info.txt,<path-to-bmv2-file>/bmv2.json
Describe the results you received:
Describe the results you expected:
The command in step 4. should open a connection on the p4runtime-shell with no errors. Also, it would be nice to have a confirmation of what's happening on the SONiC side.
Output of
show version
:Output of
show techsupport
:I would suggest referring to the previous issue for the outputs of
show techsupport
andsudo generate_dump
. There have been little, if any, changes since the previous issue, but if it's important to provide files from latest runs of these commands let me know.Additional information you deem important (e.g. issue happens only occasionally):
Finally, I'm attaching the p4 files I'm trying to push:
p4info.txt: p4info.txt
bmv2.json: bmv2.json
Also, for good measure, here's the .p4 file: main.p4.txt