kernel/eka/kernel/sexec.cpp
branchRCL_3
changeset 45 9e2d4f7f5028
parent 44 3e88ff8f41d5
equal deleted inserted replaced
44:3e88ff8f41d5 45:9e2d4f7f5028
  2196 	{
  2196 	{
  2197 
  2197 
  2198 	__KTRACE_OPT(KBOOT,Kern::Printf("File server thread registered"));
  2198 	__KTRACE_OPT(KBOOT,Kern::Printf("File server thread registered"));
  2199 	DThread* pT = TheCurrentThread;
  2199 	DThread* pT = TheCurrentThread;
  2200 	DProcess* pP = pT->iOwningProcess;
  2200 	DProcess* pP = pT->iOwningProcess;
       
  2201 	if (K::TheFileServerProcess && K::TheFileServerProcess!=pP)
       
  2202 		K::PanicCurrentThread(EAccessDenied);
  2201 	pP->iFlags |= (KThreadFlagProcessCritical | KProcessFlagSystemPermanent);
  2203 	pP->iFlags |= (KThreadFlagProcessCritical | KProcessFlagSystemPermanent);
  2202 	pT->iFlags |= KThreadFlagSystemPermanent;
  2204 	pT->iFlags |= KThreadFlagSystemPermanent;
  2203 	if (K::TheFileServerProcess && K::TheFileServerProcess!=pP)
       
  2204 		K::PanicCurrentThread(EAccessDenied);
       
  2205 	K::TheFileServerProcess=pP;
  2205 	K::TheFileServerProcess=pP;
  2206 	K::ThreadEnterCS();
  2206 	K::ThreadEnterCS();
  2207 	pP->SetPriority(EPriorityFileServer);
  2207 	pP->SetPriority(EPriorityFileServer);
  2208 	M::FsRegisterThread();
  2208 	M::FsRegisterThread();
  2209 	K::ThreadLeaveCS();
  2209 	K::ThreadLeaveCS();