summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* | Revert "Revert "MFC ↵Luiz Souza2018-02-2347-514/+1913
| | | | | | | | | | | | r328083,328096,328116,328119,328120,328128,328135,328153,328157,"" This reverts commit d3d59b01294138e59995b31d2bcbbbdf45e26a3c.
* | Revert "Revert "MFC r327964:""Luiz Souza2018-02-233-2/+50
| | | | | | | | This reverts commit 35c91cb80e59124ecb53b65180b4ae555f96dac6.
* | Revert "Revert "MFC r323822 (by cem):""Luiz Souza2018-02-233-0/+20
| | | | | | | | This reverts commit faf16174043b793fa12aaaf6f113a31cb1ae7968.
* | Revert "Revert "MFC r327469:""Luiz Souza2018-02-231-0/+1
| | | | | | | | This reverts commit 5f4df31f14dd09c55ee2ada616c797a9273270ef.
* | Revert "Revert "MFC r327118:""Luiz Souza2018-02-232-0/+2
| | | | | | | | This reverts commit 7eddfe2723939683f87c79dac52507b6878a4017.
* | Revert "Revert "MFC r321899""Luiz Souza2018-02-234-1/+52
| | | | | | | | This reverts commit 364d23417fdf8cd90b896af94c6857c6ba13be8c.
* | Revert "Revert "MFC 324487""Luiz Souza2018-02-231-4/+17
| | | | | | | | This reverts commit b460f09baf0c2742553aa6770746ab69e19b095a.
* | Revert "Revert "MFC 322488""Luiz Souza2018-02-2317-17/+17
| | | | | | | | This reverts commit c879f89dc0a7feb0b835c5617d889fc124ad0899.
* | Revert "Revert "MFC r327963:""Luiz Souza2018-02-231-0/+1
| | | | | | | | This reverts commit fedd573e56cf0a7d19e471d53a182690310f7e89.
* | Revert "Revert "MFC r327597:""Luiz Souza2018-02-237-47/+128
| | | | | | | | This reverts commit 38b302a111c25b2ca850c0ce8761761b2c48164a.
* | Revert "Revert "MFC r324114:""Luiz Souza2018-02-231-13/+17
| | | | | | | | This reverts commit eb5c3a06056ef94c7a47db522dab1e1f529b89e0.
* | Revert "Revert "MFC r322493:""Luiz Souza2018-02-231-1/+2
| | | | | | | | This reverts commit 42d8803636663e847e565f2915d4b8dbb6ebb20e.
* | Revert "Revert "MFC r324113:""Luiz Souza2018-02-231-5/+7
| | | | | | | | This reverts commit e8f1248046c257a8b83766f04f4f20f6e287fc0f.
* | Revert "Revert "MFC r321922:""Luiz Souza2018-02-231-1/+1
| | | | | | | | This reverts commit f5e92dfb08a85dd8aad9f0e021f58ce31c33f9f4.
* | Revert "Revert "MFC r322720,r322723:""Luiz Souza2018-02-231-96/+86
| | | | | | | | This reverts commit 3ec7f23324c3579430d2fd9a3408dcfdad78e53b.
* | Revert "Revert "MFC r321919:""Luiz Souza2018-02-232-4/+4
| | | | | | | | This reverts commit 1ecc72af3224c56e5cca361d1e151e4ec783405a.
* | Revert "Revert "MFC r322719:""Luiz Souza2018-02-231-3/+2
| | | | | | | | This reverts commit 849d0f4ce8c8dbc0c5bfae77de687dd260274b0c.
* | Revert "Revert "MFC r322718:""Luiz Souza2018-02-231-8/+11
| | | | | | | | This reverts commit d5d338d0645a10eb2db7605a11d3283bca36d0d2.
* | Revert "Revert "MFC r322494:""Luiz Souza2018-02-231-5/+11
| | | | | | | | This reverts commit 911d650e1367dc4a6ac7feb96f47fc87fd6a4984.
* | Revert "Revert "MFC r319873:""Luiz Souza2018-02-2327-82/+123
| | | | | | | | This reverts commit 4c9907d21517c211b27a3cf5b7a2a976623820cc.
* | Revert "Revert "MFC r327818:""Luiz Souza2018-02-233-22/+20
| | | | | | | | This reverts commit c1ee180537f04875eccd8e9b3d630b73ad654b14.
* | Revert "Revert "MFC r325270:""Luiz Souza2018-02-234-9/+7
| | | | | | | | This reverts commit ffca621f122bcca1fcedc7db2747d2537e749ae4.
* | Revert "Revert "MFC 322323 by jkim""Luiz Souza2018-02-234-15/+17
| | | | | | | | This reverts commit b634270605d0823a7110d2385de63e1e3a74f786.
* | Revert "Revert "MFC: r322076""Luiz Souza2018-02-234-2/+6
| | | | | | | | This reverts commit 0e1196dbc1e6a616d1e59153b028626daa2a9063.
* | Revert "Revert "MFC r327817:""Luiz Souza2018-02-232-2/+2
| | | | | | | | This reverts commit 671279ad5be3f1feb75857cf032daae1f04972dd.
* | Revert "Revert "MFC r324301:""Luiz Souza2018-02-231-1/+1
| | | | | | | | This reverts commit 4635c206cc4dfcc984a17067a62e67d75095c647.
* | Revert "Revert "MFC r322940:""Luiz Souza2018-02-232-4/+4
| | | | | | | | This reverts commit 72b499fe038338698da9878361ba68f79cd05af6.
* | Revert "Revert "MFC r322762, r322799, r322832, r322833:""Luiz Souza2018-02-2311-70/+203
| | | | | | | | This reverts commit 5919c0a9658dde48bd090704915aa3a85a6c0d26.
* | Merge remote-tracking branch 'origin/RELENG_2_4-meltdown' into RELENG_2_4Luiz Souza2018-02-235520-254446/+503511
|\ \
| * | MFC r327930:dim2018-02-213-2/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pull in r314499 from upstream clang trunk (by Daniel Marjamäki): [Sema] Suppress warnings for C's zero initializer Patch by S. Gilles! Differential Revision: https://reviews.llvm.org/D28148 Pull in r314838 from upstream clang trunk (by Richard Smith): Suppress -Wmissing-braces warning when aggregate-initializing a struct with a single field that is itself an aggregate. In C++, such initialization of std::array<T, N> types is guaranteed to work by the standard, is completely idiomatic, and the "suggested" alternative from Clang was technically invalid. Together, these suppress unneeded "suggest braces around initialization of subobject" warnings for C++11 initializer lists. (cherry picked from commit af874530b0f44fb960658f50bf0b3f9b8cf3dd33)
| * | MFC r327164:dim2018-02-212-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix clang 6.0.0 compiler warnings in binutils Latest clang git has a warning -Wnull-pointer-arithmetic which will trigger a -Werror failure. Addition and subtraction from a null pointer is undefined behaviour and could be optimized into anything. Furthermore, using the difference between two pointers and casting the result back to a pointer is not portable since the size of ptrdiff_t does not necessary have to be the same as size of void* (this happens e.g. on CHERI). Using intptr_t instead fixes this portability issue and the compiler warning. Submitted by; Alexander Richardson Obtained from: CheriBSD Differential Revision: https://reviews.freebsd.org/D12928 (cherry picked from commit 0cd25a0c5807abc3eb947abf62bc29f95037eba2)
| * | MFC r327167:dim2018-02-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Remove obsolete register keyword from opensolaris's sysmacros.h. When compiling zfsd with recent clang, it leads to a warning about the register storage class being incompatible with C++17. (cherry picked from commit 016480dfbf6cf81626fb8c9cb4827635b58cdd12)
| * | MFC r326496:dim2018-02-21112-462/+1474
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Upgrade our copies of clang, llvm, lldb and libc++ to r319231 from the upstream release_50 branch. This corresponds to 5.0.1 rc2. MFC r326831: Pull in r315334 from upstream lld trunk (by Rafael Espindola): Don't create a dummy __tls_get_addr. We just don't need one with the current setup. We only error on undefined references that are used by some relocation. If we managed to relax all uses of __tls_get_addr, no relocation uses it and we don't produce an error. This is less code and fixes the case were we fail to relax. Before we would produce a broken output, but now we produce an error. Pull in r320390 from upstream lld trunk (by Rafael Espindola): Create reserved symbols early so they can be versioned. This fixes pr35570. We were creating these symbols after parsing version scripts, so they could not be versioned. We cannot move the version script parsing later because we need it for lto. One option is to move both addReservedSymbols and createSyntheticSections earlier. The disadvantage is that some sections created by createSyntheticSections replace other input sections. For example, gdb index replaces .debug_gnu_pubnames, so it wants to run after gc sections so that it can set S->Live to false. What this patch does instead is to move just the ElfHeader creation early. Pull in r320412 from upstream lld trunk (by Rafael Espindola): Handle symbols pointing to output sections. Now that gc sections runs after linker defined symbols are added it can see symbols that point to an OutputSection. Should fix a bot failure. Pull in r320431 from upstream lld trunk (by Peter Collingbourne): ELF: Do not follow relocation edges to output sections during GC. This fixes an assertion error introduced by r320390. Differential Revision: https://reviews.llvm.org/D41095 Together these fix handling of reserved symbols, in particular _end, which is needed to make brk(2) and sbrk(2) work correctly. This unbreaks the emacs ports on amd64, and also appears to unbreak most of world on i386. Differential Revision: https://reviews.freebsd.org/D13466 MFC r326879 (by emaste): lld: Simplify a boolean expression by De Morgan's laws. Cherry-pick lld r315653 by Rui Ueyama: I don't really understand what exactly this expression means, but at least I can mechanically transform it. Obtained from: LLVM r315653 MFC r326897 (by emaste): lld: Slightly simplify code and add comment. Cherry-pick lld r315658 by Rui Ueyama: This is not a mechanical transformation. Even though I believe this patch is correct, I'm not 100% sure if lld with this patch behaves exactly the same way as before on all edge cases. At least all tests still pass. I'm submitting this patch because it took almost a day to understand this function, and I don't want to lose it. This fixes jemalloc assertion failures observed at startup with i386 binaries and an lld-linked libc.so. Reviewed by: dim Obtained from: LLVM r315658 Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D13503 MFC r326909: Upgrade our copies of clang, llvm, lld, lldb, compiler-rt and libc++ to 5.0.1 release (upstream r320880). Relnotes: yes MFC r326957 (by emaste): lld: Don't write preemptible symbol values to the .got. It is not necessary and matches what bfd and gold do. This was a regression from [LLVM] r315658. Obtained from: LLVM r321023 by Rafael Espíndola (cherry picked from commit 1bc68d01849a9c2d056c4cab94b4097bd14c313c)
| * | MFC r326880:dim2018-02-211-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pull in r320755 from upstream clang trunk (by me): Don't trigger -Wuser-defined-literals for system headers Summary: In D41064, I proposed adding `#pragma clang diagnostic ignored "-Wuser-defined-literals"` to some of libc++'s headers, since these warnings are now triggered by clang's new `-std=gnu++14` default: $ cat test.cpp #include <string> $ clang -std=c++14 -Wsystem-headers -Wall -Wextra -c test.cpp In file included from test.cpp:1: In file included from /usr/include/c++/v1/string:470: /usr/include/c++/v1/string_view:763:29: warning: user-defined literal suffixes not starting with '_' are reserved [-Wuser-defined-literals] basic_string_view<char> operator "" sv(const char *__str, size_t __len) ^ /usr/include/c++/v1/string_view:769:32: warning: user-defined literal suffixes not starting with '_' are reserved [-Wuser-defined-literals] basic_string_view<wchar_t> operator "" sv(const wchar_t *__str, size_t __len) ^ /usr/include/c++/v1/string_view:775:33: warning: user-defined literal suffixes not starting with '_' are reserved [-Wuser-defined-literals] basic_string_view<char16_t> operator "" sv(const char16_t *__str, size_t __len) ^ /usr/include/c++/v1/string_view:781:33: warning: user-defined literal suffixes not starting with '_' are reserved [-Wuser-defined-literals] basic_string_view<char32_t> operator "" sv(const char32_t *__str, size_t __len) ^ In file included from test.cpp:1: /usr/include/c++/v1/string:4012:24: warning: user-defined literal suffixes not starting with '_' are reserved [-Wuser-defined-literals] basic_string<char> operator "" s( const char *__str, size_t __len ) ^ /usr/include/c++/v1/string:4018:27: warning: user-defined literal suffixes not starting with '_' are reserved [-Wuser-defined-literals] basic_string<wchar_t> operator "" s( const wchar_t *__str, size_t __len ) ^ /usr/include/c++/v1/string:4024:28: warning: user-defined literal suffixes not starting with '_' are reserved [-Wuser-defined-literals] basic_string<char16_t> operator "" s( const char16_t *__str, size_t __len ) ^ /usr/include/c++/v1/string:4030:28: warning: user-defined literal suffixes not starting with '_' are reserved [-Wuser-defined-literals] basic_string<char32_t> operator "" s( const char32_t *__str, size_t __len ) ^ 8 warnings generated. Both @aaron.ballman and @mclow.lists felt that adding this workaround to the libc++ headers was the wrong way, and it should be fixed in clang instead. Here is a proposal to do just that. I verified that this suppresses the warning, even when -Wsystem-headers is used, and that the warning is still emitted for a declaration outside of system headers. Reviewers: aaron.ballman, mclow.lists, rsmith Reviewed By: aaron.ballman Subscribers: mclow.lists, aaron.ballman, andrew, emaste, cfe-commits Differential Revision: https://reviews.llvm.org/D41080 This will allow to compile some of the libc++ headers in C++14 mode (which is the default for gcc 6 and higher, and will be the default for clang 6.0.0 and higher), with -Wsystem-headers and -Werror enabled. Reported by: andrew (cherry picked from commit e11a2021eed0677ca1f8e65a4a39bf4587bcf25c)
| * | MFC r326776:dim2018-02-212-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pull in r320396 from upstream clang trunk (by Malcolm Parsons): [Sema] Fix crash in unused-lambda-capture warning for VLAs Summary: Clang was crashing when diagnosing an unused-lambda-capture for a VLA because From.getVariable() is null for the capture of a VLA bound. Warning about the VLA bound capture is not helpful, so only warn for the VLA itself. Fixes: PR35555 Reviewers: aaron.ballman, dim, rsmith Reviewed By: aaron.ballman, dim Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D41016 This fixes a segfault when building recent audio/zynaddsubfx port versions. Reported by: hps (cherry picked from commit d9829aec9cfd6d34e3993203c495522ca778623c)
| * | Belatedely fill in the dates for clang 5.0.0 update in UPDATING anddim2018-02-212-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | ObsoleteFiles.inc. Noticed by: garga (cherry picked from commit 998677630ebe139858bbdbb19716bb88cdf075ff)
| * | MFC r322495:kib2018-02-211-0/+32
| | | | | | | | | | | | | | | | | | Add {rd,wr}{fs,gs}base C wrappers for instructions. (cherry picked from commit 26ec28780cfd5213d56ad9d182c70613df690ba8)
| * | MFC r325530 (jeff), r325566 (kib), r325588 (kib):markj2018-02-2122-149/+177
| | | | | | | | | | | | | | | | | | Replace many instances of VM_WAIT with blocking page allocation flags. (cherry picked from commit 2069f0080fbdcf49b623bc3c1eda76524a4d1a77)
| * | MFC r321625:kib2018-02-212-12/+13
| | | | | | | | | | | | | | | | | | Make the number of children for pctrie node available outside subr_pctrie.c. (cherry picked from commit e2e84a25a976cfd8cb2558e17386d2fa77887aca)
| * | MFC r321512:kib2018-02-211-1/+1
| | | | | | | | | | | | | | | | | | Mark name_PCTRIE_LOOKUP_LE() generated function unused. (cherry picked from commit 73eba521e1f03fde8d57425bf5ddbb5a26206a7b)
| * | MFC r321247:kib2018-02-216-24/+32
| | | | | | | | | | | | | | | | | | | | | Add pctrie_init() and vm_radix_init() to initialize generic pctrie and vm_radix trie. (cherry picked from commit 449ea22b392f956d4af1311d01e6ca647ebda976)
| * | MFC r322913:kib2018-02-214-296/+330
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace global swhash in swap pager with per-object trie to track swap blocks assigned to the object pages. MFC r322970 (by alc): Do not call vm_pager_page_unswapped() on the fast fault path. MFC r322971 (by alc): Update a couple vm_object lock assertions in the swap pager. MFC r323224: In swp_pager_meta_build(), handle a race with other thread allocating swapblk for our index while we dropped the object lock. MFC r323226: Do not leak empty swblk. (cherry picked from commit 36d113490a64de94e4172f3d916e74d8eff5b7db)
| * | MFC r323018:kib2018-02-211-7/+6
| | | | | | | | | | | | | | | | | | | | | Adjust interface of swapon_check_swzone() to its actual usage. PR: 221356 (cherry picked from commit 2481224bb101ec60b11dc294c29ba3fbbc176659)
| * | MFC r323017:kib2018-02-212-2/+1
| | | | | | | | | | | | | | | | | | | | | Make the swap_pager_full variable static. PR: 221356 (cherry picked from commit ba21942ce28b39691547ca8cd966f6304b5ce025)
| * | MFC r321217:kib2018-02-212-38/+0
| | | | | | | | | | | | | | | | | | Remove unused function swap_pager_isswapped(). (cherry picked from commit c6e718d6cb8b7c73f74c2910fc47637f436573d2)
| * | MFC r320319alc2018-02-212-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Increase the pageout cluster size to 32 pages. Decouple the pageout cluster size from the size of the hash table entry used by the swap pager for mapping (object, pindex) to a block on the swap device(s), and keep the size of a hash table entry at its current size. Eliminate a pointless macro. (cherry picked from commit 90fed17dafd94f9a34e74086f35e7e8a540e00a7)
| * | MFC r320049alc2018-02-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Pages that are passed to swap_pager_putpages() should already be fully dirty. Assert that they are fully dirty rather than redundantly calling vm_page_dirty() on them. (cherry picked from commit 804e94da8f1b60ea3d603f65d73c1fc9e6f6729f)
| * | MFC r320181alc2018-02-211-1/+0
| | | | | | | | | | | | | | | | | | Eliminate an unused macro. (cherry picked from commit 7c32a320e0086c6cf5712bd48c9e8fa6d4ca6d5c)
| * | MFC r322547:markj2018-02-213-21/+42
| | | | | | | | | | | | | | | | | | Add vm_page_alloc_after(). (cherry picked from commit 8e264f308c8b33afa7e707ce0f70254f4e1bea1b)
| * | MFC r323234,r323305,r323306,r324044:mjg2018-02-217-15/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Start annotating global _padalign locks with __exclusive_cache_line While these locks are guarnteed to not share their respective cache lines, their current placement leaves unnecessary holes in lines which preceeded them. For instance the annotation of vm_page_queue_free_mtx allows 2 neighbour cachelines (previously separate by the lock) to be collapsed into 1. The annotation is only effective on architectures which have it implemented in their linker script (currently only amd64). Thus locks are not converted to their not-padaligned variants as to not affect the rest. ============= Annotate global process locks with __exclusive_cache_line ============= Annotate Giant with __exclusive_cache_line ============= Annotate sysctlmemlock with __exclusive_cache_line. (cherry picked from commit dc9eed165c25d9af290b93f577ad7ac9d7b3788c)
OpenPOWER on IntegriCloud