Rev 1790 | Rev 1854 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 1790 | Rev 1833 | ||
|---|---|---|---|
| Line 863... | Line 863... | ||
| 863 | for (;confframe < start + count; confframe++) { |
863 | for (;confframe < start + count; confframe++) { |
| 864 | addr = PFN2ADDR(confframe); |
864 | addr = PFN2ADDR(confframe); |
| 865 | if (overlaps(addr, PFN2ADDR(confcount), KA2PA(config.base), config.kernel_size)) |
865 | if (overlaps(addr, PFN2ADDR(confcount), KA2PA(config.base), config.kernel_size)) |
| 866 | continue; |
866 | continue; |
| 867 | 867 | ||
| - | 868 | if (overlaps(addr, PFN2ADDR(confcount), KA2PA(config.stack_base), config.stack_size)) |
|
| - | 869 | continue; |
|
| - | 870 | ||
| 868 | bool overlap = false; |
871 | bool overlap = false; |
| 869 | count_t i; |
872 | count_t i; |
| 870 | for (i = 0; i < init.cnt; i++) |
873 | for (i = 0; i < init.cnt; i++) |
| 871 | if (overlaps(addr, PFN2ADDR(confcount), KA2PA(init.tasks[i].addr), init.tasks[i].size)) { |
874 | if (overlaps(addr, PFN2ADDR(confcount), KA2PA(init.tasks[i].addr), init.tasks[i].size)) { |
| 872 | overlap = true; |
875 | overlap = true; |
| Line 1066... | Line 1069... | ||
| 1066 | spinlock_initialize(&zones.lock,"zones_glob_lock"); |
1069 | spinlock_initialize(&zones.lock,"zones_glob_lock"); |
| 1067 | } |
1070 | } |
| 1068 | /* Tell the architecture to create some memory */ |
1071 | /* Tell the architecture to create some memory */ |
| 1069 | frame_arch_init(); |
1072 | frame_arch_init(); |
| 1070 | if (config.cpu_active == 1) { |
1073 | if (config.cpu_active == 1) { |
| 1071 | pfn_t firstframe = ADDR2PFN(KA2PA(config.base)); |
- | |
| 1072 | pfn_t lastframe = ADDR2PFN(KA2PA(config.base+config.kernel_size)); |
1074 | frame_mark_unavailable(ADDR2PFN(KA2PA(config.base)), SIZE2FRAMES(config.kernel_size)); |
| 1073 | frame_mark_unavailable(firstframe,lastframe-firstframe+1); |
1075 | frame_mark_unavailable(ADDR2PFN(KA2PA(config.stack_base)), SIZE2FRAMES(config.stack_size)); |
| 1074 | 1076 | ||
| 1075 | count_t i; |
1077 | count_t i; |
| 1076 | for (i = 0; i < init.cnt; i++) |
1078 | for (i = 0; i < init.cnt; i++) |
| 1077 | frame_mark_unavailable(ADDR2PFN(KA2PA(init.tasks[i].addr)), SIZE2FRAMES(init.tasks[i].size)); |
1079 | frame_mark_unavailable(ADDR2PFN(KA2PA(init.tasks[i].addr)), SIZE2FRAMES(init.tasks[i].size)); |
| 1078 | 1080 | ||