Bug 1984799 - stress-ng: FTBFS due to dynamic PTHREAD_STACK_MIN (glibc 2.34 related)
Summary: stress-ng: FTBFS due to dynamic PTHREAD_STACK_MIN (glibc 2.34 related)
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: stress-ng
Version: 35
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Christopher Brown
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 1984800
TreeView+ depends on / blocked
 
Reported: 2021-07-22 09:27 UTC by Florian Weimer
Modified: 2021-09-24 20:13 UTC (History)
4 users (show)

Fixed In Version: stress-ng-0.13.00-1.fc35
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2021-09-02 13:11:01 UTC
Type: Bug


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Github ColinIanKing stress-ng issues 147 0 None None None 2021-09-01 11:12:07 UTC
Gitlab cki-project/kernel-tests/-/issues/613 0 None None None 2021-07-22 09:27:09 UTC

Description Florian Weimer 2021-07-22 09:27:10 UTC
Quoting Carlos from the upstream ticket:

“
Upstream glibc 2.34 will release with a non-constant value of PTHREAD_STACK_MIN. This is because hardware vendors like Intel and Arm want to have scalable vector extensions whose size can no longer be determined at compile time. The minimum thread stack size in almost all cases has been really too small. By switching to sysconf we can directly pipe the kernel's expected minimum stack size to the process. This will need to be fixed in stress-ng. If you need help writing the change please reach out!
”

The error looks like this:

CC stress-pthread.c
In file included from /usr/include/bits/local_lim.h:81,
                 from /usr/include/bits/posix1_lim.h:161,
                 from /usr/include/dirent.h:233,
                 from stress-ng.h:50,
                 from stress-pthread.c:25:
stress-pthread.c: In function 'stress_pthread':
stress-pthread.c:403:26: error: missing binary operator before token "("
  403 | #if DEFAULT_STACK_MIN == PTHREAD_STACK_MIN
      |                          ^~~~~~~~~~~~~~~~~
In file included from stress-pthread.c:25:
stress-ng.h:844:35: warning: comparison of integer expressions of different signedness: 'long long unsigned int' and 'long int' [-Wsign-compare]
  844 | #define STRESS_MAXIMUM(a,b) (((a) > (b)) ? (a) : (b))
      |                                   ^
stress-pthread.c:406:35: note: in expansion of macro 'STRESS_MAXIMUM'
  406 |         const size_t stack_size = STRESS_MAXIMUM(DEFAULT_STACK_MIN, PTHREAD_STACK_MIN);
      |                                   ^~~~~~~~~~~~~~
stress-ng.h:844:50: warning: operand of '?:' changes signedness from 'long int' to 'long long unsigned int' due to unsignedness of other operand [-Wsign-compare]
  844 | #define STRESS_MAXIMUM(a,b) (((a) > (b)) ? (a) : (b))
      |                                                  ^~~
stress-pthread.c:406:35: note: in expansion of macro 'STRESS_MAXIMUM'
  406 |         const size_t stack_size = STRESS_MAXIMUM(DEFAULT_STACK_MIN, PTHREAD_STACK_MIN);
      |                                   ^~~~~~~~~~~~~~
make[1]: *** [Makefile:372: stress-pthread.o] Error 1

Comment 1 Christopher Brown 2021-07-22 09:32:10 UTC
Thanks Florian, fixed 3 days ago upstream: 

https://github.com/ColinIanKing/stress-ng/commit/f839de283c44ffe46a2d14bfdf854c145abd8ed6

Will update when a release is pushed that includes this.

Comment 2 Ben Cotton 2021-08-10 13:14:23 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 35 development cycle.
Changing version to 35.

Comment 3 Christopher Brown 2021-09-01 11:12:08 UTC
Hit another bug regarding how we handle verbosity in the Makefile.
Upstream has fixed this so added temp fix in spec file to resolve.

Comment 4 Fedora Update System 2021-09-01 13:34:30 UTC
FEDORA-2021-86c58df665 has been submitted as an update to Fedora 35. https://bodhi.fedoraproject.org/updates/FEDORA-2021-86c58df665

Comment 5 Fedora Update System 2021-09-01 19:27:25 UTC
FEDORA-2021-86c58df665 has been pushed to the Fedora 35 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2021-86c58df665`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2021-86c58df665

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 6 Fedora Update System 2021-09-24 20:13:28 UTC
FEDORA-2021-86c58df665 has been pushed to the Fedora 35 stable repository.
If problem still persists, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.