|
|
|
Guanghui, Cheng
|
Hello:
I configure the 2 oklinux instance and iguana/vtimer in the OKL4 system but when i merge these files there is an memory overlap as following: Error: Virtual Memory: Parts of "/oklinux0/rwx" (0x801b9000-0x80200fff, size 0x48000) overlap with "/iguana_server/vtimer/rx" (0x80200000-0x80206fff, size 0x7000). Now printing a traceback. Traceback (most recent call last): File "./tools/pyelf/elfweaver.py", line 79, in <module> main(sys.argv) File "/home/cheng/pistachio/OKL4/okl4_3.0/tools/pyelf/weaver/main.py", line 108, in main __commands__[args[1]](args[2:]) File "/home/cheng/pistachio/OKL4/okl4_3.0/tools/pyelf/weaver/merge.py", line 270, in merge_cmd merge(spec_file, options) File "/home/cheng/pistachio/OKL4/okl4_3.0/tools/pyelf/weaver/merge.py", line 166, in merge namespace, image) File "/home/cheng/pistachio/OKL4/okl4_3.0/tools/pyelf/weaver/merge.py", line 129, in collect_image_objects kernel, image) File "/home/cheng/pistachio/OKL4/okl4_3.0/tools/pyelf/weaver/cells/okl4_cell.py", line 279, in collect_xml machine, pools) File "/home/cheng/pistachio/OKL4/okl4_3.0/tools/pyelf/weaver/segments_xml.py", line 289, in collect_elf_segments pools = pools) File "/home/cheng/pistachio/OKL4/okl4_3.0/tools/pyelf/weaver/image.py", line 1012, in add_segment attrs, pools) File "/home/cheng/pistachio/OKL4/okl4_3.0/tools/pyelf/weaver/image.py", line 452, in __init__ self.attrs.cache_policy) File "/home/cheng/pistachio/OKL4/okl4_3.0/tools/pyelf/weaver/pools.py", line 435, in mark_virtual if alloc.mark(base, size, cache_policy): File "/home/cheng/pistachio/OKL4/okl4_3.0/tools/pyelf/weaver/allocator.py", line 420, in mark self.tracker.track_mark(base, end) File "/home/cheng/pistachio/OKL4/okl4_3.0/tools/pyelf/weaver/pools.py", line 260, in track_mark self.__add(self.alloc_name, base, end, can_match_exact = True) File "/home/cheng/pistachio/OKL4/okl4_3.0/tools/pyelf/weaver/pools.py", line 337, in __add self.__check(name, base, end, can_match_exact) File "/home/cheng/pistachio/OKL4/okl4_3.0/tools/pyelf/weaver/pools.py", line 326, in __check alloc_end - alloc_base + 1) MergeError: Virtual Memory: Parts of "/oklinux0/rwx" (0x801b9000-0x80200fff, size 0x48000) overlap with "/iguana_server/vtimer/rx" (0x80200000-0x80206fff, size 0x7000). In this system the memory calculation is like this: name: virtual base=80000000 end=cfffffff name: rom base=7900000 end=7ffffff name: physical base=4100000 end=78fffff name: /kernel/rwx base=f0000000 end=f00276cf name: /kernel/rw base=f0028000 end=f002dfff name: /iguana_server/rw base=80014000 end=80014fff name: /iguana_server/event/rx base=80100000 end=80105fff name: /iguana_server/event/rw base=8010d000 end=8010dfff name: /iguana_server/vtimer/rx base=80200000 end=80206fff name: /iguana_server/vtimer/rw base=8020f000 end=8020ffff name: /iguana_server/vserial/rx base=80300000 end=80306fff name: /iguana_server/vserial/rw base=8030f000 end=8030ffff name: /oklinux0/rx base=80000000 end=801b8fff name: unknown base=80000000 end=801b8fff name: unknown base=80000000 end=801b8fff name: unknown base=80000000 end=801b8fff name: /oklinux0/rwx base=801b9000 end=80200fff In the attachment there is my weaver.xml file. I think it could be fixed by increasing the linkaddress of oklinux. But it seems that i can't modify linkaddress of vmlinux from default 0x80200000. The vtimer link addrerss is 0x80200000 Thanks a lot. Cheng Guanghui <?xml version="1.0" ?> <!DOCTYPE image SYSTEM 'weaver-2.0.dtd'> <image> <machine> <cpu name="arm926ejs"/> <word_size size="0x20"/> <virtual_memory name="virtual"> <region base="0x80000000" size="0x50000000"/> </virtual_memory> <physical_memory name="rom"> <region base="0x7900000" rights="all" size="0x700000"/> </physical_memory> <physical_memory name="physical"> <region base="0x4100000" rights="all" size="0x3800000"/> </physical_memory> <phys_device name="timer_dev"> <physical_memory name="timer_mem0"> <region base="0x101e3000" cache_policy="uncached" rights="all" size="0x1000"/> </physical_memory> <interrupt name="int_timer0" number="5"/> </phys_device> <phys_device name="serial_dev"> <physical_memory name="serial_mem0"> <region base="0x101f1000" cache_policy="uncached" rights="all" size="0x1000"/> </physical_memory> <interrupt name="int_serial0" number="12"/> </phys_device> <phys_device name="eth_dev"> <physical_memory name="eth_mem0"> <region base="0x10010000" cache_policy="uncached" rights="all" size="0x10000"/> </physical_memory> <interrupt name="int_eth0" number="25"/> </phys_device> <phys_device name="versatilesys_dev"> <physical_memory name="versatilesys_mem0"> <region base="0x10000000" cache_policy="uncached" rights="all" size="0x1000"/> </physical_memory> </phys_device> <phys_device name="kmi0_dev"> <physical_memory name="kmi0_mem0"> <region base="0x10006000" cache_policy="uncached" rights="all" size="0x1000"/> </physical_memory> <interrupt name="int_kmi00" number="35"/> </phys_device> <phys_device name="kmi1_dev"> <physical_memory name="kmi1_mem0"> <region base="0x10007000" cache_policy="uncached" rights="all" size="0x1000"/> </physical_memory> <interrupt name="int_kmi10" number="36"/> </phys_device> <phys_device name="clcd_dev"> <physical_memory name="clcd_mem0"> <region base="0x10120000" cache_policy="uncached" rights="all" size="0x1000"/> </physical_memory> <interrupt name="int_clcd0" number="16"/> </phys_device> <phys_device name="test_dev"> <interrupt name="int_test0" number="6"/> <interrupt name="int_test1" number="7"/> </phys_device> <page_size size="0x1000"/> <page_size size="0x10000"/> <page_size size="0x100000"/> </machine> <physical_pool direct="true" name="rom"> <memory src="rom"/> </physical_pool> <virtual_pool name="virtual"> <memory src="virtual"/> </virtual_pool> <physical_pool direct="true" name="physical"> <memory src="physical"/> </physical_pool> <kernel file="/home/cheng/pistachio/OKL4/okl4_3.0/linux_build/pistachio/bin/l4kernel" physpool="physical" virtpool="virtual"/> <iguana clists="256" file="/home/cheng/pistachio/OKL4/okl4_3.0/iguana_build/iguana_server/bin/ig_server" kernel_heap= "0x400000" mutexes="256" name="iguana_server" spaces="256"> <irq value="0x0"/> <irq value="0x1"/> <irq value="0x2"/> <irq value="0x3"/> <irq value="0x4"/> <irq value="0x5"/> <irq value="0x6"/> <irq value="0x7"/> <irq value="0x8"/> <irq value="0x9"/> <irq value="0xa"/> <irq value="0xb"/> <irq value="0xc"/> <irq value="0xd"/> <irq value="0xe"/> <irq value="0xf"/> <heap size="0x100000"/> <program file="/home/cheng/pistachio/OKL4/okl4_3.0/iguana_build/iguana/bin/event" name="event" priority="200" server="OKL4_EVENT_SERVER"/> <program file="/home/cheng/pistachio/OKL4/okl4_3.0/iguana_build/iguana/bin/vtimer" name="vtimer" priority="240" server="OKL4_VTIMER_SERVER"> <environment> <entry cap="/dev/timer_dev" key="TIMER_RESOURCE"/> </environment> <virt_device name="vtimer0"/> <virt_device name="vtimer1"/> </program> <program file="/home/cheng/pistachio/OKL4/okl4_3.0/iguana_build/iguana/bin/vserial" name="vserial" priority="110" server="OKL4_VSERIAL_SERVER"> <environment> <entry cap="/dev/serial_dev" key="SERIAL_RESOURCE"/> <entry cap="/dev/vtimer0" key="VTIMER"/> </environment> <virt_device name="vserial0"/> <virt_device name="vserial1"/> </program> </iguana> <linux clists="256" file="/home/cheng/pistachio/OKL4/okl4_3.0/linux_build/oklinux/wombat/vmlinux" kernel_heap="0x400000" mutexes="256" name="oklinux0" spaces="256"> <use_device name="vtimer0"/> <use_device name="vserial0"/> <environment> <entry cap="heap/physical" key="heap_physical"/> </environment> <memsection align="0x200000" attach="rwx" cache_policy="strong" mem_type="virtual" name="dma_heap_segment" size="0x200000"/> <memsection attach="rwx" mem_type="virtual" name="vmalloc" size="0x200000"/> <stack size="0x2000"/> <heap attach="rwx" size="0x1400000"/> <commandline> <arg value="vmlinux igms_name=ramdisk root=/dev/igms0 console=ttyAMA0,115200"/> </commandline> <memsection align="0x100000" file="/home/cheng/pistachio/OKL4/okl4_3.0/linux_build/linux/ext2ramdisk" name="rootfs"/> </linux> <linux clists="256" file="/home/cheng/pistachio/OKL4/okl4_3.0/linux_build/oklinux/wombat/vmlinux" kernel_heap="0x400000" mutexes="256" name="oklinux1" spaces="256"> <use_device name="vtimer1"/> <use_device name="vserial1"/> <environment> <entry cap="heap/physical" key="heap_physical"/> </environment> <memsection align="0x200000" attach="rwx" cache_policy="strong" mem_type="virtual" name="dma_heap_segment" size="0x200000"/> <memsection attach="rwx" mem_type="virtual" name="vmalloc" size="0x200000"/> <stack size="0x2000"/> <heap attach="rwx" size="0x1400000"/> <commandline> <arg value="vmlinux igms_name=ramdisk root=/dev/igms0 console=ttyAMA0,115200"/> </commandline> <memsection align="0x100000" file="/home/cheng/pistachio/OKL4/okl4_3.0/linux_build/linux/ext2ramdisk" name="rootfs"/> </linux> </image> _______________________________________________ Developer mailing list [hidden email] https://lists.okl4.org/mailman/listinfo/developer |
||||||||||||||||
| Free Embeddable Forum Powered by Nabble | Help |