Hi list,
I have updated mame packages to 0.186 yesterday. The package built fine on rawhide [1] and f26 [2], as well as on non-i686 on f25 and f24. On f25 [3] and f24 [4] i686, the build has failed with the following message: virtual memory exhausted: Operation not permitted How much memory do the builders have?
Best regards, Julian
[1] https://koji.fedoraproject.org/koji/buildinfo?buildID=904690 [2] https://koji.fedoraproject.org/koji/buildinfo?buildID=904688 [3] https://koji.fedoraproject.org/koji/buildinfo?buildID=904691 [4] https://koji.fedoraproject.org/koji/buildinfo?buildID=904692
On Wed, 7 Jun 2017 06:42:21 +0200 Julian Sikorski belegdol@gmail.com wrote:
Hi list,
I have updated mame packages to 0.186 yesterday. The package built fine on rawhide [1] and f26 [2], as well as on non-i686 on f25 and f24. On f25 [3] and f24 [4] i686, the build has failed with the following message: virtual memory exhausted: Operation not permitted How much memory do the builders have?
it probably has nothing with the amount of memory in the builder (see hw_info.log for the details), but rather it exhausts the 32-bit address space for one process, where there are ~3GB user usable out of the theoretical 4GB. Likely the sum (*.o) processed by ar is bigger than the user usable portion. The workaround is usually to decrease the debuginfo size with eg.
%global optflags %(echo %{optflags} | sed 's/-g /-g1 /')
Dan
W dniu 07.06.2017 o 08:50, Dan Horák pisze:
On Wed, 7 Jun 2017 06:42:21 +0200 Julian Sikorski belegdol@gmail.com wrote:
Hi list,
I have updated mame packages to 0.186 yesterday. The package built fine on rawhide [1] and f26 [2], as well as on non-i686 on f25 and f24. On f25 [3] and f24 [4] i686, the build has failed with the following message: virtual memory exhausted: Operation not permitted How much memory do the builders have?
it probably has nothing with the amount of memory in the builder (see hw_info.log for the details), but rather it exhausts the 32-bit address space for one process, where there are ~3GB user usable out of the theoretical 4GB. Likely the sum (*.o) processed by ar is bigger than the user usable portion. The workaround is usually to decrease the debuginfo size with eg.
%global optflags %(echo %{optflags} | sed 's/-g /-g1 /')
Dan
Hi,
the build succeeded on i686 on f26 and f27 - could it be that gcc-7 is more memory-efficient? It also succeeded on armv7hl on all supported arches. Maybe it is just on the edge of 3 GB... In any case, I am already at -g1: RPM_OPT_FLAGS=$(echo $RPM_OPT_FLAGS | sed -e "s@-g@-g1@") Does it make sense to go down further to -g0?
Best regards, Julian
Am 07.06.2017 um 20:21 schrieb Julian Sikorski:
W dniu 07.06.2017 o 08:50, Dan Horák pisze:
On Wed, 7 Jun 2017 06:42:21 +0200 Julian Sikorski belegdol@gmail.com wrote:
Hi list,
I have updated mame packages to 0.186 yesterday. The package built fine on rawhide [1] and f26 [2], as well as on non-i686 on f25 and f24. On f25 [3] and f24 [4] i686, the build has failed with the following message: virtual memory exhausted: Operation not permitted How much memory do the builders have?
it probably has nothing with the amount of memory in the builder (see hw_info.log for the details), but rather it exhausts the 32-bit address space for one process, where there are ~3GB user usable out of the theoretical 4GB. Likely the sum (*.o) processed by ar is bigger than the user usable portion. The workaround is usually to decrease the debuginfo size with eg.
%global optflags %(echo %{optflags} | sed 's/-g /-g1 /')
Dan
Hi,
the build succeeded on i686 on f26 and f27 - could it be that gcc-7 is more memory-efficient? It also succeeded on armv7hl on all supported arches. Maybe it is just on the edge of 3 GB... In any case, I am already at -g1: RPM_OPT_FLAGS=$(echo $RPM_OPT_FLAGS | sed -e "s@-g@-g1@") Does it make sense to go down further to -g0?
Best regards, Julian
Try building without parallel build on %{ix86} and keep -g1:
%ifnarch %{ix86} %make_build %else %{__make} %endif
and see if that helps.
Cheers Björn
W dniu 07.06.2017 o 21:14, Björn 'besser82' Esser pisze:
Am 07.06.2017 um 20:21 schrieb Julian Sikorski:
W dniu 07.06.2017 o 08:50, Dan Horák pisze:
On Wed, 7 Jun 2017 06:42:21 +0200 Julian Sikorski belegdol@gmail.com wrote:
Hi list,
I have updated mame packages to 0.186 yesterday. The package built fine on rawhide [1] and f26 [2], as well as on non-i686 on f25 and f24. On f25 [3] and f24 [4] i686, the build has failed with the following message: virtual memory exhausted: Operation not permitted How much memory do the builders have?
it probably has nothing with the amount of memory in the builder (see hw_info.log for the details), but rather it exhausts the 32-bit address space for one process, where there are ~3GB user usable out of the theoretical 4GB. Likely the sum (*.o) processed by ar is bigger than the user usable portion. The workaround is usually to decrease the debuginfo size with eg.
%global optflags %(echo %{optflags} | sed 's/-g /-g1 /')
Dan
Hi,
the build succeeded on i686 on f26 and f27 - could it be that gcc-7 is more memory-efficient? It also succeeded on armv7hl on all supported arches. Maybe it is just on the edge of 3 GB... In any case, I am already at -g1: RPM_OPT_FLAGS=$(echo $RPM_OPT_FLAGS | sed -e "s@-g@-g1@") Does it make sense to go down further to -g0?
Best regards, Julian
Try building without parallel build on %{ix86} and keep -g1:
%ifnarch %{ix86} %make_build %else %{__make} %endif
and see if that helps.
Cheers Björn
Thanks for the tip! Unfortunately, even with -g stripped entirely and without parallel build the memory exhaustion still happens. Oddly enough, without -g alone it happens on bfm_sc4.cpp, but without -g and without parallel build it happens on mpu4.cpp. Is there anything else to try, or is it time to ExcludeArch: %{ix86}?
Best regards, Julian
Am 08.06.2017 um 09:13 schrieb Julian Sikorski:
W dniu 07.06.2017 o 21:14, Björn 'besser82' Esser pisze:
Am 07.06.2017 um 20:21 schrieb Julian Sikorski:
W dniu 07.06.2017 o 08:50, Dan Horák pisze:
On Wed, 7 Jun 2017 06:42:21 +0200 Julian Sikorski belegdol@gmail.com wrote:
Hi list,
I have updated mame packages to 0.186 yesterday. The package built fine on rawhide [1] and f26 [2], as well as on non-i686 on f25 and f24. On f25 [3] and f24 [4] i686, the build has failed with the following message: virtual memory exhausted: Operation not permitted How much memory do the builders have?
it probably has nothing with the amount of memory in the builder (see hw_info.log for the details), but rather it exhausts the 32-bit address space for one process, where there are ~3GB user usable out of the theoretical 4GB. Likely the sum (*.o) processed by ar is bigger than the user usable portion. The workaround is usually to decrease the debuginfo size with eg.
%global optflags %(echo %{optflags} | sed 's/-g /-g1 /')
Dan
Hi,
the build succeeded on i686 on f26 and f27 - could it be that gcc-7 is more memory-efficient? It also succeeded on armv7hl on all supported arches. Maybe it is just on the edge of 3 GB... In any case, I am already at -g1: RPM_OPT_FLAGS=$(echo $RPM_OPT_FLAGS | sed -e "s@-g@-g1@") Does it make sense to go down further to -g0?
Best regards, Julian
Try building without parallel build on %{ix86} and keep -g1:
%ifnarch %{ix86} %make_build %else %{__make} %endif
and see if that helps.
Cheers Björn
Thanks for the tip! Unfortunately, even with -g stripped entirely and without parallel build the memory exhaustion still happens. Oddly enough, without -g alone it happens on bfm_sc4.cpp, but without -g and without parallel build it happens on mpu4.cpp. Is there anything else to try, or is it time to ExcludeArch: %{ix86}?
Besided using ExcludeArch, I'd either keep the old versions for fc24 and fc25 (if any) or work with upstream to split the source-files which cause OOM into several smaller ones, so you can build the whole thing with full debug enabled again on all arches.
devel@lists.stg.fedoraproject.org