<feed xmlns='http://www.w3.org/2005/Atom'>
<title>staging/jogo/toolchain/musl, branch master</title>
<subtitle>Staging tree of Jonas Gorski</subtitle>
<id>https://git-03.infra.openwrt.org/openwrt/staging/jogo/atom?h=master</id>
<link rel='self' href='https://git-03.infra.openwrt.org/openwrt/staging/jogo/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/openwrt/staging/jogo/'/>
<updated>2019-10-15T14:11:28Z</updated>
<entry>
<title>toolchain/musl: bump to version 1.1.24</title>
<updated>2019-10-15T14:11:28Z</updated>
<author>
<name>Koen Vandeputte</name>
</author>
<published>2019-10-14T10:59:09Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/openwrt/staging/jogo/commit/?id=4d5b62263c6367dae888c6833b013dffda155c16'/>
<id>urn:sha1:4d5b62263c6367dae888c6833b013dffda155c16</id>
<content type='text'>
1.1.24 release notes

new features:
- GLOB_TILDE extension to glob
- non-stub catgets localization API, using netbsd binary catalog format
- posix_spawn file actions for [f]chdir (extension, pending future standard)
- secure_getenv function (extension)
- copy_file_range syscall wrapper (Linux extension)
- header-level support for new linux features in 5.2

performance:
- new fast path for lrint (generic C version) on 32-bit archs

major internal changes:
- functions involving time are overhauled to be time64-ready in 32-bit archs
- x32 uses the new time64 code paths to replace nasty hacks in syscall glue

compatibility &amp; conformance:
- support for powerpc[64] unaligned relocation types
- powerpc[64] and sh sys/user.h no longer clash with kernel asm/ptrace.h
- select no longer modifies timeout on failure (or at all)
- mips64 stat results are no longer limited to 32-bit time range
- optreset (BSD extension) now has a public declaration
- support for clang inconsistencies in wchar_t type vs some 32-bit archs
- mips r6 syscall asm no longer has invalid lo/hi register clobbers
- vestigial asm declarations of __tls_get_new are removed (broke some tooling)
- riscv64 mcontext_t mismatch glibc's member naming is corrected

bugs fixed:
- glob failed to match broken symlinks consistently
- invalid use of interposed calloc to allocate initial TLS
- various dlsym symbol resolution logic errors
- semctl with SEM_STAT_ANY didn't work
- pthread_create with explicit scheduling was subject to priority inversion
- pthread_create failure path had data race for thread count
- timer_create with SIGEV_THREAD notification had data race getting timer id
- wide printf family failed to support l modifier for float formats

arch-specific bugs fixed:
- x87 floating point stack imbalance in math asm (i386-only CVE-2019-14697)
- x32 clock_adjtime, getrusage, wait3, wait4 produced junk (struct mismatches)
- lseek broken on x32 and mipsn32 with large file offsets
- riscv64 atomics weren't compiler barriers
- riscv64 atomics had broken asm constraints (missing earlyclobber flag)
- arm clone() was broken when compiled as thumb if start function returned
- mipsr6 setjmp/longjmp did not preserve fpu register state correctly

Refreshed all patches.
Removed upstreamed.

Signed-off-by: Koen Vandeputte &lt;koen.vandeputte@ncentric.com&gt;
</content>
</entry>
<entry>
<title>musl: Fix CVE-2019-14697</title>
<updated>2019-08-18T21:41:06Z</updated>
<author>
<name>Hauke Mehrtens</name>
</author>
<published>2019-08-18T21:24:43Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/openwrt/staging/jogo/commit/?id=c262daf308e0f0bd93bb5c5ee6238773935079ee'/>
<id>urn:sha1:c262daf308e0f0bd93bb5c5ee6238773935079ee</id>
<content type='text'>
musl libc through 1.1.23 has an x87 floating-point stack adjustment
imbalance, related to the math/i386/ directory. In some cases, use of
this library could introduce out-of-bounds writes that are not present
in an application's source code.

