<br><br><div class="gmail_quote">On Sun, May 25, 2008 at 8:33 PM, Josh Matthews &lt;<a href="mailto:jmatthews@ok-labs.com">jmatthews@ok-labs.com</a>&gt; wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hi Geoff,<br><br><div class="gmail_quote"><div class="Ih2E3d">On Sat, May 24, 2008 at 3:48 PM, Geoff White &lt;<a href="mailto:netengadmin@gmail.com" target="_blank">netengadmin@gmail.com</a>&gt; wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">

<br>I&#39;m trying to add a rather large app to the OKLinux side of things and it seems that I&#39;m dying in the final linking phase...<br><br><span style="color: rgb(51, 51, 255);">make: Leaving directory `/home/okl4user/okl4_2.1/oklinux_2.6.23.21/kernel-2.6.23-v2&#39;</span><br style="color: rgb(51, 51, 255);">


<span style="color: rgb(51, 51, 255);">[XML ] build/images/weaver.xml</span><br style="color: rgb(51, 51, 255);"><span style="color: rgb(51, 51, 255);">[ELF ] build/images/image.elf</span><br style="color: rgb(51, 51, 255);">


<span style="color: rgb(51, 51, 255);">Error: Physical pool &quot;physical&quot;: Could not place %(this_item)s within %(distance)#x bytes of %(last_item)s.</span><br style="color: rgb(51, 51, 255);"><span style="color: rgb(51, 51, 255);">scons: *** [build/images/image.elf] Error 1</span><br>


</blockquote></div><div><br>The most likely cause of this error is that the kernel and the kernel heap are being positioned too far apart - they must be within 64 MiB, and if an app greater than that is somehow being put down in between this error will result.<br>

<br>How are defining the app in the build system? eg: are you defining your own SConscript, or leveraging the Iguana example app framework, or hacking weaver.xml directly?</div></div></blockquote><div><br><br>Well, I have my own&nbsp; SConscript but it is patterned after one of yours. <br>
I&#39;m definitely not hacking weaver.xml.<br>I&#39;m trying to add erlang as an app :)&nbsp; I was quite successful doing this with scsh (Scheme) so I figured that I&#39;d give Erlang a whirl since a somewhat light weight Erlang VM would be pretty useful in a VMware environment.&nbsp; I think the app as it stands, is jut too darn BIG :) <br>
</div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="gmail_quote"><div><br><br>Could you post your weaver.xml? That would allow us to pinpoint the problem exactly.<br>

