Skip to content
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

ci: Update musl with new release #45393

Merged
merged 1 commit into from
Oct 21, 2017
Merged

Conversation

alexcrichton
Copy link
Member

Apparently there's at least one CVE fixed in the new version of musl, and
because we're distributing it seems like a good opportunity to update!

Unfortunately it looks like #38618 still hasn't been fixed.

Apparently there's at least one CVE fixed in the new version of musl, and
because we're distributing it seems like a good opportunity to update!

Unfortunately it looks like rust-lang#38618 still hasn't been fixed.
@rust-highfive
Copy link
Collaborator

r? @aturon

(rust_highfive has picked a reviewer for you, use r? to override)

@alexcrichton
Copy link
Member Author

r? @Mark-Simulacrum

@Mark-Simulacrum Mark-Simulacrum added the relnotes Marks issues that should be documented in the release notes of the next release. label Oct 19, 2017
@Mark-Simulacrum
Copy link
Member

@bors r+

For ease of access, release notes:

new features:
- RTLD_LAZY deferred symbol binding, functionally equivalent to lazy binding
- safeguard against dlopen of multiple libc versions/instances
- new posix_spawn flag POSIX_SPAWN_SETSID
- posix_spawnattr_setflags now reports unknown flags as error
- ldso option --argv0 to set argv[0]
- added _NL_LOCALE_NAME extension to nl_langinfo

compatibility:
- dlopen local-to-global promotion no longer changes existing symbols
- gettext now searches locale name variants for translation files
- increased locale name length limit from 15 to 23 bytes
- setlocale(LC_ALL, 0) returns single name if all categories are same
- realloc no longer fails when mremap doesn't work
- getservby* no longer treat numeric port strings as service records
- mmap now works around incorrect EPERM error codes from kernel
- impact of REG_* namespace pollution in x86[_64] signal.h is reduced
- arm atomic asm now assembles correctly with new binutils
- PAGE_SIZE on arm is no longer constant (quiet upstream ABI relaxation)
- lsearch/lfind now pass args to compare callback in canonical order
- STB_WEAK and STB_GNU_UNIQUE symbols now behave same as STB_GLOBAL
- better clang CFLAGS checks in configure
- global vis.h hack, which made lld refuse to link to libc.so, is disabled

performance:
- single-instruction optimized math functions for aarch64, s390x, powerpc64
- fast path for ASCII in towupper/towlower
- new mostly-integer-math fma function

semantic bugs fixed:
- POSIX-format TZ dst time transitions were wrong for southern hemisphere
- regex REG_NEWLINE semantics were wrong with negated brackets
- various bugs in strptime %j, %p, %C formats
- iconv mapped some characters to legacy 8bit encodings incorrectly
- glob failed to match "/"
- UTF-8 decoder accepted invalid f4 9x xx xx code sequences
- scanf %% conversion failed to consume whitespace
- glob with GLOB_PERIOD wrongly descended into . and ..
- nftw gave incorrect base name offset when pathname ends in "/"
- functional regression in resolv.conf attempts option
- scalbn could produce wrong result due to double rounding in subnormal range
- strftime %y format wrong with negative years
- mbsnrtowcs and wcsnrtombs mishandled input limits
- minor issues with error codes for various functions

safety/consistency bugs fixed:
- stack-based buffer overflow in dns response processing
- invalid free in regexec on certain error paths
- invalid free in globfree after failed glob
- one-byte buffer overflow in legacy getpass function
- failed dlopen corrupted thread-local storage module list
- race in pthread_create with priority attributes could leave signals masked
- multithreaded set*id() functions could induce spurious EINTRs
- dl_iterate_phdr reported wrong base address in static PIE
- fd leak and wrong cancellation state after dns socket failure
- memory leaks and other issues in environment-modification functions
- read-after-free race in pthread_detach
- memmem performed single-byte over-read in short-needle code paths
- read via uninitialized pointer in gettext core
- bindtextdomain broke bindings for all other domains
- various silent undefined behavior
- getopt clobbered optopt on success

