Set table size to 2^n -1 for everything

Motivated by v6.1 error:

make[1]: Entering directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
p4c-sdnet -o minip4.sdnet --sdnet_info .sdnet_switch_info.dat minip4_solution.p4
actions_egress.p4(52): warning: Table v6_networks is not used; removing
table v6_networks {
      ^^^^^^^^^^^
actions_egress.p4(69): warning: Table v4_networks is not used; removing
table v4_networks {
      ^^^^^^^^^^^
actions_nat64_generic.p4(174): warning: Table nat46 is not used; removing
    table nat46 {
          ^^^^^
minip4_solution.p4(38): [--Wwarn=uninitialized_out_param] warning: out parameter meta may be uninitialized when RealParser terminates
    out metadata meta,
                 ^^^^
minip4_solution.p4(35)
parser RealParser(
       ^^^^^^^^^^
error: LPM table size should be 2^n - 1
actions_nat64_generic.p4(169): error: could not not map table size size
        size = 64;
        ^^^^
error: table match_types are not the same
actions_arp.p4(35): error: could not map table key(s) KeyElement
            hdr.arp.dst_ipv4_addr: lpm;
            ^^^^^^^^^^^^^^^^^^^^^
error: LPM table size should be 2^n - 1
actions_arp.p4(55): error: could not not map table size size
        size = 64;
        ^^^^
Makefile:34: recipe for target 'all' failed
make[1]: *** [all] Error 1
make[1]: Leaving directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
Makefile:31: recipe for target 'frontend' failed
make: *** [frontend] Error 2
nico@nsg-System:~/master-thesis/netpfga/log$
This commit is contained in:
Nico Schottelius 2019-07-24 13:20:35 +02:00
parent 91ec194b78
commit 306d52176f
2 changed files with 40 additions and 8 deletions

View file

@ -6437,10 +6437,39 @@ release, use 'get_user_parameters' instead
messages that actually constitute ERROR messages, but are not
flagged as such nor do they cause the build process to abort.
*** 2019-07-24: setup VM in DCL as third compiler [INSTALL MANUAL]
*** TODO 2019-07-24: setup VM in DCL as third compiler [INSTALL MANUAL]
**** TODO install mate for getting xlibraries
**** Install sdnet
*** TODO 2019-07-24: add features to netpfga: LPM tables cannot be 64
#+BEGIN_CENTER
minip4_solution.p4(38): [--Wwarn=uninitialized_out_param] warning: out parameter meta may be uninitialized when RealParser terminates
out metadata meta,
^^^^
minip4_solution.p4(35)
parser RealParser(
^^^^^^^^^^
error: LPM table size should be 2^n - 1
actions_nat64_generic.p4(169): error: could not not map table size size
size = 64;
^^^^
error: table match_types are not the same
actions_arp.p4(35): error: could not map table key(s) KeyElement
hdr.arp.dst_ipv4_addr: lpm;
^^^^^^^^^^^^^^^^^^^^^
error: LPM table size should be 2^n - 1
actions_arp.p4(55): error: could not not map table size size
size = 64;
^^^^
Makefile:34: recipe for target 'all' failed
make[1]: *** [all] Error 1
make[1]: Leaving directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
Makefile:31: recipe for target 'frontend' failed
make: *** [frontend] Error 2
nico@nsg-System:~/master-thesis/netpfga/log$
#+END_CENTER
** The NetPFGA saga
Problems encountered:
- The logfile for a compile run is 10k+ lines

View file

@ -4,12 +4,15 @@
#define SETTINGS_P4
#define THE_ANSWER_TO_LIFE_THE_UNIVERSE_AND_EVERYTHING 42 /* Important constant */
#define ROUTING_TABLE_SIZE 64 /* maximum routes per protocol */
#define ADDRESS_TABLE_SIZE 64 /* maximum number of addresses per protocol */
#define NDP_TABLE_SIZE 64 /* maximum number of multicast groups */
#define ICMP6_TABLE_SIZE 64 /* icmp6 handlers */
#define ICMP_TABLE_SIZE 64 /* icmp6 handlers */
#define NAT64_TABLE_SIZE 64 /* nat64 and nat46 entries */
#define TEST_TABLE_SIZE 64 /* nat64 and nat46 entries */
#define SIZE_FOR_EVERYTHING 63
#define ROUTING_TABLE_SIZE SIZE_FOR_EVERYTHING /* maximum routes per protocol */
#define ADDRESS_TABLE_SIZE SIZE_FOR_EVERYTHING /* maximum number of addresses per protocol */
#define NDP_TABLE_SIZE SIZE_FOR_EVERYTHING /* maximum number of multicast groups */
#define ICMP6_TABLE_SIZE SIZE_FOR_EVERYTHING /* icmp6 handlers */
#define ICMP_TABLE_SIZE SIZE_FOR_EVERYTHING /* icmp6 handlers */
#define NATSIZE_FOR_EVERYTHING_TABLE_SIZE SIZE_FOR_EVERYTHING /* natSIZE_FOR_EVERYTHING and nat46 entries */
#define TEST_TABLE_SIZE SIZE_FOR_EVERYTHING /* natSIZE_FOR_EVERYTHING and nat46 entries */
#endif