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 messages that actually constitute ERROR messages, but are not
flagged as such nor do they cause the build process to abort. 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 **** TODO install mate for getting xlibraries
**** Install sdnet **** 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 ** The NetPFGA saga
Problems encountered: Problems encountered:
- The logfile for a compile run is 10k+ lines - The logfile for a compile run is 10k+ lines

View File

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