arch-specific bugs fixed:
- x32 dynamic TLS accesses crashed
- s390x was missing dlsym entry point (needed for RTLD_NEXT)
- powerpc64 ldso startup could crash depending on link order
- powerpc64 setjmp/longjmp didn't properly save/restore TOC pointer
- thumb2 setjmp/longjmp silently broke at ld-time with text not aligned
- fchown was broken on archs without SYS_fchown syscall
- fstatat was broken on mips64
- various incorrect constants in powerpc64 and mips headers

@bors
Copy link
Contributor

bors commented Oct 19, 2017

📌 Commit b1f246c has been approved by Mark-Simulacrum

@aidanhs
Copy link
Member

aidanhs commented Oct 19, 2017

Unfortunately it looks like #38618 still hasn't been fixed.

Aw :(

@kennytm kennytm added the S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. label Oct 20, 2017
@bors
Copy link
Contributor

bors commented Oct 21, 2017

⌛ Testing commit b1f246c with merge 540a95036a1080710ed56d22b9bcf5c2ab9a5422...

@bors
Copy link
Contributor

bors commented Oct 21, 2017

💔 Test failed - status-travis

@kennytm
Copy link
Member

kennytm commented Oct 21, 2017

@bors retry #45230

check i686-apple-darwin, LLDB segfault.

[01:32:18] failures:
[01:32:18] 
[01:32:18] ---- [debuginfo-lldb] debuginfo/destructured-fn-argument.rs stdout ----
[01:32:18] 	NOTE: compiletest thinks it is using LLDB version 370
[01:32:18] 
[01:32:18] error: Error while running LLDB
[01:32:18] status: signal: 11
[01:32:18] command: "/usr/bin/python" "/Users/travis/build/rust-lang/rust/src/etc/lldb_batchmode.py" "/Users/travis/build/rust-lang/rust/build/i686-apple-darwin/test/debuginfo/destructured-fn-argument.stage2-i686-apple-darwin" "/Users/travis/build/rust-lang/rust/build/i686-apple-darwin/test/debuginfo/destructured-fn-argument.debugger.script"
[01:32:18] stdout:
[01:32:18] ------------------------------------------
[01:32:18] LLDB batch-mode script
[01:32:18] ----------------------
[01:32:18] Debugger commands script is '/Users/travis/build/rust-lang/rust/build/i686-apple-darwin/test/debuginfo/destructured-fn-argument.debugger.script'.
[01:32:18] Target executable is '/Users/travis/build/rust-lang/rust/build/i686-apple-darwin/test/debuginfo/destructured-fn-argument.stage2-i686-apple-darwin'.
[01:32:18] Current working directory is '/Users/travis/build/rust-lang/rust'
[01:32:18] Creating a target for '/Users/travis/build/rust-lang/rust/build/i686-apple-darwin/test/debuginfo/destructured-fn-argument.stage2-i686-apple-darwin'
[01:32:18] settings set auto-confirm true
[01:32:18] 
[01:32:18] version
[01:32:18] lldb-370.0.42 Swift-3.1 
[01:32:18] command script import /Users/travis/build/rust-lang/rust/./src/etc/lldb_rust_formatters.py
[01:32:18] type summary add --no-value --python-function lldb_rust_formatters.print_val -x ".*" --category Rust
[01:32:18] type category enable Rust
[01:32:18] 
[01:32:18] breakpoint set --file 'destructured-fn-argument.rs' --line 341
[01:32:18] Breakpoint 1: where = destructured-fn-argument.stage2-i686-apple-darwin`destructured_fn_argument::simple_tuple + 23 at destructured-fn-argument.rs:341, address = 0x000016a7 
[01:32:18] breakpoint set --file 'destructured-fn-argument.rs' --line 345
[01:32:18] Breakpoint 2: where = destructured-fn-argument.stage2-i686-apple-darwin`destructured_fn_argument::nested_tuple + 30 at destructured-fn-argument.rs:345, address = 0x000016de 
[01:32:18] breakpoint set --file 'destructured-fn-argument.rs' --line 349
[01:32:18] Breakpoint 3: where = destructured-fn-argument.stage2-i686-apple-darwin`destructured_fn_argument::destructure_only_first_level + 26 at destructured-fn-argument.rs:349, address = 0x0000170a 
[01:32:18] breakpoint set --file 'destructured-fn-argument.rs' --line 353
[01:32:18] Breakpoint 4: where = destructured-fn-argument.stage2-i686-apple-darwin`destructured_fn_argument::struct_as_tuple_element + 40 at destructured-fn-argument.rs:353, address = 0x00001748 
[01:32:18] breakpoint set --file 'destructured-fn-argument.rs' --line 357
[01:32:18] Breakpoint 5: where = destructured-fn-argument.stage2-i686-apple-darwin`destructured_fn_argument::struct_pattern + 24 at destructured-fn-argument.rs:357, address = 0x00001778 
[01:32:18] breakpoint set --file 'destructured-fn-argument.rs' --line 361
[01:32:18] Breakpoint 6: where = destructured-fn-argument.stage2-i686-apple-darwin`destructured_fn_argument::ignored_tuple_element + 20 at destructured-fn-argument.rs:361, address = 0x000017a4 
[01:32:18] breakpoint set --file 'destructured-fn-argument.rs' --line 365
[01:32:18] Breakpoint 7: where = destructured-fn-argument.stage2-i686-apple-darwin`destructured_fn_argument::ignored_struct_field + 15 at destructured-fn-argument.rs:365, address = 0x000017bf 
[01:32:18] breakpoint set --file 'destructured-fn-argument.rs' --line 369
[01:32:18] Breakpoint 8: where = destructured-fn-argument.stage2-i686-apple-darwin`destructured_fn_argument::one_struct_destructured_one_not + 40 at destructured-fn-argument.rs:369, address = 0x000017f8 
[01:32:18] breakpoint set --file 'destructured-fn-argument.rs' --line 373
[01:32:18] Breakpoint 9: where = destructured-fn-argument.stage2-i686-apple-darwin`destructured_fn_argument::different_order_of_struct_fields + 24 at destructured-fn-argument.rs:373, address = 0x00001828 
[01:32:18] breakpoint set --file 'destructured-fn-argument.rs' --line 379
[01:32:18] Breakpoint 10: where = destructured-fn-argument.stage2-i686-apple-darwin`destructured_fn_argument::complex_nesting + 78 at destructured-fn-argument.rs:379, address = 0x0000188e 
[01:32:18] breakpoint set --file 'destructured-fn-argument.rs' --line 383
[01:32:18] Breakpoint 11: where = destructured-fn-argument.stage2-i686-apple-darwin`destructured_fn_argument::managed_box + 26 at destructured-fn-argument.rs:383, address = 0x000018ba 
[01:32:18] breakpoint set --file 'destructured-fn-argument.rs' --line 387
[01:32:18] Breakpoint 12: where = destructured-fn-argument.stage2-i686-apple-darwin`destructured_fn_argument::borrowed_pointer + 26 at destructured-fn-argument.rs:387, address = 0x000018ea 
[01:32:18] breakpoint set --file 'destructured-fn-argument.rs' --line 391
[01:32:18] Breakpoint 13: where = destructured-fn-argument.stage2-i686-apple-darwin`destructured_fn_argument::contained_borrowed_pointer + 16 at destructured-fn-argument.rs:391, address = 0x00001910 
[01:32:18] breakpoint set --file 'destructured-fn-argument.rs' --line 395
[01:32:18] Breakpoint 14: where = destructured-fn-argument.stage2-i686-apple-darwin`destructured_fn_argument::unique_pointer + 30 at destructured-fn-argument.rs:395, address = 0x0000193e 
[01:32:18] breakpoint set --file 'destructured-fn-argument.rs' --line 399
[01:32:18] Breakpoint 15: where = destructured-fn-argument.stage2-i686-apple-darwin`destructured_fn_argument::ref_binding + 12 at destructured-fn-argument.rs:399, address = 0x0000198c 
[01:32:18] breakpoint set --file 'destructured-fn-argument.rs' --line 403
[01:32:18] Breakpoint 16: where = destructured-fn-argument.stage2-i686-apple-darwin`destructured_fn_argument::ref_binding_in_tuple + 24 at destructured-fn-argument.rs:403, address = 0x000019b8 
[01:32:18] breakpoint set --file 'destructured-fn-argument.rs' --line 407
[01:32:18] Breakpoint 17: where = destructured-fn-argument.stage2-i686-apple-darwin`destructured_fn_argument::ref_binding_in_struct + 15 at destructured-fn-argument.rs:407, address = 0x000019df 
[01:32:18] breakpoint set --file 'destructured-fn-argument.rs' --line 411
[01:32:18] Breakpoint 18: where = destructured-fn-argument.stage2-i686-apple-darwin`destructured_fn_argument::univariant_enum + 24 at destructured-fn-argument.rs:411, address = 0x00001a08 
[01:32:18] breakpoint set --file 'destructured-fn-argument.rs' --line 415
[01:32:18] Breakpoint 19: where = destructured-fn-argument.stage2-i686-apple-darwin`destructured_fn_argument::univariant_enum_with_ref_binding + 24 at destructured-fn-argument.rs:415, address = 0x00001a38 
[01:32:18] breakpoint set --file 'destructured-fn-argument.rs' --line 419
[01:32:18] Breakpoint 20: where = destructured-fn-argument.stage2-i686-apple-darwin`destructured_fn_argument::tuple_struct + 24 at destructured-fn-argument.rs:419, address = 0x00001a68 
[01:32:18] breakpoint set --file 'destructured-fn-argument.rs' --line 423

[01:32:18] Breakpoint 21: where = destructured-fn-argument.stage2-i686-apple-darwin`destructured_fn_argument::tuple_struct_with_ref_binding + 24 at destructured-fn-argument.rs:423, address = 0x00001a98 
[01:32:18] breakpoint set --file 'destructured-fn-argument.rs' --line 427
[01:32:18] Breakpoint 22: where = destructured-fn-argument.stage2-i686-apple-darwin`destructured_fn_argument::multiple_arguments + 32 at destructured-fn-argument.rs:427, address = 0x00001ad0 
[01:32:18] breakpoint set --file 'destructured-fn-argument.rs' --line 455
[01:32:18] Breakpoint 23: where = destructured-fn-argument.stage2-i686-apple-darwin`destructured_fn_argument::main::nested_function + 32 at destructured-fn-argument.rs:455, address = 0x000021a0 
[01:32:18] quit
[01:32:18] 
[01:32:18] 
[01:32:18] ------------------------------------------
[01:32:18] stderr:
[01:32:18] ------------------------------------------
[01:32:18] 
[01:32:18] ------------------------------------------
[01:32:18] 
[01:32:18] thread '[debuginfo-lldb] debuginfo/destructured-fn-argument.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:2485:8
[01:32:18] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:32:18] 
[01:32:18] 
[01:32:18] failures:
[01:32:18]     [debuginfo-lldb] debuginfo/destructured-fn-argument.rs
[01:32:18] 
[01:32:18] test result: �[31mFAILED�(B�[m. 97 passed; 1 failed; 10 ignored; 0 measured; 0 filtered out
[01:32:18] 
[01:32:18] thread 'main' panicked at 'Some tests failed', src/tools/compiletest/src/main.rs:329:21

@bors
Copy link
Contributor

bors commented Oct 21, 2017

⌛ Testing commit b1f246c with merge 4279e2b...

bors added a commit that referenced this pull request Oct 21, 2017
ci: Update musl with new release

Apparently there's at least one CVE fixed in the new version of musl, and
because we're distributing it seems like a good opportunity to update!

Unfortunately it looks like #38618 still hasn't been fixed.
@bors
Copy link
Contributor

bors commented Oct 21, 2017

☀️ Test successful - status-appveyor, status-travis
Approved by: Mark-Simulacrum
Pushing 4279e2b to master...

@bors bors merged commit b1f246c into rust-lang:master Oct 21, 2017
@alexcrichton alexcrichton deleted the update-musl branch October 28, 2017 12:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
relnotes Marks issues that should be documented in the release notes of the next release. S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants