-
Notifications
You must be signed in to change notification settings - Fork 298
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merge with lwaftr v2019.06.01 #1448
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
* lib/ljsyscall/syscall/linux/syscalls.lua: More robustly create multi-word bitmasks. * src/lib/numa.lua: Remove facility for blacklisting kernel versions. Re-enable bind_to_numa_node generally.
This commit makes four changes: (1) On the individual revision nodes in a schema, the revision date is now stored under `date` instead of `value`. (2) Schemas now have a `last_revision` property, indicating the date of the most recent revision. (3) This revision now gets serialized into compiled configurations. (4) When loading compiled configurations, we check that the compiled file's revision date corresponds to the what we are expecting. Fixes #1208.
The file in question is too small for the minimum ethernet frame size; with the CRC it becomes 58 bytes, which is smaller than the minimum frame size of 64, so it gets padded as it goes out on the wire, which later gets rejected on the receiver as its lengths don't make sense. In any case it doesn't test what it means to test, so remove it.
Remove bogus lwaftr benchmarking file
Detect version mismatch when loading compiled YANG configurations
Re-enable NUMA memory binding on newer kernels
Fix PCI affinity check for --preferred NUMA binding
This patch extends the NUMA module to be able to run some self-checks when it is used to reserve a CPU for a data plane, for example checking the CPU frequency scaling governor or the set of isolated CPUs.
Add more system performance diagnostics
This patch will print a warning if a network function tries to bind to a CPU, but irqbalance is detected. Irqbalance, installed by default on Debian-derived systems, will modify CPU affinities for IRQ handlers in an effort to spread out the IRQ-processing load among CPUs. However this is not what we want in Snabb; we do not want data-plane CPUs to run IRQ handlers, and we do not want bug reports coming from users that have this daemon installed. See https://github.com/snabbco/snabb/blob/master/src/doc/performance-tuning.md#avoid-interrupts-on-data-plane-cpus, for more details.
Detect irqbalance presence and suggest remedy
Improve snabb lwaftr run --help
…ering differences between v4 and v6 packets. Stop in a more robust way.
Start ingress drop monitor in grace period
Add v2018.09.03 changelog
Refactor "snabb packetblaster lwaftr" to re-use base apps
Bump snabb-softwire-v2 revision date
Fix promotion of lib.fibers.timer events from outer to inner wheel
This reverts commit 7a17eba.
lib.ptree: do not aggregate (ignore) counters that are symlinks
The ptree worker will automatically install a heap size monitor, which writes to engine/heap_size_bytes.{gauge,rrd}.
Make memory monitor a timer instead of an app
…ter-symlinks Revert "lib.ptree: do not aggregate (ignore) counters that are symlinks"
Add `snabb rrdcat' tool to summarize RRD archives
…unter-symlinks' into lwaftr-next
Plug various resource leaks in context of (re)configuration
…r-queue timers.ingress_drop_monitor: use app:get_rxstats() (was app:rxdrop())
Release Snabb lwAFTR v2019.06.01
Fix release benchmarks to always specify CPU
Could you possibly pull |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
See Igalia#1234
[2019.06.01]
Notable changes
Improve stability of receive-side scaling (RSS), in which multiple
CPU cores can service traffic on the same NIC. Previously, the
lwAFTR had a pathology whereby a transient error condition that could
cause one core to drop packets could then cause another core to
attempt to perform self-healing by re-optimizing its code, which
could then ping-pong back and cause the other core to try to
self-heal, and on and on forever. See
timers.ingress_drop_monitor: use app:get_rxstats() (was app:rxdrop()) Igalia/snabb#1229 and
Intel_mp: rxdrop counter fixes for 82599 #1443 for more details.
Fix a problem whereby
snabb config add
would cause the lwAFTR tocrash after a few thousand softwire additions. See
Plug various resource leaks in context of (re)configuration Igalia/snabb#1228.
Update the
ieee-softwire
compatibility layer for the nativesnabb-softwire-v2
Yang module, corresponding the latest changes inthe Internet Draft,
draft-ietf-softwire-yang-16
.Add counters and historical data records for how much memory a lwAFTR
process uses over time, for use in on-line and post-mortem system
diagnostics. See Plug various resource leaks in context of (re)configuration Igalia/snabb#1228 for
details.
Add
snabb rrdcat
tool that can be used to identify when packetdrops occured in the past. See
Add `snabb rrdcat' tool to summarize RRD archives Igalia/snabb#1225 for details.
Incorporate changes from the upstream Snabb 2019.06
"Deltadromeus"
release. This finally includes a switch over to RaptorJIT, which
adds a number of on-line diagnostic tools that can be useful for
troubleshooting performance problems in production.