This problem only affects x86 and no other architectures.

Signed-off-by: Hauke Mehrtens &lt;hauke@hauke-m.de&gt;
</content>
</entry>
<entry>
<title>musl: ldso/dlsym: fix mips returning undef dlsym</title>
<updated>2019-08-17T14:57:32Z</updated>
<author>
<name>Luiz Angelo Daros de Luca</name>
</author>
<published>2019-08-16T04:33:58Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/openwrt/staging/jogo/commit/?id=0d0617ff14b8b020896680de1f1a49c7ba8a5e0d'/>
<id>urn:sha1:0d0617ff14b8b020896680de1f1a49c7ba8a5e0d</id>
<content type='text'>
This happens only the second time a library is loaded by dlopen().
After lib1 is loaded, dlsym(lib1,"undef1") correctly resolves the undef
symbol from lib1 dependencies. After the second library is loaded,
dlsym(lib2,"undef1") was returning the address of "undef1" in lib2
instead of searching lib2 dependencies.

Using upstream fix which now uses the same logic for relocation time
and dlsym.

Fixes openwrt/packages#9297

Signed-off-by: Luiz Angelo Daros de Luca &lt;luizluca@gmail.com&gt;
</content>
</entry>
<entry>
<title>toolchain/musl: bump to version 1.1.23</title>
<updated>2019-07-31T14:51:46Z</updated>
<author>
<name>Koen Vandeputte</name>
</author>
<published>2019-07-29T10:08:37Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/openwrt/staging/jogo/commit/?id=ed6139eb2501cdd9f9b3cc1e9ae890e4850e0eb5'/>
<id>urn:sha1:ed6139eb2501cdd9f9b3cc1e9ae890e4850e0eb5</id>
<content type='text'>
new features:
- riscv64 port
- configure now allows customizing AR and RANLIB vars
- header-level support for new linux features in 5.1

major internal changes:
- removed extern __syscall; syscall header code is now fully self-contained

performance:
- new math library implementation for log/exp/pow
- aarch64 dynamic tlsdesc function is streamlined

compatibility &amp; conformance:
- O_TTY_INIT is now defined
- sys/types.h no longer pollutes namespace with sys/sysmacros.h in any profile
- powerpc asm is now compatible with clang internal assembler

changes for new POSIX interpretations:
- fgetwc now sets stream error indicator on encoding errors
- fmemopen no longer rejects 0 size

bugs fixed:
- static TLS for shared libraries was allocated wrong on "Variant I" archs
- crash in dladdr reading through uninitialized pointer on non-match
- sigaltstack wrongly errored out on invalid ss_size when doing SS_DISABLE
- getdents function misbehaved with buffer length larger than INT_MAX
- set*id could deadlock after fork from multithreaded process

arch-specfic bugs fixed:
- s390x SO_PEERSEC definition was wrong
- passing of 64-bit syscall arguments was broken on microblaze
- posix_fadvise was broken on mips due to missing 7-arg syscall support
- vrregset_t layout and member naming was wrong on powerpc64

Signed-off-by: Koen Vandeputte &lt;koen.vandeputte@ncentric.com&gt;
</content>
</entry>
<entry>
<title>toolchain: musl: switch to https instead of git</title>
<updated>2019-06-22T11:17:47Z</updated>
<author>
<name>Christian Lamparter</name>
</author>
<published>2019-06-16T11:36:54Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/openwrt/staging/jogo/commit/?id=75be34528d6547ecbd5537cb207bc38115317d1e'/>
<id>urn:sha1:75be34528d6547ecbd5537cb207bc38115317d1e</id>
<content type='text'>
Daniel Engberg requested switching over to https transport
since he seems to be stuck behind a corporate firewall that
does all the wrong things.

Rick Felker noted that this is "experimental and might break".
&lt;https://www.openwall.com/lists/musl/2019/03/27/1&gt;.