<br>Best regards,<br><font color="#888888">Josh Matthews</font></div></div></blockquote><div><br><br>Sure, here it is...<br><br><br>&lt;?xml version=&quot;1.0&quot;?&gt;<br>&lt;!DOCTYPE image SYSTEM &quot;weaver-1.1.dtd&quot;&gt;<br>
&lt;image&gt;<br>&nbsp;&nbsp;&nbsp; &lt;machine&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;word_size size=&quot;0x20&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;virtual_memory name=&quot;virtual&quot;&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;region base=&quot;0x200000&quot; size=&quot;0x3fe00000&quot; /&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/virtual_memory&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;physical_memory name=&quot;system_dram&quot;&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;region base=&quot;0x0&quot; size=&quot;0xa000&quot; type=&quot;dedicated&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/physical_memory&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;physical_memory name=&quot;bios&quot;&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;region base=&quot;0xf0000&quot; size=&quot;0x10000&quot; type=&quot;dedicated&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/physical_memory&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;physical_memory name=&quot;rom_expansion&quot;&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;region base=&quot;0xc0000&quot; size=&quot;0x30000&quot; type=&quot;dedicated&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/physical_memory&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;physical_memory name=&quot;physical&quot;&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;region base=&quot;0x100000&quot; size=&quot;0x7f00000&quot; type=&quot;conventional&quot; /&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/physical_memory&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;phys_device name=&quot;timer_dev&quot;&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;interrupt name=&quot;int_timer0&quot; number=&quot;0&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/phys_device&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;phys_device name=&quot;serial_dev&quot;&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;interrupt name=&quot;int_serial0&quot; number=&quot;4&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/phys_device&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;phys_device name=&quot;rtc_dev&quot;&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/phys_device&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;page_size size=&quot;0x1000&quot; /&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;page_size size=&quot;0x400000&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; &lt;/machine&gt;<br>&nbsp;&nbsp;&nbsp; &lt;physical_pool name=&quot;system_dram&quot; direct=&quot;true&quot;&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;memory src=&quot;system_dram&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; &lt;/physical_pool&gt;<br>
<br>&nbsp;&nbsp;&nbsp; &lt;virtual_pool name=&quot;virtual&quot;&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;memory src=&quot;virtual&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; &lt;/virtual_pool&gt;<br><br>&nbsp;&nbsp;&nbsp; &lt;physical_pool name=&quot;bios&quot; direct=&quot;true&quot;&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;memory src=&quot;bios&quot; /&gt;<br>
&nbsp;&nbsp;&nbsp; &lt;/physical_pool&gt;<br><br>&nbsp;&nbsp;&nbsp; &lt;physical_pool name=&quot;rom_expansion&quot; direct=&quot;true&quot;&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;memory src=&quot;rom_expansion&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; &lt;/physical_pool&gt;<br><br>&nbsp;&nbsp;&nbsp; &lt;physical_pool name=&quot;physical&quot; direct=&quot;true&quot;&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;memory src=&quot;physical&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; &lt;/physical_pool&gt;<br><br>&nbsp;&nbsp;&nbsp; &lt;kernel file=&quot;/home/okl4user/okl4_2.1/build/pistachio/bin/kernel&quot; xip=&quot;false&quot; &gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;dynamic max_threads=&quot;0x400&quot; /&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;config&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;option key=&quot;root_caps&quot; value=&quot;4096&quot;/&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/config&gt;<br>&nbsp;&nbsp;&nbsp; &lt;/kernel&gt;<br><br>&nbsp;&nbsp;&nbsp; &lt;rootprogram file=&quot;/home/okl4user/okl4_2.1/build/iguana_server/bin/ig_server&quot; virtpool=&quot;virtual&quot; physpool=&quot;physical&quot; &gt;<br>
&nbsp;&nbsp;&nbsp; &lt;/rootprogram&gt;<br><br>&nbsp;&nbsp;&nbsp; &lt;program name=&quot;event&quot; file=&quot;/home/okl4user/okl4_2.1/build/iguana/bin/event&quot; priority=&quot;200&quot; server=&quot;OKL4_EVENT_SERVER&quot; &gt;<br>&nbsp;&nbsp;&nbsp; &lt;/program&gt;<br>
<br>&nbsp;&nbsp;&nbsp; &lt;program name=&quot;vtimer&quot; file=&quot;/home/okl4user/okl4_2.1/build/iguana/bin/vtimer&quot; priority=&quot;240&quot; server=&quot;OKL4_VTIMER_SERVER&quot; &gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;virt_device name=&quot;vtimer0&quot; /&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;virt_device name=&quot;vtimer1&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;environment&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;entry key=&quot;TIMER_RESOURCE&quot; cap=&quot;/dev/timer_dev&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/environment&gt;<br>&nbsp;&nbsp;&nbsp; &lt;/program&gt;<br>
<br>&nbsp;&nbsp;&nbsp; &lt;program name=&quot;vserial&quot; file=&quot;/home/okl4user/okl4_2.1/build/iguana/bin/vserial&quot; priority=&quot;110&quot; server=&quot;OKL4_VSERIAL_SERVER&quot; &gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;virt_device name=&quot;vserial0&quot; /&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;environment&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;entry key=&quot;SERIAL_RESOURCE&quot; cap=&quot;/dev/serial_dev&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;entry key=&quot;VTIMER&quot; cap=&quot;/dev/vtimer0&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/environment&gt;<br>
&nbsp;&nbsp;&nbsp; &lt;/program&gt;<br><br>&nbsp;&nbsp;&nbsp; &lt;program name=&quot;vrtc&quot; file=&quot;/home/okl4user/okl4_2.1/build/iguana/bin/vrtc&quot; priority=&quot;240&quot; server=&quot;OKL4_VRTC_SERVER&quot; &gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;environment&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;entry key=&quot;RTC_RESOURCE&quot; cap=&quot;/dev/rtc_dev&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/environment&gt;<br>&nbsp;&nbsp;&nbsp; &lt;/program&gt;<br><br>&nbsp;&nbsp;&nbsp; &lt;program name=&quot;vmlinux&quot; file=&quot;/home/okl4user/okl4_2.1/build/iguana/wombat/vmlinux&quot; server=&quot;OKL4_VMLINUX&quot; &gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;stack size=&quot;0x2000&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;heap size=&quot;0x1400000&quot; user_map=&quot;true&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;commandline&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;arg value=&quot;vmlinux&quot;/&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;arg value=&quot;igms_name=ramdisk root=/dev/igms0&quot;/&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/commandline&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;memsection name=&quot;rootfs&quot; file=&quot;/home/okl4user/okl4_2.1/build/linux/ext2ramdisk&quot; size=&quot;149094400&quot; virt_addr=&quot;0x9050000&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;memsection name=&quot;vmalloc&quot; size=&quot;0x400000&quot; virt_addr=&quot;0x11e80000&quot; cache_policy=&quot;default&quot; /&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;environment&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;entry key=&quot;VTIMER&quot; cap=&quot;/dev/vtimer1&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;entry key=&quot;VSERIAL&quot; cap=&quot;/dev/vserial0&quot; /&gt;<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;/environment&gt;<br>
&nbsp;&nbsp;&nbsp; &lt;/program&gt;<br><br>&lt;/image&gt;<br>&nbsp;<br></div></div><br>