[OpenWrt-Devel] [PATCH 0/2] musl: fix locking synchronization bug
Matthias Schiffer
mschiffer at universe-factory.net
Sat May 23 15:55:19 EDT 2020
This imports the proposed patch series [2] for the critical locking
synchronization bug recently found in musl [1].
As [3] recommends, this is done in 2 steps: The first patch contains only
the bugfix itself, which should be safe to backport to 19.07 and older
right away. Note that the issue doesn't seem to hit older OpenWrt
releases in practice - it was discovered due to frequent crashes of
fastd in Gluon since we updated to OpenWrt 19.07 - so a new 18.06.x
release seems not as urgent as 19.07.x.
The second patch contains the rest of the patch series, which is:
- a fix for a related, but less critical bug
- a small optimization related to the fixes
- a fixed version of the lock-skipping to restore a potential
performance regression caused by the first patch for programs that are
singlethreaded most of the time.
I propose to apply the full series to OpenWrt master, as there are no
obvious issues, and the performance regression fix can get better
testing this way.
I have also pushed this to my staging tree [4].
[1] https://www.openwall.com/lists/musl/2020/05/22/3
[2] https://www.openwall.com/lists/musl/2020/05/22/10
[3] https://twitter.com/musllibc/status/1263955586540089344
[4] https://git.openwrt.org/?p=openwrt/staging/neoraider.git;a=summary
Matthias Schiffer (2):
musl: fix locking synchronization bug
musl: restore lock skipping for mostly-singlethreaded programs, and
related patches
...ist-unlink-in-pthread_exit-after-all.patch | 51 +++++++++++
...hreads_minus_1-as-relaxed-atomic-for.patch | 69 ++++++++++++++
...own-size-of-some-libc-struct-members.patch | 25 ++++++
...pping-for-processes-that-return-to-s.patch | 90 +++++++++++++++++++
4 files changed, 235 insertions(+)
create mode 100644 toolchain/musl/patches/500-0001-reorder-thread-list-unlink-in-pthread_exit-after-all.patch
create mode 100644 toolchain/musl/patches/500-0002-don-t-use-libc.threads_minus_1-as-relaxed-atomic-for.patch
create mode 100644 toolchain/musl/patches/500-0003-cut-down-size-of-some-libc-struct-members.patch
create mode 100644 toolchain/musl/patches/500-0004-restore-lock-skipping-for-processes-that-return-to-s.patch
--
2.26.2
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel
More information about the openwrt-devel
mailing list