Skip to content

FreeBSD libzfs: gcc requires __thread after static #11331

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

Merged
merged 1 commit into from
Dec 14, 2020

Conversation

rlibby
Copy link
Contributor

@rlibby rlibby commented Dec 12, 2020

Building libzfs with gcc on FreeBSD failed because gcc is picky about
the order of keywords in declarations with __thread, whereas clang is
more relaxed.

https://gcc.gnu.org/onlinedocs/gcc/Thread-Local.html

Signed-off-by: Ryan Libby [email protected]

Motivation and Context

Part of a small set of changes for building with gcc on FreeBSD.
This addresses an issue introduced to the gcc build in #11033.

Description

Simple build fix for an incompatibility between clang and gcc.

How Has This Been Tested?

Compile tested in the downstream FreeBSD build with gcc and clang.

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Performance enhancement (non-breaking change which improves efficiency)
  • Code cleanup (non-breaking change which makes code smaller or more readable)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Library ABI change (libzfs, libzfs_core, libnvpair, libuutil and libzfsbootenv)
  • Documentation (a change to man pages or other documentation)

Checklist:

Building libzfs with gcc on FreeBSD failed because gcc is picky about
the order of keywords in declarations with __thread, whereas clang is
more relaxed.

https://gcc.gnu.org/onlinedocs/gcc/Thread-Local.html

Signed-off-by: Ryan Libby <[email protected]>
@rlibby
Copy link
Contributor Author

rlibby commented Dec 12, 2020

I have a couple more of these tiny patches, which I intend to submit one PR for one commit (500ed0f & 8ff5db0), since they are only related in their end goal. Please let me know if it is preferred that I put them all together in one PR. Since this is my first PR here, I will wait to see how this plays out before putting the others up.

@behlendorf behlendorf requested a review from a user December 13, 2020 00:01
@behlendorf behlendorf added the Status: Code Review Needed Ready for review and testing label Dec 13, 2020
@behlendorf
Copy link
Contributor

@rlibby thanks! Please go ahead and open a new PR for each fix.

@ghost ghost added Status: Accepted Ready to integrate (reviewed, tested) and removed Status: Code Review Needed Ready for review and testing labels Dec 14, 2020
@behlendorf behlendorf merged commit c7500de into openzfs:master Dec 14, 2020
ghost pushed a commit to zfsonfreebsd/ZoF that referenced this pull request Dec 23, 2020
Building libzfs with gcc on FreeBSD failed because gcc is picky about
the order of keywords in declarations with __thread, whereas clang is
more relaxed.

https://gcc.gnu.org/onlinedocs/gcc/Thread-Local.html

Reviewed-by: Brian Behlendorf <[email protected]>
Reviewed-by: Ryan Moeller <[email protected]>
Signed-off-by: Ryan Libby <[email protected]>
Closes openzfs#11331
behlendorf pushed a commit that referenced this pull request Dec 23, 2020
Building libzfs with gcc on FreeBSD failed because gcc is picky about
the order of keywords in declarations with __thread, whereas clang is
more relaxed.

https://gcc.gnu.org/onlinedocs/gcc/Thread-Local.html

Reviewed-by: Brian Behlendorf <[email protected]>
Reviewed-by: Ryan Moeller <[email protected]>
Signed-off-by: Ryan Libby <[email protected]>
Closes #11331
jsai20 pushed a commit to jsai20/zfs that referenced this pull request Mar 30, 2021
Building libzfs with gcc on FreeBSD failed because gcc is picky about
the order of keywords in declarations with __thread, whereas clang is
more relaxed.

https://gcc.gnu.org/onlinedocs/gcc/Thread-Local.html

Reviewed-by: Brian Behlendorf <[email protected]>
Reviewed-by: Ryan Moeller <[email protected]>
Signed-off-by: Ryan Libby <[email protected]>
Closes openzfs#11331
sempervictus pushed a commit to sempervictus/zfs that referenced this pull request May 31, 2021
Building libzfs with gcc on FreeBSD failed because gcc is picky about
the order of keywords in declarations with __thread, whereas clang is
more relaxed.

https://gcc.gnu.org/onlinedocs/gcc/Thread-Local.html

Reviewed-by: Brian Behlendorf <[email protected]>
Reviewed-by: Ryan Moeller <[email protected]>
Signed-off-by: Ryan Libby <[email protected]>
Closes openzfs#11331
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Status: Accepted Ready to integrate (reviewed, tested)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants