Changeset 732 for Whitix/branches
- Timestamp:
- 07/06/08 12:20:02 (5 months ago)
- Location:
- Whitix/branches/fs
- Files:
-
- 1 removed
- 3 modified
-
devices/misc.c (deleted)
-
devices/misc/Makefile (modified) (1 diff)
-
include/elf.h (modified) (1 diff)
-
kernel/module.c (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
-
Whitix/branches/fs/devices/misc/Makefile
r708 r732 5 5 6 6 modules_install: 7 cp misc.sys ../../CdRoot/System/Modules/ Unix7 cp misc.sys ../../CdRoot/System/Modules/Core 8 8 9 9 include $(DEPTH)make.inc -
Whitix/branches/fs/include/elf.h
r608 r732 95 95 #define SEC_TYPE_SYMTAB 2 96 96 #define SEC_TYPE_STRTAB 3 97 #define SEC_TYPE_RELA 4 97 98 #define SEC_TYPE_NOBITS 8 98 99 #define SEC_TYPE_REL 9 -
Whitix/branches/fs/kernel/module.c
r652 r732 226 226 DWORD relSize=module->sectionHeaders[sec].shSize/sizeof(struct ElfReloc); 227 227 228 if (!module->sectionHeaders[ module->sectionHeaders[sec].shInfo ].shAddr) 229 return; 230 228 231 for (i=0; i<relSize; i++) 229 232 { … … 354 357 /* Resolve entries in the module. */ 355 358 ModuleSymbolResolve(module, file, i); 359 else if (sectionHeaders[i].shType == SEC_TYPE_RELA) 360 KePrint("RELA\n"); 356 361 } 357 362 … … 368 373 module->keSymTab=ModuleSectionFind(module, (char*)file+sectionHeaders[elfHeader->strTabSectionIndex].shOffset, ".symtable", elfHeader->shEntries, &module->keSymTabSize); 369 374 370 SpinLock(&moduleListLock);371 375 ListAdd(&module->next, &moduleList); 372 SpinUnlock(&moduleListLock);373 376 374 377 return ret; … … 398 401 void* kData=(void*)VirtMapPhysRange(MODULE_START, MODULE_END, PAGE_ALIGN_UP(*length) >> PAGE_SHIFT, 3); 399 402 char buf[32]; 400 401 403 int j=0; 402 404 … … 409 411 strcat(buf, ".sys"); 410 412 413 KePrint("length = %#X: ", *length); 414 411 415 if (ModuleAdd(data, kData, *length, 0)) 412 416 KernelPanic("Could not initialize the kernel"); … … 428 432 { 429 433 void* kData; 434 int ret; 435 436 SpinLock(&moduleListLock); 430 437 431 438 /* Check data is ok to access. */ 432 439 kData=(void*)VirtMapPhysRange(MODULE_START, MODULE_END, PAGE_ALIGN_UP(length) >> PAGE_SHIFT, 3); 433 440 434 return ModuleAdd(data, kData, length, 0); 441 ret=ModuleAdd(data, kData, length, 0); 442 SpinUnlock(&moduleListLock); 443 444 return ret; 435 445 } 436 446