-
Notifications
You must be signed in to change notification settings - Fork 112
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
Try vm-actions instead of cross-platform-actions #589
Conversation
e7dca1c
to
8618032
Compare
This uses VirtualBox instead of xhyve. It might be slower, but should be more reliable. Tests run on FreeBSD, NetBSD, and OpenBSD. Only the FreeBSD ones are passing at the moment, the others will keep running but aren't added as dependencies for the action used to guard commits.
This is running the tests on {Net,Free,Open}BSD. The tests currently fail on Net- and OpenBSD, though for different reasons. I've wired up FreeBSD to the all-checks action, but not the other two, so the failing tests don't break merging but it's easy to see if a commit fixes them (once they're fixed, hopefully we can keep them from breaking again). |
@devnexen, it looks as if some of the tests fail on NetBSD as well. |
@@ -288,7 +288,7 @@ if(NOT SNMALLOC_HEADER_ONLY_LIBRARY) | |||
|
|||
if(NOT (DEFINED SNMALLOC_LINKER_FLAVOUR) OR ("${SNMALLOC_LINKER_FLAVOUR}" MATCHES "^$")) | |||
# Linker not specified externally; probe to see if we can make lld work | |||
set(CMAKE_REQUIRED_LINK_OPTIONS -fuse-ld=lld) | |||
set(CMAKE_REQUIRED_LINK_OPTIONS -fuse-ld=lld -Wl,--icf=all) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why did you remove this? It makes the library smaller as there are a lot of names for the same function in the API surface (e.g. lots of new overloads and malloc can all be folded into a single thing).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
FYI: this change increases the size of libsnmallocshim.so
by about 10%.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I didn't remove it, I added it to the check that enables it. Without this, we now have CI that triggers the reason that I have to carry a local patch for snmalloc to disable this: If you compile with GCC, the -fuse-ld=lld
test fails (GCC consumes but silently ignores the flag? Or just warns and doesn't error?), but then GCC passes this flag to ld.bfd and it fails to link.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks. I miss read the diff.
it comes down to the access enforcing thing. Once disabled all pass. If you do not mind I can commit to your branch or maybe you prefer to handle it alone. |
@devnexen, please feel free to push to this branch or raise a PR against it. |
Can we merge this to unblock the CI? |
This uses VirtualBox instead of xhyve. It might be slower, but should be more reliable.