Snabb 2018.01 “Daikon”
This release includes a new fleshed out version of Igalia’s YANG based
configuration subsystem—now known as lib.ptree, for “process tree”, as well as
Alexander Gall’s l2vpn, a virtual multi-port Ethernet switch on top of a plain
IPv6. Additionally, lib.ipsec now support ESP in tunnel mode. As usual, Daikon
also includes assorted bug fixes.
Major Changes
- #1257 Reworked multi-process reconfigurable network functions
- #1261 Upstreamed Alexander Gall’s l2vpn
- #1266 lib.ipsec: add support for ESP in tunnel mode
Minor Changes
- #1220 lib.ipsec: added IPsec ESP interoperability test with Linux
- #1259 core.link: free packets during link.free
- #1260 snabb top: fixed a bug; should have improved performance
Contributors
Alexander Gall (64):
- a4acb5f: Add a Snabb program to construct a complete L2VPN endpoint
- cd89bed: Fix identification of proper p2p VPN
- c4cc025: Add documentation
- a9d1ca8: Untabify apps/intel/intel1g.lua
- 2ebacf2: Fix regression introduced by 11a19ce
- b06fbb6: Amend the list of devices supported by the Intel i210 driver
- f2f400a: Add configurable MTU to intel1g.lua
- cf6e415: Add SNMP support to intel1g.lua
- 8777c5f: Fix bridge post_config() call
- 3a3f81e: Use /tmp to store test data in pseudowire selftest
- b68519d: Fix ifSpeed in intel10g and intel1g
- 5886ebc: Use logger:can_log() in l2vpn tunnel modules
- 57848e7: Improve performance of the VLAN multiplexer
- 53e930b: Set ifAlias, ifDescr in intel drivers
- 0f5f76e: Add oversized packets counter to ifInDiscards for intel10g
- 244b0a2: Add app for static ND
- 32b8767: Add VLAN support to the l2vpn program
- a6032d6: Remove MAC addresses from pseudowire app
- aac33d4: Allow per-PW control-channel disable override
- 1a55b0e: Add missing image files
- c38a501: Fix bug in l2vpn
- 93f94f8: Remove SNMP code from Intel drivers
- e5f14ce: Extract physical MAC address in intel10g
- 47eaceb: Make ND apps reconfigurable
- 771f7a4: Fixes for new packet API
- d7e9c39: Fixes/enhancements for iftable_mib.lua
- 31d6911: Streamline SNMP config in l2vpn
- 7e9fba1: De-couple SNMP setup from ND reconfig
- fed01a8: Add SIOCGIF{FLAGS,MTU,HWADDR} ioctls to ljsyscall
- f71c64f: Augment stats counters for apps.tap.tap
- d59c806: Properly count the number of pseudowires
- 134b4ce: Disable interrupts in intel10g
- f920867: Make waiting for link-up optional in intel{1,10}g
- 5e7f8dc: nd_light: add option to reduce verbosity
- 9365ce3: Fix program/l2vpn/pseudowire selftest
- c821bf2: Fix l2vpn pseudowire for new packet semantics
- 47fa2ce: Fix tap after merge
- e912fa3: intel1g: replace lib.timer by lib.throttle
- b3c1b6b: nd_light: add "quiet" option to config template
- 7e4f8d3: inetl_app: add "wait_for_link" option to config template
- 4fdd530: l2vpn: switch to intel_mp drivers
- 916f6c8: l2vpn: add extra_config to driver configuration
- 2833f21: l2vpn/README.md: Fix indention
- e498067: l2vpn: document new extra_config driver configuration item
- c9bbb85: l2vpn: use intel_mp in README throughout
- 5f763e1: Remove intel1g driver
- 22d5ebb: Revert intel_app, inetl10g to upstream/master
- 4400bbf: intel_mp: move shm initialization to constructor
- 3b0c82f: iftable_mib: streamline processing
- 9bec79f: Tap: add support for MTU, operational status
- 47aee50: l2vpn: access interface counters via read-only shm frames
- f094f74: apps.vlan: use config parser, update README
- b61c4b0: nd_light: add optional option local_mac
- dd0a91c: nd_light: fix bug in NS validation
- a9c0ddf: program.l2vpn.l2vpn: only use nd_light
- 23ffbb5: l2vpn: support dynamic reconfiguration
- 50ba67d: core.app: fix bug in reconfiguration
- da5346b: l2vpn: add port-mirroring option
- d5960dc: apps.vlan.vlan: remove assert in VlanMux link()
- a886ed3: apps.ipv6: document quiet option of nd_light
- 54b99f8: l2vpn: re-write of app network construction
- 8c5ea03: l2vpn: fix bug in app links generation
- 96026fd: Fix bug in p2p optimization
- 821fd8d: Add -jopt option to l2vpn program to set JIT options
Andy Wingo (215):
- dd73f5a: Fix structural typing of YANG data
- 34a0dc4: Worker processes have useful process name
- 950d2b2: lwaftr: main process should not run at 100% CPU
- 1163af7: yang: Mark list keys as mandatory after expansion
- 354a18c: Better support for identity in YANG schemas
- 4e9b818: yang: Attach default prefix to identityref type nodes.
- 09e7267: Enable YANG data range and length validation
- 71345f3: Fix schema test for range representation change
- 0439614: Remove unused code
- b231028: Adapt property-based test generation for range change.
- 4f6de01: Leader should poll follower for its channel. (#866)
- 8291a3a: Remove Ethernet-specific code from lwAFTR app
- c0abcf0: Move NDP app to ndp.lua
- 22af99d: Inline helper function only used by NDP app
- df58830: NDP assigns random MAC addr if needed, stamps MAC on outgoing packets
- 7d71c27: Localize more functions in ndp.lua
- fbbc1f7: Fix bugs in migrated NDP app, add test
- d300df6: Use more structs in NDP implementation
- 3d9ad9a: Convert advertisement part of NDP app to FFI style
- ae714b6: Finish refactoring NDP to FFI style
- 5931f63: Finish cleanup of NDP app
- 581589e: Fix NDP nits.
- a6cc106: Fix errors constructing NDP packets
- 0995226: Remove backpressure from IPv4 ping responder
- 3930a04: Reindent lib.yang.state
- 3d26a46: More robust lib.yang.state find_counters routine
- 6fe8424: YANG schema inherit-config phase gives all nodes config property
- 9da160e: Separate YANG grammars for config and state data
- 42d4e34: Fix grammar generation
- 45ab10c: Unify lwAFTR and other state query around YANG
- 49c7c81: Lwcounter module uses YANG to know available counters
- 259ffdb: Attempt to fix snabbvmx check
- 4f1fc20: README reformatting to trigger CI
- 40d4373: Fix snabbvmx some more
- 37268cc: Revert change to snabbvmx lwaftr
- d66184a: Add YANG docs to documentation build.
- 6c9af14: Fix YANG doc link.
- b00485e: Snabb lwAFTR version is Snabb version
- d75381a: Fix bugs in generate-binding-table.
- a3557d9: Release Snabb lwAFTR 2017.07.01
- d8fd1c0: Fix typo.
- 745b5b2: More robust name-to-PID mapping in query test
- 08d30f7: Work around race condition in query tests
- 7fd3622: Beginning of separating out IPv4 reassembly app
- cd90b37: Remove unused vlan capability from fragmentation tests
- 64bfbb5: Further work to separate IPv4 reassembly from lwAFTR
- d01a489: Style cleanups in reassembly tests
- d999ef0: Tighten packet generation for reassembly tests
- c294c2c: Use fragmenting app, not library, when testing reassembly app
- dbd18ad: Simplify reassembly test
- 03e9e6a: Inline reassembly test into reassemble.lua
- d719cfa: Clean up reassembly header
- f2bad7a: Rewrite reassembly tests to be exhaustive
- 839e9ea: Remove global state in reassembler
- 62203fa: Beginning of moving reassembly to FFI style
- 0b6a8d4: Finish moving reassembly to FFI style
- 896c5ae: CTable random eviction wrapper uses ctable API
- 1cbc626: ctable add method returns pointer to entry, not index
- 01efd22: Inline reassembly handling
- fa75b19: Inline more reassembly helpers
- 781dd8a: Minor reassembly cleanups
- 5a95294: Reassembler embeds struct packet
- 5b04a44: More small reassembly cleanups
- c7b8b69: Tighten up validation of reassembly input packets
- 232fe4c: Reassemble app uses SHM frame to open counters
- 4fe94b7: Rename reassembler config params
- e90371e: Add IPv4 reassembler documentation
- 90b9c54: ctable:add() should return a pointer, not a reference
- 597f744: IPv4 reassembly: Periodically update counters
- 366d3b8: Fix IPv4 reassembly bugs
- 707c1e7: Adapt counters to new IPv4 reassembly table size
- 087d3b8: IPv4 reassembly passes through non-IPv4 packets
- 673d48c: Update README
- 260fc85: Update reassembly counter expectations
- a1781e7: Begin extracting IPv6 reassembler out of lwaftr
- 033ccb8: Add IPv6 reassembly tests
- ca370fd: IPv6 reassembler: finish converting to FFI style
- 48485f3: IPv6 reassembler passes through non-IPv6 traffic
- 15e7ec8: lwcounter avoids creating counters for IPv6 reassembly
- b80b7c9: Update IPv6 reassembly counter memory use expectations
- 05ad9d6: Begin extracting IPv4 fragmenter from lwAFTR
- 1483c6d: Add exhaustive IPv4 fragmentation tests
- 6a53389: Add fragmentation comment
- 97cd285: Fix IPv4 reassembly when last fragment is full MTU
- e6c3bc2: Start to convert IPv4 fragmenter to FFI style
- f077775: Inline fragmentation code into app
- f7b87d8: IPv4 fragments and transmits directly
- d54d4ed: Only test valid MTUs for IPv6 reassembly
- a11da97: Port IPv6 fragmenter to new style.
- b3a873f: Fix nondeterminacy in "snabb lwaftr check"
- 045ff0c: Fix previous patch
- 136fdc6: Move fragmentation-disabled drop counters back to lwAFTR
- 8673288: Fix unintentional hairpinning in lwaftr config_test.
- 520d5db: Convert lwAFTR to "shm frame" mechanism
- 107c999: Fix whitespace issue
- 44515e7: Extract ICMP echo responders from lwAFTR
- da223f5: Inline some ICMP helpers into their use modules
- 5de181e: Minor ICMPv4 echo responder refactors
- 4b484e6: Port ICMPv4 echo responder over to FFI style
- 0729fce: Rewrite ICMPv6 echo responder into FFI style.
- 7e64823: Add documentation for ICMP echo responders
- 5522091: Remove "snabb lwaftr run-nohw"
- 2f2a912: Remove run-nohw test.
- bab1b8a: Remove apps.lwaftr.conf
- d9988f6: Remove unused apps.lwaftr.dump
- 0c6862b: Remove unused apps.lwaftr.generator
- 5fa5807: Fix "snabb snabbvmx lwaftr"
- 9223f80: Fix snabbvmx again
- a7bd117: Comment to force CI to run again
- b506394: Add needed import
- b68815f: Fix needed import.
- 293e50d: Remove a couple of unused imports
- d95799c: Convert lwAFTR to use methods
- bfa07ee: Inline lwAFTR helper ICMP library into lwaftr.lua
- 10dca61: Inline lwheader.lua into lwaftr.lua
- 82236b8: Remove unused lwtypes includes
- d2022fb: Remove unused definitions from lwtypes
- 99e5b0f: Inline lwtypes into lwaftr.lua
- 57c1f00: More consistent naming of FFI types in lwaftr
- c8d5d48: More minor lwAFTR style refactorings
- 3abe151: Shorten names in write_ipv6_header
- 471b69a: Fix error introduced by refactoring
- 67873f1: Repeater apps have push functions instead of pull functions
- b097e4b: Stabilize breathe order
- 4f12e09: Allow LPM self-tests to complete even if no CPU affinity
- e673303: Restart CI
- a77330d: Add -j option to "snabb lwaftr run" and "bench"
- c59e2e3: Add documentation
- fa9f31a: Ingress drop timer doesn't count drops in the 10 seconds after a flush
- 97910f3: Snabb lwAFTR v2017.08.01 release
- c28e111: Add cpuset module
- 6d2050b: Allow multiple CPUs via --cpu
- 154163c: Print out the CPU to which we bind data plane processes
- dc1e667: Add lwAFTR changelog for v2017.08.02
- 9630c34: Snabb lwAFTR v2017.08.02
- 080e5ea: Use false instead of "off" to disable intel_mp txq/rxq
- b45149e: ChangeLog for v2017.08.03
- 8f93a85: Snabb lwAFTR v2017.08.03
- 4d73be0: RSS queue ID in examples is 0, not 1
- fb18030: lwaftr run migrates configs in place
- 326ebd9: Simplify parsing of single-instance lwaftr configurations
- 5a279a3: Set queue ID as RSS queue ID
- c5df53c: Add dedicated copier for YANG data
- 70d2dd2: Produce one worker config per device and queue
- b2d006f: Worker ids built using RSS id, not containing struct
- 1286b07: Fix error in snabbvmx setup
- 31b2084: Fix another error in snabbvmx setup
- d6974ca: Another friggin snabbvmx error
- c133476: Zero out synthesized lwaftr packets
- 9d30c3c: Update benchdata/ packets to match test configurations
- 940f0db: Fix bug printing error in config leader
- edb15dd: Fix accessing first queue
- 1cccf7a: Fix sparse cltable value serialization
- 0e73d94: Fix insertion into sparse cltables
- 293838e: Fix serialization of sparse arrays, again
- e29810f: Fix yet another sparse cltable serialization problem (!)
- b5de0d5: Update configuration.md to discuss RSS.
- 5e159f0: Fix inconsistencies in documentation.
- 59dec82: Reflow text
- dd5c53b: lwAFTR always uses pool 0.
- 2ea981c: Change log for Snabb lwAFTR v2017.08.04.
- 72f2fe3: Snabb lwAFTR v2017.08.04
- d3b3c87: Use different pool numbers for on-a-stick VMDq interfaces
- 9f769e0: Ignore unexpected ARP replies
- e15b305: Workers can communicate next-hop MAC address between themselves
- c72c6c2: Workers can communicate next-hop MAC address between themselves (NDP)
- f66b085: lwAFTR configures ARP and NDP with shared_next_mac_key
- bc41ec3: Give snabb-softwire-v2 a different namespace from snabb-softwire-v1
- 59fcb91: Avoid leaking shared next MAC key in ARP
- 8216ef6: Avoid leaking shared next MAC key in NDP
- 1fbb5a9: Update lwAFTR reconfiguration docs for new YANG schema
- 709470a: Add snabb alarms documentation
- 9ba052a: Prepare for Snabb lwAFTR v2017.08.05
- bc32917: Add new ietf-softwire-br, ietf-softwire-common schemas
- 878f1d4: Implement "refine" support for YANG schemas.
- 9467691: Fix typo
- d153c4c: Fix ietf-softwire-br by lifting per-instance state into traffic-stat.
- 4631a6f: Fix querying config or state data by path when choices are involved
- 14dd544: Fix "snabb config get-state" for foreign schemas
- 27703e0: Add support for new ietf-softwire-br
- 46a30ee: Remove support for ietf-softwire; ietf-softwire-br now default
- d28efc9: Fix typo
- 55ad468: Fix nits
- d0cd819: Snabb lwAFTR v2017.08.06
- bd9609e: Fix bug in cpuset:release()
- fde3434: Copy app.config to lib.ptree ("process tree")
- 3704987: Rename lib.ptree.leader to lib.ptree.manager
- 3619ac2: Rename lib.ptree.follower to lib.ptree.worker
- 90b7c2f: Add lib.scheduling
- 67e44e8: Rework ptree manager to handle worker scheduling
- aaeac1b: Make worker app private
- 49651f8: Rework ptree worker to be library, not app
- 7473408: Refactor ptree manager to be lib, not app
- d49eb7d: Ptree manager stop() method shuts down workers too
- 356d34e: Ptree worker refactors
- 9490757: Add ptree manager log facility; fix manager main function
- 9511c0b: Update ptree worker comment
- 7c0d1a1: Ptree manager runs timers
- 3c5f169: Ptree manager has "state change listener" facility
- 6080eca: Timers can be cancelled
- 5c3600a: Port lwAFTR over to use lib.ptree
- cb72a6e: Remove apps.config
- 27280f4: Add facility to add yang schemas to Snabb's database.
- 9420075: Rename lib.ptree.manager to lib.ptree.ptree
- d6e0229: Add "snabb ptree" program
- 7ee2983: Update ptree documentation
- a77867a: Add programs.inc to gitignore
- 68d70ba: Fix example ptree setup.lua
- 378701c: More useful cpuset
- 4e96594: Fix NUMA node in cpuset warning
- 42191ac: Return ptree manager socket name to old name
- afe2fbd: If "snabb config" doesn't have a schema, fetch remotely
- f034af8: Remove debugging printout
- ee6537f: Enhance ptree readme with multi-process example
- 024b3ed: Finish "snabb ptree" docs
Asumu Takikawa (5):
- 25090ca: Adjust how intel_mp VMDq enabled state is checked
- ff12ba8: Adjust how VMDq pool selection works
- 74da3fe: Allow either 32/64 pools depending on queuing mode
- 66d38f3: Fix pool selection coordination for manual case
- fbdb671: Canonicalize PCI addresses for intel_mp shm refs
Diego Pino Garcia (129):
- d41ff02: Sanitize YANG lists
- 33dd33c: Snabb lwAFTR v3.1.8 change log
- 4a2f332: Support type 'ipv4-prefix'
- 1b199b7: Remove undeclared variable 'program_name'
- 05c1e7b: Implement identity lookup and validator
- b459d51: Add IETF Yang Alarms module
- 1000d46: Parse Yang version as 1 or 1.1
- 125a2fc: Add support for empty type
- 1056e53: Addressed review comments
- 38d943f: Enumerations should be treated as strings when compiling to binary
- 3f6cf3f: Add binary compilation of enumerations test
- ad69902: Add enum validator
- 6effb2f: Add enum initializator
- 6571b3d: Remove one value attribute from enumerations definition
- d6b3442: Address review comments
- 90163b9: Fix enums validation
- c0ef6c9: Assign type.unions in typedefs
- 1536479: Print 'wrote compiled configuration' message only if succeed
- e18c327: Upgrade ietf-alarms YANG module
- b3f926c: Add leafref to types table
- 2241347: Do not modify a map while iterating over it
- 471e88c: Print out schema information in parents
- e0eedbb: Add binary serialization support for identity-ref
- e3eb9de: Add option to print out default values in 'config get' and 'config get-state'
- 0a09031: Update README
- 9ee004a: Update config/README documenting --print-default knob
- 2b7702e: Improve parsing of snabb config query paths
- a6c86a8: Replace missing function 'table_count' for 'table_size'
- 7f3be77: Implement XPath data printer
- fbe4a9c: Support xpath-printer knob
- 61c7279: Update docs
- 5204ea5: Rename xpath-format to format
- d124052: Print out table in XPath format
- be73854: Fix key composition
- 0a47c05: Handle special cases when root path includes trailing slash
- 2b0cf7f: Support print out of arrays in XPath format
- cf8a7ef: Append accumulated path when print a struct keyword
- a516bf8: Top printers should print absolute path too
- 9eb95fb: Support print_default in scalar top_printer
- a79af52: Remove trailing semicolon
- a81c331: Allow a string argument to be empty
- 6cdb03c: Implement alarm_codec
- 87bf337: Basic alarms channel mechanism
- 03240ca: Decompress paramaters individually in raise-alarm and clear-alarm encoding/decoding
- 24d9d41: Group decompressed arguments into key and args
- 4e9d594: Notify raise and clear alarms in ARP app
- 45848b2: Create alarms-channel if it doesn't exist
- 2b4184d: Emit alarm notification in ARP app only if set
- 3aa3868: Encode raise-alarm and clear-alarm directly
- 2912b6c: Make alarm_notification flag a local
- ed7f5b4: Move function set to core/lib.lua
- 2bf2021: Document lib.set
- e002498: Implement YANG empty datatype
- 4fde7bc: Compile empty leaves as a boolean flag
- 801a493: Substitute references to leafref datatype for string
- 4212073: Comment use of instance-identifier as it's not currently supported
- 52751f2: Add alarms capabilities
- fa69e91: Extend snabb-softwire-v2 with alarms containers
- 1723026: Load alarm inventory and fetch alarm state
- 22379b8: Apps add their own alarms to the global alarm repository
- 27c6bef: Implement declare alarms
- 7f94090: Enable alarms in NDP app
- e84e158: Implement raise alarm logic
- 8210939: Implement clear alarm logic
- 64974da: Fix nits
- 974b3bd: Add encode:maybe_string
- 60174c0: Make alarm_list:copy private
- b07a44a: Fix unroll of sparse table
- 8ae762d: Fix followers iteration
- 57e5b28: Break tail call in htonl
- 93b4818: Optimize creation of psid_map
- 7601615: Documented need of parenthesis in htonl and htons
- 0fd4236: Adapt requires_splitter to new configuration format
- 6764c62: Implement set-operator-state
- c6f9b9d: Implement RPC set-operator-state
- b116e30: Rename set_operator_state to set_alarm_operator_state
- 2710a04: Raise error on set_alarm_state
- 1cc027b: Update README
- 46660fa: Rework argument parsing
- 3c49cfe: Add set-alarm-operator-state to README.md
- 750221c: Implement purge-alarms
- 506c4f0: Add RPC definition of purge-alarms
- 27874ea: Fix nits
- 3c45df9: Implement compress-alarms
- 0a5b4d9: Implement RPC compress-alarms
- f5887c1: Fix format of compress-alarms command
- 80b7fa9: Missing statements in snabb-softwire-v2 schema
- 5699643: Implement alarm summary
- 6643388: Decouple alarms declaration
- 16299e2: Remove tabs
- a7d8bac: Move apps.lwaftr.alarms to program.lwaftr.alarms
- 3053ee8: Remove alarms container from snabb-softwire-v2
- 0e297f2: Add subprogram to fetch alarms state
- d411ec2: Do not append alarms state in lib.yang.state
- 7035b2b: Add alarms module
- 97f918e: Assert schema is 'ietf-alarms'
- 8d9eb5b: Move alarms related subprograms from config to alarms module
- ef46bec: Rename set_alarms_operator_state subcommand to set_operator_state
- c052080: Modify README
- eb73690: Adjust alarms related programs
- 631f73a: Customize usage for each alarms command
- 68002b1: Make alarm_type.resource a single data type
- 444cc70: Rename 'alarm_codec.parse_args' to 'alarm_codec.to_alarm'
- d296d40: Temporarily deactive alarms overwritten by lwaftr
- 41096e7: Make add_to_inventory a message passing command
- ebeca50: Make declare_alarm a message passing command
- 162caff: Replace ARP resource identifier for PID
- c84e156: Add alarms API method to set default alarms
- fe969b2: Preserve previously defined resources
- 558bbf9: Replace NDP resource identifier for PID
- 8458d8c: Return '' if empty string
- 672a32c: Fix alarm_codec test
- 42e946c: Check default alarm exists before accessing it
- 6ec0eb2: Fix lib.yang.alarms test
- 8d20ddc: Clear alarm only if it previously existed
- 833abd7: Raise alarms if bad-softwires matches go over threshold
- 60ef3c9: Move alarm checks to beginning of push function
- b6102f0: Implement ingress/egress IPv4 and IPv6 filter alarms
- 1123663: Raise alarm if incoming IPv4 fragments reaches limit
- 921e7bd: Raise alarm if incoming IPv6 fragments reaches limit
- 4a896e4: Raise alarm if outgoing IPv4 fragments reaches limit
- fbe86c1: Raise alarm if outgoing IPv6 fragments reaches limit
- c5c8cf9: Alarm helper class for querying expressions
- 85a7bd4: Implement ingress bandwith and packet-rate alarms
- b9fad56: Implement ingress packet drops alarm
- 887d048: lwAFTR specific alarms documentation
- 226d8af: Rename ExprAlarm to CallbackAlarm
- 57621f3: Fix typo in require
- b0fe977: Do not print out counters which are not defined
Jessica Tallon (116):
- 854d1bc: #683 Add version 2 of snabb-softwire yang file
- 47db93b: #683 Add config migration for snabb-schema-v2
- 32fc3d4: #683 Convert the lwaftr test configs to v2
- ea1be8a: #683 Update generate_binding_table.lua for config v2
- b194d4a: #683 - Fix typos in generate_binding_table.lua
- fbd45f3: #683 - Fix snabb-softwire-v2 module name & add revision
- 942c8e1: #683 - Add mandatory to br-address leaf in snabb-softwire-v2
- 644564a: #683 - Convert codebase to use snabb-softwire-v2
- 4eff4d4: #683 - Generalize migration and fix for printing
- 5755a1d: #683 - Convert config commands to snabb-softwire-v2
- 2cb1ee7: #683 - Convert documentation and some tests to snabb-softwire-v2
- e20dd82: #683 - Migrate snabbvmx configs and some more tests
- d587d2c: #683 - Migrate lwaftr's vlan test configs
- 1d1e6fb: #683 - Correct the version number for config migration
- 650b0ff: Fixes problem with large migration files
- 9d188e0: Remove comments and br_address list
- 6af4025: Add new version to migrate-configuration README
- 4e8deea: Remove unused local variable
- 5a9cd59: Retrigger tests to run
- 086bf1f: Updates the test for br-address on softwire
- 0bf92ba: Fix small nit in config test
- 98ade9e: Move psidmap onto softwire in snabb-softwire-v2
- 2e4b581: Add migration for psidmap on softwire
- b759e1f: Convert lwaftr's data files to 3.2.0.1
- 8a9aad4: Convert v2 migration to handle 3.2.0 and 3.2.0.1
- 163438a: Update revision statement to include new port-set
- 24407a2: Support new softwire in support and binding table
- 8f62c22: Change binding table's psid map to ctable
- 7d419bf: Add ability to add psid entries and update tests
- f22b67a: Remove validate_config and validate_update
- d69ed40: Fix migration to 3.2.0
- 020659c: Update snabbvmx tests to the psid-map on softwires
- 9e463a3: Fix a test to use snabb-softwire-v2 schema
- 7cb536a: Fix a few more tests and remove redundent tests
- 3f4d908: Fix config translation layer for ietf-softwire
- c2408ff: Fix small nits
- a1a3425: Update documentation for new schema
- 7776572: Fix typo nit in docs
- c96875f: Remove shift and padding parameters
- 5eb7126: Update test data for removal of shift and padding
- 6635dd4: Update migration for removal of shift and padding
- 6db0b08: Update snabbvmx configs to remove shift too
- c833507: Fix migration to handle larger files and add padding leaf
- c7cb145: Convert the binding table to use rangemap
- d49aaf7: Fix small documentation and other nits
- 35e23c4: Add test for lwaftr's generate-binding-table subcommand
- 985359a: Fix small nit in generate_binding_table_test.py
- c48d6af: Update generate-binding-table for new schema changes
- 10c5029: Fix small performance nit
- 43bfb5d: Update migrations fixing the port-set definition.
- fc8980b: Fix lwaftr's migrate-configuration.
- f27f70a: Fix lwaftr's test vlan configs
- eac7acf: Fix some small nits
- c295c2c: Add selftest for YANG choice type
- 7699f77: Fix #835 - Support YANG choice statement
- ef66b7d: Fix small nit in parser definition
- efd24f7: Add choice statement printer for YANG data
- 8b07e1e: Add YANG binary data emitter for choice statements
- 5488770: Fix potential problem modifying a table during iteration
- 725a915: Add test for choice support for YANG binary compilation
- acb6707: Include the round which binary choice test fails
- 0eb00d3: Fix bug where choice statements where not being written out correctly
- 3f9ab2e: Add multiprocess support to snabb-softwire-v2
- 37b5b13: Change instance list to have a list for RSS queues
- 3f2d3e3: Addresses feedback on multiprocess changes
- 6d8106e: Fix some small problems in YANG schema
- ec7ec0f: Add migration for multiprocess snabb-softwire-v2
- 48a7687: Migrate lwaftr testing config files
- 27d7c7e: Convert lwaftr bench to multiprocess config for non --reconfigurable
- 9bbf115: Add support for snabb-softwire-v3 for reconfigurable
- 1dfb7e6: Convert test data from fixed PCI device to JIT based
- 2d8f87f: Update tests and migration
- 5f7c950: Add missed snabbvmx configs
- ea311f6: Fix nit in snabbvmx setup
- 127dcb8: Add checks for PCI devices and feed single instance configs to lwaftr
- 0b73e25: Fix vlan tagging in new configuration
- 049126c: Update documentation for multiprocess snabbs-softwire-v2 schema
- 237a541: Update the version number to new format used by thew lwAFTR
- 6b527a9: Fix a couple of typos and nits from review
- 0444c7e: Restore --v4 and --v6 flags to
lwaftr run
command. - 737bf47: Fix small bug in retriving instance config
- 27a6fc5: Fix small nit in documentation
- ade39da: Fix some small nits
- 9db1f51: Remove redundnet JIT files in selftest.sh
- 096de03: Fix incorrect call to produce_instance_configs in snabbvmx
- c626e21: Move back produce_instance_configs to lwutil
- a3868d2: Fix testcases as manual migration is not needed.
- 4e0efcf: Fix #876 - Improve config migration by chaining together
- 5f5c257: Add selftests for snabb lwaftr migrate-configuration
- 6f778a7: Reduce memory footprint of migration
- d7abf53: This fixes the memory issues with util.string_output_file
- 176906c: Deprecate reconfigurable flag
- 95c1e4e: Fix few nits with depreaction of --reconfigurable
- 65e447c: Start worker processes from leader
- 9503b7d: Cleanup setup.lua to remove produce_instance_configs calls
- 380df1e: Fixes Leader update configuration
- a1a98c2: Maintain a single in_place_dependencies
- c7b918c: Fix nits in variable names and comments
- 0bd6d0c: Improve variable name clarity and make timer repeating
- 0c4b0f8: Move sampling to setup
- 7a64163: Support starting and stopping instances via snabb config
- 155269b: Update ietf-softwire translation layer for multiproc
- 44c0e36: Improve error handling in multiprocess tests
- 949be79: Add empty.conf data for lwaftr
- edc1e75: Shutdown the follower properly when removing
- 0b742d1: Stop csv stats outputting for stale instances
- f9b12ab: Only check for stale followers if one has been shutdown
- ede1f8c: Fix nit
- 8aec912: Add test for migration using --on-a-stick command
- 71a0f9d: Appropriately choose on-a-stick or bump-in-the-wire
- 34a2f63: Fix typo nits
- 278501c: Fix get-state for multiprocesses in lwaftr
- c893cbc: Add tests for multiprocess get-state
- 8b8a244: Change default schema to ietf-softwire
- 0d70e22: Fix indent nit
- e0c037f: Fix tests
Kristian Larsson (1):
- 74cfd80: Remove mandatory statement for list keys
Luke Gorrie (1):
- a8a805a: .version: bump to v2018.01
Max Rottenkolber (20):
- 879af86: core.packet: resize should return the packet like the other functions
- 0a67162: lib.ipsec.esp: add support for tunnel mode
- 1df5f63: program/snabbnfv/selftest.sh: move some functions to test_env for reuse
- add01dc: Cleanup ipsec esp linux interoperability test.
- cb28b63: apps/ipsec/selftest.sh: remove leftovers
- 1600fcb: lib.ipsec.esp.decrypt_payload: properly handle packet underflow
- b3072ab: lib.ipsec.aes_128_gcm: use consttime_memequal to compare HMAC
- beab39c: lib.ipsec.aes_128_gcm: use fixed length ASM routine instead of consttime_memequal
- d95d1cb: apps/ipsec/selftest.sh: add environment variable for skipping the e2e test
- ae09895: lib.ipsec.esp.decrypt_payload: remove redundant bounds/spi checks
- 2794f6a: core.link: free any packets left in link when freeing link
- ac7c5e0: top: fix bug where counters were redundantly reopened
- 413b661: lib.ipsec: update documentation w/r to tunnel mode and new interface
- f0b2060: src/README.md: improve docs of core packet ops that clobber their input value
- ee6cd0d: apps.ipsec: fixup incompatibilities introduces in esp-tunnel branch
- 0faa510: Revert "src/README.md: improve docs of core packet ops that clobber their input value"
- 73e88bf: lib.ipsec.esp: paddle back on "freeing" vs "ownership" in documentation.
- da5293d: lib.lpm.lpm4: skip intensive test by default
- 2c71c23: lib.numa: skip selftest if running on a non-NUMA machine
- fcf0ff1: Revert "lib.numa: skip selftest if running on a non-NUMA machine"
Nicola Larosa (3):
- 00af632: Allow running just one lwaftr test file (#859)
- b04b85a: Stop the lwaftr monitor test from hanging (#858)
- a5fa676: Improve the generate-binding-table test (#863)
Timo Buhrmester (2):