GNU bug report logs -
#18505
24.3.93; intermittent unexec failures when building on Mac OS X 10.10 beta, Xcode 6.0
Previous Next
Reported by: David Caldwell <david <at> porkrind.org>
Date: Fri, 19 Sep 2014 04:15:03 UTC
Severity: normal
Tags: patch
Found in version 24.3.93
Done: Jan Djärv <jan.h.d <at> swipnet.se>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
Hello.
19 sep 2014 kl. 06:13 skrev David Caldwell <david <at> porkrind.org>:
> Hello,
>
> I tried to build the latest pretest on Mac OS X Yosemite Beta with the
> new Xcode 6.0 (GM) tools and ran into this error during the unexec step:
>
> unexec: not enough room for load commands for new __DATA segments
Does it happen all the time or just some times?
Jan D.
>
> (Full unexec log is attached).
>
> Poking around I discovered a couple discrepancies. The "headerpad_extra"
> setting in configure.ac says entries are 56 bytes, but they are actually
> 78 bytes (probably because the comment was originally written in the 32
> bit days). Also the number of load commands needed is variable now--it
> depends on how many malloc segments were found and how many it could
> merge (see find_emacs_zone_regions() and unexec_regions_merge() in
> unexmacosx.c).
>
> I printed num_unexec_regions in unexmacosx.c and observed anywhere
> from about 14 to 34 regions needed. But given that it seems to be
> different on every run and it's super annoying to debug when you run out
> of space, I suggest bumping headerpad_extra up to 0x1000. This gives
> about 1.5KB of headroom (or wasted space, depending on how you look at
> it) and allows for 52 load commands, which should be future proof for
> quite a while. I have attached a patch for configure.ac that does this
> and changes the comment to reflect my understanding.
>
> I've also provided a patch that makes the unexec error more helpful: it
> computes the size needed for headerpad_extra given the number of load
> commands that it needed for that particular unexec run.
>
> I assume this affects the trunk code, too, though I didn't look at it.
>
> -David
> <increase_headerpad_extra.patch><helpful_unexec_error.patch><unexec-log.txt>
This bug report was last modified 10 years and 250 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.