[P4-dev] p4-validate warning message

Antonin Bas antonin at barefootnetworks.com
Fri Dec 15 12:02:40 EST 2017


Your program cannot compile as it is, there is no start parser and no
ingress control flow.
In your original email, you mention an error message for argument
"'port_to_send"
but there is no "'port_to_send" in this program.

On Thu, Dec 14, 2017 at 1:47 PM, Roshan <sedar at oasis.uclouvain.be> wrote:

> Hi Andy,
>
> warning comes from the following:
>
> header_type header_source_t {
>    fields {
>         preamble: 64;
>         hopCount: 8;
>         is_src: 1;
>    }
> }
>
> header header_source_t myhdr;
>
> action send_pkt(egress_spec) {// p4-validate warning shows this line
>    modify_field(standard_metadata.egress_spec, egress_spec);
>    add_to_field(myhdr.hopCount, 1);
>    modify_field(myhdr.is_src, 1);
> }
>
> table route_pkt {
>   reads {
>         standard_metadata.ingress_port: exact;
>   }
>   actions {
>         send_pkt;
>   }
> }
>
> Yes, it is P4_14.
> p4-validate gives this warning but with p4c-bmv2 no warnings.
>
> thanks,
> Roshan.
>
>
> On 2017-12-14 18:26, Andy Fingerhut wrote:
>
> If you are willing to share the P4 program that gives this warning, it
> would be easier to give a definitive answer.
>
> I am guessing this is a P4_14 program, not P4_16?  There are cases in
> P4_14 programs, especially for the definitions of actions, where because
> the action parameters have no defined bit width, the compiler must try to
> infer what they ought to be, based upon the operations they are used in
> within that action.  If there are multiple different widths that could be
> inferred, the warning could occur.  That, or it could be a compiler bug.
> Here is a Github issue that might be related to what you are seeing:
> https://github.com/p4lang/p4c/issues/1095
>
> Andy
>
> On Thu, Dec 14, 2017 at 7:29 AM, Roshan <sedar at oasis.uclouvain.be> wrote:
>
>> Hi,
>>
>> p4-validate gives this warning: "WARNING in route.p4 line 25: Inferred
>> conflicting widths for argument 'port_to_send' (9 and 8), using larger
>> width".
>>
>>
>> Any idea what could be the reason.
>>
>>
>> Thanks in advance,
>>
>> Roshan.
>>
>>
>> _______________________________________________
>> P4-dev mailing list
>> P4-dev at lists.p4.org
>> http://lists.p4.org/mailman/listinfo/p4-dev_lists.p4.org
>>
>
>
>
> _______________________________________________
> P4-dev mailing listP4-dev at lists.p4.orghttp://lists.p4.org/mailman/listinfo/p4-dev_lists.p4.org
>
>
>
> _______________________________________________
> P4-dev mailing list
> P4-dev at lists.p4.org
> http://lists.p4.org/mailman/listinfo/p4-dev_lists.p4.org
>



-- 
Antonin
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.p4.org/pipermail/p4-dev_lists.p4.org/attachments/20171215/a1d03007/attachment-0002.html>


More information about the P4-dev mailing list