Signed-off-by: Christian Lamparter &lt;chunkeey@gmail.com&gt;
</content>
</entry>
<entry>
<title>toolchain/musl: update to version 1.1.22</title>
<updated>2019-04-23T11:29:04Z</updated>
<author>
<name>Koen Vandeputte</name>
</author>
<published>2019-04-12T14:25:49Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/openwrt/staging/jogo/commit/?id=82625374eea0613027d8dbe2bcfdce7beadaa883'/>
<id>urn:sha1:82625374eea0613027d8dbe2bcfdce7beadaa883</id>
<content type='text'>
new features:
- priority-inheritance mutexes
- membarrier syscall, pre-registration to use it, fallback emulation
- header-level support for new linux features in 4.19, 4.20, 5.0

major internal changes:
- complete, async-safe view of all existent threads as global list
- robust __synccall based on new thread list
- new dynamic TLS is installed synchronously at dlopen
- TLSDESC resolver functions no longer make bad ABI assumptions to call C
- resolved shared library dependencies are now recorded

compatibility &amp; conformance:
- dependency-order shared library constructor execution
- sigaltstack no longer rejects SS_AUTODISARM, future flags
- FILE is now a complete (dummy) type in pre-C11 feature profiles
- setvbuf reports failure on invalid arguments
- TSVTX is exposed unconditionally in tar.h
- multithreaded set*id() no longer depends on /proc
- key slot reuse after pthread_key_delete no longer depends on /proc

bugs fixed:
- failures in multithreaded set*id() with concurrent thread creation/exit
- interposed free was called from invalid/inconsistent contexts
- freeaddrinfo performed invalid free of some partial results lists
- dlsym dependency order search had false negatives and false positives
- dn_skipname gave wrong results for labels with 8-bit content
- dcngettext clobbered errno, often breaking printing of error messages
- sscanf read past end of buffer under certain conditions (1.1.21 regression)
- pthread_key_create spuriously failed under race condition (1.1.21 regression)
- fdopendir wrongly succeeded with O_PATH file descriptors
- gets behaved incorrectly in presence of null bytes
- namespace violations in c11 tsd and mutex function dependencies
- incorrect prototype for makecontext (unimplemented)

arch-specfic bugs fixed:
- s390x had wrong values for POSIX_FADV_DONTNEED/_NOREUSE

Extensively tested on dozens of devices, covering most popular architectures.

Signed-off-by: Koen Vandeputte &lt;koen.vandeputte@ncentric.com&gt;
Signed-off-by: Dainis Jonitis &lt;dainis.jonitis@ubnt.com&gt;
Signed-off-by: Roman Yeryomin &lt;roman@advem.lv&gt;
</content>
</entry>
<entry>
<title>toolchain/musl: update to version 1.1.21</title>
<updated>2019-02-05T18:35:40Z</updated>
<author>
<name>Christian Lamparter</name>
</author>
<published>2019-01-22T15:24:11Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/openwrt/staging/jogo/commit/?id=917e6d772ca079797628826cc6c9eac4161b56f7'/>
<id>urn:sha1:917e6d772ca079797628826cc6c9eac4161b56f7</id>
<content type='text'>
&lt;https://www.openwall.com/lists/musl/2019/01/21/8&gt;
"This release makes improvements with respect to default thread stack
size, including increasing the default from 80k to 128k, increasing
the default guard size from 4k to 8k, and allowing the default to be
increased via ELF headers so that programs that need larger stacks can
be build without source-level changes, using just LDFLAGS.
Insufficient stack size for AIO threads on kernels that don't honor
the constant MINSIGSTKSZ is also fixed.

The glob core has been rewritten to fix inability to see past
searchable-but-unreadable path components, and to avoid excessive
stack usage and unnecessary syscalls. The tsearch AVL tree
implementation has also been rewritten for better size and
performance. The math library adds more native single-instruction
implementations for arm, s390x, powerpc, and x86_64.

Various bugs are fixed, including several possible deadlocks, one of
which was a new regression in 1.1.20."

