diff -r 2a0ada0a1bf8 -r 95847726fe57 kernel/eka/kernel/sexec.cpp --- a/kernel/eka/kernel/sexec.cpp Wed May 12 10:34:10 2010 +0100 +++ b/kernel/eka/kernel/sexec.cpp Mon May 24 18:38:55 2010 +0100 @@ -36,7 +36,7 @@ TFindHandle h; Kern::KUDesGet(match,aName); kumemget32(&h,&aFindHandle,sizeof(h)); - __KTRACE_OPT(KEXEC,Kern::Printf("ObjN: %lS %08x", &match, h.Handle())); + __KTRACE_OPT(KEXEC,Kern::Printf("ObjN: %S %08x", &match, h.Handle())); NKern::ThreadEnterCS(); TInt r=pC->FindByFullName(h, match, fn); NKern::ThreadLeaveCS(); @@ -758,7 +758,7 @@ __KTRACE_OPT(KEXEC,Kern::Printf("Exec::ThreadRequestSignal")); if(aThread->iOwningProcess!=TheCurrentThread->iOwningProcess) - K::ProcessIsolationFailure(__PLATSEC_DIAGNOSTIC_STRING("Attempt to use RThread::RequestComplete on a thread in another process")); + K::ProcessIsolationFailure(__PLATSEC_DIAGNOSTIC_STRING("Attempt to use RThread::RequestComplete or RThread::RequestSignal on a thread in another process")); NKern::ThreadRequestSignal(&aThread->iNThread, SYSTEM_LOCK); } @@ -812,7 +812,7 @@ TKName n; if (aName) Kern::KUDesGet(n,*aName); - __KTRACE_OPT(KEXEC,Kern::Printf("Exec::ChunkCreate %lS",&n)); + __KTRACE_OPT(KEXEC,Kern::Printf("Exec::ChunkCreate %S",&n)); TChunkCreate uinfo; SChunkCreateInfo info; kumemget32(&uinfo,&anInfo,sizeof(uinfo)); @@ -938,9 +938,9 @@ TInt ExecHandler::OpenObject(TObjectType aObjType, const TDesC8& aName, TOwnerType aType) { - __KTRACE_OPT(KTHREAD,Kern::Printf("Exec::OpenObject %lS",&aName)); TFullName n; Kern::KUDesGet(n,aName); + __KTRACE_OPT(KTHREAD,Kern::Printf("Exec::OpenObject %S",&n)); if (Kern::ValidateFullName(n)!=KErrNone) K::PanicKernExec(EBadName); if ((TUint)aObjType>=(TUint)ENumObjectTypes) @@ -1012,12 +1012,12 @@ { Kern::KUDesGet(n,*aName); pN=&n; + __KTRACE_OPT(KSEMAPHORE,Kern::Printf("Exec::MutexCreate %S",pN)); } else if (aType==EOwnerThread) pO=TheCurrentThread; else pO=TheCurrentThread->iOwningProcess; - __KTRACE_OPT(KSEMAPHORE,Kern::Printf("Exec::MutexCreate %lS",aName)); NKern::ThreadEnterCS(); DMutex* pM; TInt r=K::MutexCreate(pM, *pN, pO, ETrue, KMutexOrdUser); @@ -1036,7 +1036,6 @@ TInt ExecHandler::SemaphoreCreate(const TDesC8* aName, TInt aCount, TOwnerType aType) { - __KTRACE_OPT(KSEMAPHORE,Kern::Printf("Exec::SemaphoreCreate %lS",aName)); TKName n; DObject* pO=NULL; const TDesC* pN=NULL; @@ -1044,6 +1043,7 @@ { Kern::KUDesGet(n,*aName); pN=&n; + __KTRACE_OPT(KSEMAPHORE,Kern::Printf("Exec::SemaphoreCreate %S",pN)); } else if (aType==EOwnerThread) pO=TheCurrentThread; @@ -1230,7 +1230,7 @@ { TKName n; Kern::KUDesGet(n,aName); - __KTRACE_OPT(KEXEC,Kern::Printf("Exec::ThreadRename %lS",&n)); + __KTRACE_OPT(KEXEC,Kern::Printf("Exec::ThreadRename %S",&n)); NKern::LockSystem(); DThread* pT=(DThread*)K::ThreadEnterCS(aHandle,EThread); if (pT!=TheCurrentThread && @@ -1255,7 +1255,7 @@ { TKName n; Kern::KUDesGet(n,aName); - __KTRACE_OPT(KEXEC,Kern::Printf("Exec::ProcessRename %lS",&n)); + __KTRACE_OPT(KEXEC,Kern::Printf("Exec::ProcessRename %S",&n)); NKern::LockSystem(); DProcess* pP=(DProcess*)K::ThreadEnterCS(aHandle,EProcess); if (pP->iSecurityZone!=TheCurrentThread->iOwningProcess->iSecurityZone) @@ -1615,6 +1615,15 @@ break; } + case EDbgGetAllocFail: + { + NKern::ThreadEnterCS(); + TInt allocFail = K::Allocator->__DbgGetAllocFail(); + NKern::ThreadLeaveCS(); + kumemput32(a2, (TAny*)&allocFail, sizeof(TInt)); + break; + } + default: panic=EBadKernelHeapDebugFunction; break; @@ -1898,7 +1907,7 @@ { TKName n; Kern::KUDesGet(n,aName); - __KTRACE_OPT(KEXEC,Kern::Printf("Exec::ThreadCreate %lS",&n)); + __KTRACE_OPT(KEXEC,Kern::Printf("Exec::ThreadCreate %S",&n)); TUint32 infoBuf[KMaxThreadCreateInfo/sizeof(TUint32)]; SThreadCreateInfo& info = *(SThreadCreateInfo*)infoBuf; kumemget32(&info, &aInfo, sizeof(SThreadCreateInfo)); @@ -1933,7 +1942,7 @@ TInt K::MutexCreate(DMutex*& aMutex, const TDesC& aName, DObject* anOwner, TBool aVisible, TUint aOrder) { - __KTRACE_OPT(KSEMAPHORE,Kern::Printf("K::MutexCreate %lS owner %O visible=%d order=%02x",&aName,anOwner,aVisible,aOrder)); + __KTRACE_OPT(KSEMAPHORE,Kern::Printf("K::MutexCreate %S owner %O visible=%d order=%02x",&aName,anOwner,aVisible,aOrder)); DMutex* pM=new DMutex; TInt r=KErrNoMemory; if (pM) @@ -2000,7 +2009,7 @@ EXPORT_C TInt Kern::ThreadCreate(SThreadCreateInfo& aInfo) { CHECK_PRECONDITIONS(MASK_THREAD_CRITICAL,"Kern::ThreadCreate"); - __KTRACE_OPT(KEXEC,Kern::Printf("Kern::ThreadCreate %lS",&aInfo.iName)); + __KTRACE_OPT(KEXEC,Kern::Printf("Kern::ThreadCreate %S",&aInfo.iName)); aInfo.iHandle=NULL; DThread* pT=NULL; TBool svc = aInfo.iType!=EThreadUser;