X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Kernel%2Fbinary.c;h=b3040a5d6e3080e106f4562d2c7b28acd38ce9cf;hb=7d881c2e5fef91a6570e46ef69a5d4a5cf0e8b4d;hp=72e8210a4fcbfc014b6558738050dd3fb194cc37;hpb=73e8ed89c011abce9b0ae2c5a3eb232bdbe8660e;p=tpg%2Facess2.git diff --git a/Kernel/binary.c b/Kernel/binary.c index 72e8210a..b3040a5d 100644 --- a/Kernel/binary.c +++ b/Kernel/binary.c @@ -45,11 +45,11 @@ Uint Binary_GetSymbolEx(char *Name, Uint *Value); Uint Binary_FindSymbol(void *Base, char *Name, Uint *Val); // === GLOBALS === - int glBinListLock = 0; +tShortSpinlock glBinListLock; tBinary *glLoadedBinaries = NULL; char **gsaRegInterps = NULL; int giRegInterps = 0; - int glKBinListLock = 0; +tShortSpinlock glKBinListLock; tKernelBin *glLoadedKernelLibs; tBinaryType *gRegBinTypes = &gELF_Info; @@ -501,10 +501,10 @@ tBinary *Binary_DoLoad(char *truePath) VFS_Close(fp); // Add to the list - LOCK(&glBinListLock); + SHORTLOCK(&glBinListLock); pBinary->Next = glLoadedBinaries; glLoadedBinaries = pBinary; - RELEASE(&glBinListLock); + SHORTREL(&glBinListLock); // Return LEAVE('p', pBinary); @@ -745,10 +745,10 @@ void *Binary_LoadKernel(char *File) pKBinary = malloc(sizeof(*pKBinary)); pKBinary->Base = (void*)base; pKBinary->Info = pBinary; - LOCK( &glKBinListLock ); + SHORTLOCK( &glKBinListLock ); pKBinary->Next = glLoadedKernelLibs; glLoadedKernelLibs = pKBinary; - RELEASE( &glKBinListLock ); + SHORTREL( &glKBinListLock ); LEAVE('p', base); return (void*)base;