Bug #90642 error: prctl was not declared in this scope
Submitted: 26 Apr 2018 7:44 Modified: 27 Apr 2018 16:48
Reporter: Tor Didriksen Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Compiling Severity:S3 (Non-critical)
Version:8.0.12 OS:Any
Assigned to: CPU Architecture:Any

[26 Apr 2018 7:44] Tor Didriksen
Description:
Build break on 
This code is broken

#ifdef PR_SET_DUMPABLE
  if (test_flags & TEST_CORE_ON_SIGNAL) {
    /* inform kernel that process is dumpable */
    (void)prctl(PR_SET_DUMPABLE, 1);
  }
#endif

PR_SET_DUMPABLE is defined in /usr/include/linux/prctl.h
prctl() is defined in /usr/include/sys/prctl.h

How to repeat:
Build on ARM: Oracle Linux Server release 7.4

Suggested fix:
Add cmake feature test for sys/prctl.h, and #include it if found.

See also Bug #21723 Should be able to dump core after setuid() under Linux
[27 Apr 2018 16:48] Paul DuBois
Posted by developer:
 
Fixed in 8.0.12.

Code cleanup. No changelog entry needed.
[30 Apr 2018 17:30] Paul DuBois
Fixed in 8.0.12.

Side effect was to fix Bug#21723 for 8.0:

Linux binaries were unable to dump core after executing a setuid()
call.