Changes in kernel/genarch/src/multiboot/multiboot.c [3009164:a35b458] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/genarch/src/multiboot/multiboot.c
r3009164 ra35b458 52 52 if (end == NULL) 53 53 end = cmd_line + str_size(cmd_line); 54 54 55 55 /* 56 56 * Find last occurence of '/' before 'end'. If found, place start at … … 59 59 const char *cp = end; 60 60 const char *start = buf; 61 61 62 62 while (cp != start) { 63 63 if (*cp == '/') { … … 67 67 cp--; 68 68 } 69 69 70 70 /* Copy the command. */ 71 71 str_ncpy(buf, size, start, (size_t) (end - start)); … … 106 106 if (init.cnt >= CONFIG_INIT_TASKS) 107 107 break; 108 108 109 109 init.tasks[init.cnt].paddr = mods[i].start; 110 110 init.tasks[init.cnt].size = mods[i].end - mods[i].start; 111 111 112 112 /* Copy command line, if available. */ 113 113 if (mods[i].string) { … … 120 120 init.tasks[init.cnt].arguments[0] = 0; 121 121 } 122 122 123 123 init.cnt++; 124 124 } … … 128 128 { 129 129 uint32_t pos = 0; 130 130 131 131 while ((pos < length) && (e820counter < MEMMAP_E820_MAX_RECORDS)) { 132 132 e820table[e820counter] = memmap->mm_info; 133 133 134 134 /* Compute address of next structure. */ 135 135 uint32_t size = sizeof(memmap->size) + memmap->size; 136 136 memmap = (multiboot_memmap_t *) ((uintptr_t) memmap + size); 137 137 pos += size; 138 138 139 139 e820counter++; 140 140 } … … 163 163 multiboot_modules(info->mods_count, 164 164 (multiboot_module_t *) MULTIBOOT_PTR(info->mods_addr)); 165 165 166 166 /* Copy memory map. */ 167 167 if ((info->flags & MULTIBOOT_INFO_FLAGS_MMAP) != 0)
Note:
See TracChangeset
for help on using the changeset viewer.