detailed release notes can be found in the WHATSNEW file:
&lt;http://git.musl-libc.org/cgit/musl/tree/WHATSNEW#n1989&gt;

Tested-by: Koen Vandeputte &lt;koen.vandeputte@ncentric.com&gt;
Signed-off-by: Christian Lamparter &lt;chunkeey@gmail.com&gt;
</content>
</entry>
<entry>
<title>musl: improve crypt() size hack</title>
<updated>2019-01-22T11:08:03Z</updated>
<author>
<name>Jo-Philipp Wich</name>
</author>
<published>2019-01-22T08:50:09Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/openwrt/staging/jogo/commit/?id=ceb625439a84c7ea4ab1e39f126b6baffc48d1cd'/>
<id>urn:sha1:ceb625439a84c7ea4ab1e39f126b6baffc48d1cd</id>
<content type='text'>
Instead of silently downgrading any non-MD5 crypt() request to DES,
cleanly fail with return NULL and errno = ENOSYS. This allows callers
to notice the missing support instead of the unwanted silent fallback
to DES.

Also add a menuconfig toolchain option to optionally disable the crypt
size hack completely. This can be probably made dependant on SMALL_FLASH
or a similar feature indicator in a future commit.

Ref: https://github.com/openwrt/openwrt/pull/1331
Signed-off-by: Jo-Philipp Wich &lt;jo@mein.io&gt;
</content>
</entry>
<entry>
<title>toolchain/musl: Don't override optimization set by upstream</title>
<updated>2018-10-20T13:22:56Z</updated>
<author>
<name>Daniel Engberg</name>
</author>
<published>2018-02-22T22:39:40Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/openwrt/staging/jogo/commit/?id=d27d87c9109e12485bc3a709c8dea1ce05f9f81c'/>
<id>urn:sha1:d27d87c9109e12485bc3a709c8dea1ce05f9f81c</id>
<content type='text'>
Don't override optimization set by upstream.
Provides a speed increase for internal (library), malloc and string
operations in musl.

Signed-off-by: Daniel Engberg &lt;daniel.engberg.lists@pyret.net&gt;
[add : to PKG_RELEASE release variable for consistency]
Signed-off-by: Kevin Darbyshire-Bryant &lt;ldir@darbyshire-bryant.me.uk&gt;
</content>
</entry>
<entry>
<title>toolchain/musl: update to version 1.1.20</title>
<updated>2018-09-21T11:25:08Z</updated>
<author>
<name>Christian Lamparter</name>
</author>
<published>2018-09-04T21:27:00Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/openwrt/staging/jogo/commit/?id=1801e60390706abc0ffe6376c5d9441ca10253c6'/>
<id>urn:sha1:1801e60390706abc0ffe6376c5d9441ca10253c6</id>
<content type='text'>
This release introduces the ability to replace/interpose the allocator
(malloc) subject to certain restrictions, adds an experimental m68k
port, and makes notable improvements to stdio (application-provided
buffers), getaddrinfo (AI_ADDRCONFIG, support for IPv4-only kernel
configurations), the dynamic linker (safety against dlopen of
libraries using initial-exec TLS model, reclaiming unused memory on
FDPIC archs, better dladdr results), and handling of default thread
stack size (pthread_setattr_default_np now works more reliably).

Many bugs have been fixed, including potentially dangerous regressions
in iconv (only for new conversions to legacy encodings) and visibly
incorrect behavior in printf on non-x86 archs (%a format with
precision specifier), in getopt_long_only when short options are a
prefix for a long option, in complex arc-trig/hyperbolic functions, in
strftime and mktime (timezone-specific issues), and numerous
less-obvious places.

Signed-off-by: Christian Lamparter &lt;chunkeey@gmail.com&gt;
[altered commit msg a bit keeping it tight]
Tested-by: Koen Vandeputte &lt;koen.vandeputte@ncentric.com&gt;
</content>
</entry>
</feed>
