<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<p><br>
</p>
<div class="moz-forward-container"><br>
<br>
-------- Forwarded Message --------
<table class="moz-email-headers-table" border="0" cellpadding="0"
cellspacing="0">
<tbody>
<tr>
<th align="RIGHT" nowrap="nowrap" valign="BASELINE">Subject:
</th>
<td>Re: [P4-design] P4_14 changes</td>
</tr>
<tr>
<th align="RIGHT" nowrap="nowrap" valign="BASELINE">Date: </th>
<td>Tue, 27 Sep 2016 23:11:11 -0700</td>
</tr>
<tr>
<th align="RIGHT" nowrap="nowrap" valign="BASELINE">From: </th>
<td>Changhoon Kim <a class="moz-txt-link-rfc2396E" href="mailto:chang@barefootnetworks.com"><chang@barefootnetworks.com></a></td>
</tr>
<tr>
<th align="RIGHT" nowrap="nowrap" valign="BASELINE">To: </th>
<td><a class="moz-txt-link-abbreviated" href="mailto:p4-design@lists.p4.org">p4-design@lists.p4.org</a> <a class="moz-txt-link-rfc2396E" href="mailto:p4-design@lists.p4.org"><p4-design@lists.p4.org></a></td>
</tr>
<tr>
<th align="RIGHT" nowrap="nowrap" valign="BASELINE">CC: </th>
<td>Amin Vahdat <a class="moz-txt-link-rfc2396E" href="mailto:vahdat@google.com"><vahdat@google.com></a></td>
</tr>
</tbody>
</table>
<br>
<br>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<div dir="ltr">Team,
<div><br>
</div>
<div>We haven't had time to discuss these changes at our last
meeting. Gordon, Peter, and a few other told me they're in
favor of these tidying-up changes for P4_14. Please give me a
holler in a day or two if you oppose to these. Otherwise, I'll
publish these changes via P4.org late Friday.</div>
<div><br>
</div>
<div>Thanks.</div>
<div><br>
</div>
<div>-- Chang</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Thu, Sep 22, 2016 at 10:03 AM,
Peter Newman (petenewm) <span dir="ltr"><<a
moz-do-not-send="true" href="mailto:petenewm@cisco.com"
target="_blank">petenewm@cisco.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div style="word-wrap:break-word">
Chang,
<div><br>
</div>
<div>Thanks for tidying this up. I had noticed that the
primitive actions in switch.p4 did not exactly agree
with the spec. This looks fine.</div>
<div><br>
</div>
<div>—Peter</div>
<div><br>
</div>
<div><br>
<div>
<div>
<div class="h5">
<div>On Sep 20, 2016, at 6:11 PM, Changhoon Kim
<<a moz-do-not-send="true"
href="mailto:chang@barefootnetworks.com"
target="_blank">chang@barefootnetworks.com</a>>
wrote:</div>
<br>
</div>
</div>
<div>
<div>
<div class="h5">
<div dir="ltr">Hi P4 designers,
<div><br>
</div>
<div>While we're all working busily to
review the P4_16 proposal and trying to
solidify it, I'd like to make a couple
proposals related to a completely
different topic: P4_14.</div>
<div><br>
</div>
<div>1) The currently widely adopted P4_14
spec is the v1.0.2 version. All the public
p4lang code out there is largely based on
this spec, and I expect that this version
will continue to be used for a while, as
we'll phase into P4_16. Unfortunately
there are a few minor discrepancies
between the v1.0.2 spec and what's
actually implemented in p4lang/p4-hlir and
BMv2, causing confusion to P4 beginners
and writers right now. I think it'll be
very helpful for the P4 community if we
fix those discrepancies quickly. The
attached draft -- which is tentatively
versioned v1.0.3, but could be officially
named P4_14 -- is an attempt to fix those
issues. The extent of change is minimal,
and the following list summarizes it.
There's a revision history in the Appendix
as well. I suggest we review this version
quickly and publish it, replacing the
v1.0.2 spec.</div>
<div>
<ul style="font-size:12.8px">
<li style="margin-left:15px"><span
style="font-size:12.8px">Page 29:
removed register layout in register
declaration.</span><br>
</li>
<li style="margin-left:15px"><span
style="font-size:12.8px">removed
bracket-based register referencing
from </span><br>
<ul>
<span>
<li style="margin-left:15px"><span
style="font-size:12.8px">the
parameters of modify_field,
add_to_field and add
primitives</span></li>
</span>
</ul>
</li>
<li style="margin-left:15px"><span
style="font-size:small">Page 27,
Section 7 intro.</span></li>
<li style="margin-left:15px"><span
style="font-size:small">Page 47,
9.1.2 Parameter Binding</span></li>
<li style="margin-left:15px"><span
style="font-size:small">page 87,
example code: Use
register_read/write primitives
instead.</span></li>
</ul>
<li style="margin-left:15px"><span
style="font-size:12.8px">page 32:
fixed execute_meter, <span
style="font-size:12.8px">modify_field_wi<wbr>th_hash_based_</span><span
style="font-size:12.8px">offset, </span></span><span
style="font-size:12.8px">added
register_read/write</span></li>
<li style="margin-left:15px"><span
style="font-size:12.8px">pages 37: </span><span
style="font-size:12.8px">fixed the
name,</span><span
style="font-size:12.8px"> description
and parameter ordering of </span><span
style="font-size:12.8px">modify_field_with_hash_base<wbr>d_</span><span
style="font-size:12.8px">offset.</span></li>
<li style="margin-left:15px"><span
style="font-size:12.8px">pages 40, 41:
fixed execute_meter and </span><span
style="font-size:12.8px">added
register_read/write primitives.</span></li>
<li style="margin-left:15px">Changed
optional parameters of push, pop,
resubmit, recirculate, clone_*
primitives to mandatory parameters.
Revised pop/push descriptions
accordingly. </li>
</div>
<div>2) The v1.1 spec is currently in a
pre-release review state. It hasn't gotten
much traction, and we weren't able to
secure the necessary code contributions
that fully realize this version either.
Meanwhile P4_16 offers language features
addressing all the goals we wanted to
achieve with v1.1, including extern types,
stronger type, expression support, etc.,
and even more. Given that we'll publish
P4_16 soon, I suggest we withdraw the v1.1
spec. That way, we'll avoid proliferation
of spec variations and minimize
confusion. <br>
</div>
<div><br>
</div>
<div>Let me know your thought on this. If
there's no strong objection, I'll go ahead
and make these changes by next week.</div>
<div><br>
</div>
<div>Thanks.</div>
<div><br>
</div>
<div>-- Chang<br>
<div><br>
</div>
<div><br>
</div>
</div>
</div>
</div>
</div>
<span><p4_14_v1.0.3-draft.pdf></span>______<wbr>______________________________<wbr>___________<br>
P4-design mailing list<br>
<a moz-do-not-send="true"
href="mailto:P4-design@lists.p4.org"
target="_blank">P4-design@lists.p4.org</a><br>
<a moz-do-not-send="true"
href="http://lists.p4.org/mailman/listinfo/p4-design_lists.p4.org"
target="_blank">http://lists.p4.org/mailman/<wbr>listinfo/p4-design_lists.p4.<wbr>org</a><br>
<br>
</div>
</div>
<br>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</div>
</div>
<br /><br />
<hr style='border:none; color:#909090; background-color:#B0B0B0; height: 1px; width: 99%;' />
<table style='border-collapse:collapse;border:none;'>
<tr>
<td style='border:none;padding:0px 15px 0px 8px'>
<a href="https://www.avast.com/antivirus">
<img border=0 src="http://static.avast.com/emails/avast-mail-stamp.png" alt="Avast logo" />
</a>
</td>
<td>
<p style='color:#3d4d5a; font-family:"Calibri","Verdana","Arial","Helvetica"; font-size:12pt;'>
Ezt az e-mailt az Avast víruskereső szoftver átvizsgálta.
<br><a href="https://www.avast.com/antivirus">www.avast.com</a>
</p>
</td>
</tr>
</table>
<br />
</body>
</html>