This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
system and popen fail in case of big application
- From: Sergey Melnikov <melnikov dot sergey dot v at gmail dot com>
- To: libc-alpha at sourceware dot org
- Date: Mon, 10 Sep 2018 01:15:59 +0300
- Subject: system and popen fail in case of big application
Hi all,
I'm developing JNI code for a Java application. My code works fine in
case of small heap size. Nevertheless, if I set heap size to something
reasonably big (like 20Gb on my dev PC with 32Gb of RAM), 'popen' and
'system' glibc calls don't work with ENOMEM errno.
It looks like I'm not the first person who has faced this issue since
there is quite the same question on stackoverflow
(https://stackoverflow.com/questions/46574798/enomem-from-popen-for-system-while-there-is-enough-memory?rq=1).
So, my question is if does it worth to rewrite existing popen/system
calls with posix_spawn as StackOverflow recommends? If so, I may
implement and contribute this to glibc.
--Sergey