- User Since
- Aug 30 2015, 11:51 AM (160 w, 1 d)
Wed, Sep 5
In general -fPIC is probably the way to go.. but I don't know about this particular case. I defer decision to FreeBSD maintainers.
What's the error message?
Tue, Sep 4
Mon, Sep 3
Adding some more context, there are a few remixes of FreeBSD such as TruOS, GhostBSD, DesktopBSD etc... and all of them are custom reconfiguration of defaults and they keep self recognition to __FreeBSD__. MidnightBSD is similar, it's a remix of FreeBSD with GNUSTEP. For some reason the project decided to fork the FreeBSD distribution entirely, however over the years there were no[t so many] distinct features to recognize this OS as a distinct version of BSD ( https://github.com/freebsd/freebsd/blob/master/share/misc/bsd-family-tree ).
Sun, Sep 2
Why to patch mips-specific code for MidnightBSD? Why to patch code for sanitizers and instrumentation in general?
Fri, Aug 31
When possible, switch indirect calls to direct calls of internal libc symbols.
What's the internal variant for e.g. dup2(2) or getpid(2)?
Thu, Aug 30
OK, it looks like these ones are cancel points. I will switch them to _sys_.
Personally, I prefer to go for public symbols as with next major libc bump, they might stay around. So not depend too much on the internals that shall be rather not used by 3rd party software.
_sys_ seems to be available only for a small set of of system calls and is not universal.
Wed, Aug 29
I will prepare a test and submit as a new revision to review.
Tue, Aug 28
Do you mean a test for strtoumax(3)?
NetBSD is fixed, as I was observing previously:
[100%] Running the SafeStack tests -- Testing: 9 tests, 8 threads -- Testing: 0 .. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90.. Testing Time: 0.61s Expected Passes : 8 Unsupported Tests : 1 [100%] Built target check-safestack
I'm going to test NetBSD soon.
Aug 22 2018
From NetBSD point of view, this looks fine, 1.4.1 contains upstreamed support.
Aug 20 2018
@chandlerc thank you for your note. I've originally treated this change as an obvious code change, just the reviewers regardless of reviewing an analogous change for MUSL, had no interest in NetBSD.
If there are no more comments, I will land this by the end of this week.
From my point of view, the number of people who have idea about these types and why do they differ between ABIs and OSes is so low, that it's even hard to get someone to review it here.
Aug 8 2018
Aug 7 2018
NetBSD uses typedef void *_Unwind_Ptr; unconditionally in its <unwind.h>... if that has to be matched.
Aug 1 2018
Jul 25 2018
Jul 11 2018
Jul 10 2018
Through pkgsrc a user can install LLDB with either style of distribution, including GCC with libstdc++ one (I'm using this myself also for the development of LLVM related code).
Probably the former with ship GDB at least for long time, the latter will switch to LLDB.
NetBSD ships with GCC style and Clang style userland. The former one ships with GNU libstdc++, the latter with libc++.
Jul 7 2018
A problem is that NetBSD is probably the only mainstream OS left using gnu ld (at least for linking Clang/LLVM) and we catch issues of ld vs gold/lld on NetBSD.
Jul 2 2018
Jul 1 2018
Fixed for FreeBSD? There is still a problem for NetBSD, but I'm still swamped with other things.
Jun 30 2018
Please add comments why tests are failed/unsupported.
Jun 28 2018
It's similar to MUSL, __DEFINED_max_align_t is musl specific and they don't care about libc++ or not on top of it.
I saw this and I think that it shall be handled in libc++. NetBSD doesn't care if c++ runtime library is libstdc++, libc++, none or a different one.
Jun 25 2018
Jun 23 2018
Jun 18 2018
Jun 16 2018
Jun 11 2018
Jun 9 2018
What's the gain? Performance improvement? What are the numbers for benchmarking?
Jun 8 2018
It causes breakage because there is called an interceptor inside libc that is reported as false positive.
We are now requiring this on NetBSD for MSanitized userland. Some programs break without puts(3) / fputs(3) interceptors there.
I've got a local patch that detect building .a file for each arch separately:
I think that this is broken for multilib (-m32 + -m64 builds, the default one for NetBSD, Linux, FreeBSD and maybe others):
Jun 6 2018
I'm not sure whether this is equivalent.
Jun 5 2018
They claim to sync with FreeBSD daily.. so perhaps they should first try to upstream ASLR to FreeBSD.
I don't know about other BSDs, I've never installed them.
Jun 4 2018
+ chandlerc (CMake maintainer)
+ ruiu (lld maintainer for insight)
Jun 2 2018
Jun 1 2018
The original reason to switch NetBSD to wide characters was to unbreak the input parser. It used to mix wide and short characters.
May 29 2018
In the PaX ASLR NetBSD implementation we add a random offset to all allocations including text (for PIE programs), heap and stack.
May 28 2018
NetBSD is also affected. We shall go for a shared solution at least between BSDs and Linux.
May 26 2018
This design is most likely the same on all current BSDs. OpenBSD borrowed UVM from NetBSD. FreeBSD has its distinct memory subsystem.
On NetBSD NORESERVE is enforced by default, so this flag is dummy.
May 25 2018
I defer it to maintainers!
May 24 2018
The code looks fine.. but I don't like the description.
May 23 2018
May 21 2018
$ grep -r MAP_NORESERVE /usr/include/sys /usr/include/sys/mman.h:#define MAP_NORESERVE 0x0040 /* Sun: don't reserve needed swap area */ $ uname -a NetBSD rugged 8.99.14 NetBSD 8.99.14 (GENERIC) #1: Thu Apr 26 15:16:44 CEST 2018 root@chieftec:/public/netbsd-root/sys/arch/amd64/compile/GENERIC amd64
May 18 2018
May 17 2018
May 13 2018
Addressed by @vitalybuka.
May 11 2018
I need to align both in order to make it to work.
May 10 2018
This is an intermediate commit. I'm unloading local patches.