Freeing the prefix and address vectors after signalling them from
dhcpv6_client_node_fn to either the pd or iana report processes is
absolutely wrong. The code has appeared to work by luck.
This took three full days' worth of expert effort to root cause - in
the context of an unrelated patch - and about one minute to fix.
Change-Id: Ie589ab1a70ae83441ab4e8b6618a6d405741f53f
Signed-off-by: Dave Barach <dave@barachs.net>
Increase batch size when recycling buffers. This increases Mpps by 7%.
Change-Id: I2a460611d9c36e9bf087b076fc4e187acf61108f
Signed-off-by: Brian Brooks <brian.brooks@arm.com>
- Enable/Disable an interface for IGMP
- improve logging
- refactor common code
- no orphaned timers
- IGMP state changes in main thread only
- Large groups split over multiple state-change reports
- SSM range configuration API.
- more tests
Change-Id: If5674f1044e7e97274a711f47807c9ba689d7b9a
Signed-off-by: Neale Ranns <nranns@cisco.com>
Errors occur when building a library outside the VPP
source tree that uses the shared memory API because
vnet/devices/pipe/pipe.api.h is not installed but is
included by vnet/vnet_all_api_h.h.
In src/vnet.am, Add vnet/devices/pipe/pipe.api.h to
nobase_include_HEADERS.
Change-Id: Id3dc28d90f41bb0ff576736f9d77bee19a2b8fdd
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
When using a DPDK cryptodev with IPsec, sending outbound
packets results in a crash on division by zero if using an
algorithm not supported by the OpenSSL ESP nodes. This
includes AES-GCM and MD5.
At IPsec intf creation time, the next node at slot
IPSEC_OUTPUT_NEXT_ESP_ENCRYPT for ipsec_if_tx_node_fn is
set to the node named esp-encrypt. This is the OpenSSL
ESP encrypt function. If DPDK cryptodevs are configured,
dpdk-esp-encrypt is the correct next node.
Change to setting the next node according to the value in
ipsec_main.esp_encrypt_node_index. That value is set to
esp-encrypt by default. If DPDK cryptodevs are configured
it gets set to dpdk-esp-encrypt.
Change-Id: I83896c76b975d74aead247a162c85eccca9575a8
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
Add patch for DPDK 18.05 that was previously applied
to DPDK 18.02.1. Issue with ixgbe on x550 SFP+ still
exists.
Bug report submitted to DPDK:
https://bugs.dpdk.org/show_bug.cgi?id=69
Change-Id: I9b005709ddf2a72192b1288ba8b4bac85bf12685
Signed-off-by: Matthew Smith <mgsmith@netgate.com>
It also refactors the vhost code which was in one big file vhost-user.c.
Receive side code is in vhost_user_input.c and
Transmit side code is in vhost_user_output.c
Change-Id: I1b539b5008685889723e228265786a2a3e9f3a78
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
A pipe resembles a unix pipe. Each end of the pipe is a full
VPP interface.
pipes can be used for e.g. packet recirculation, inter-BD, etc.
Change-Id: I185bb9fb43dd233ff45da63ac1b85ae2e1ceca16
Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
* added the fib index into the key
* conform coding style for vxlan.h
* added "show vxlan tunnel raw" command to dump bihash
Change-Id: Icc96e41abb648e96de5b4605b035f68f9e20f8a9
Signed-off-by: Eyal Bari <ebari@cisco.com>
If the bitmap has no bit clear after the input bit position i,
the function will return i even if its bit is set.
Fix is to return the next bit just beyond the free bitmap.
This can cause IP neighbor scan crash in ip_neighbor_scan() with
a debug image. With production image, ip_neighbor_scan() may still
function, AFAICT, with extra neighbor delete attempts for entries
already deleted, until these entries are reused for new neighbors.
Change-Id: If6422ef6f63908ea39651de4ccbd8cb0b294bd69
Signed-off-by: John Lo <loj@cisco.com>
VPP crash happens with 'vppctl quit quit' command. The 2nd quit command
tries to access the file index which is already freed by the first quit.
This can be avoided to validate cli_file_index.
Change-Id: I880514c93523db2a727d7510c97950582cd6a6c8
Signed-off-by: Steve Shin <jonshin@cisco.com>
Increase local arrays sizes to the correct number and gather missing statistics.
Change-Id: If44d43f258730e9a18f50fb59fc526c214d2be8a
Signed-off-by: Lukasz Majczak <lma@semihalf.com>
bwiedemann@suse.com pointed me that:
For reproducible builds datestring should be generated using
SOURCE_DATE_EPOCH which distributions set centrally, and have build
tools that consume it to produce reproducible output.
https://wiki.debian.org/ReproducibleBuilds/TimestampsProposal#Python
Change-Id: Iefa2b93231bbc4c8af49736be4d7a5720c46b28d
Signed-off-by: Nirmoy Das <nirmoy.aiemd@gmail.com>
and a new ip4-options node, inserted between ip4-input and ip4-punt,
that checks for IP-router-alert option + IGMP combination and sends
the packet to the ip4-local. This is required because some IGMP
packets are sent to the group address and not the all-routers address.
All IGMP packets are sent with the router alert option.
Change-Id: I01f478d4d98ac9f806e0bcba0f6da6e4e7d26e2a
Signed-off-by: Neale Ranns <nranns@cisco.com>
Looks like CPU doesn't like overlaping loads.
This new codes in some cases shows 3-4 clock improvements.
Change-Id: Ia1b49976ad95140c573f892fdc0a32eebbfa06c8
Signed-off-by: Damjan Marion <damarion@cisco.com>