Lines Matching defs:pid
102 // If caller's is BMS / root or caller's uid/pid is validate, just return true
141 "PID", exception.pid,
319 int fd = CreateFileForRequest(request->type, request->pid, request->tid, request->time);
325 RecordFileCreation(request->type, request->pid);
333 int fd = CreateFileForRequest(request->type, request->pid, request->tid, request->time);
402 faultLoggerPipeMap_->Del(request->pid);
492 DFXLOGD("%{public}s :: pid(%{public}d), pipeType(%{public}d).", FAULTLOGGERD_TAG.c_str(),
493 request->pid, request->pipeType);
495 FaultLoggerPipe2* faultLoggerPipe = faultLoggerPipeMap_->Get(request->pid);
497 DFXLOGE("%{public}s :: cannot find pipe fd for pid(%{public}d).", FAULTLOGGERD_TAG.c_str(), request->pid);
554 request->callerPid = static_cast<int32_t>(rcred.pid);
589 DFXLOGI("Receive dump request for pid:%{public}d tid:%{public}d.", request->pid, request->tid);
594 * all threads my user, local pid my user, remote pid other user's process
601 * 1. pid != 0 && tid != 0: means we want dump a thread, so we send signal to a thread.
603 * 2. pid != 0 && tid == 0: means we want dump a process, so we send signal to process.
604 Main thead stack is pid's stack, we need other tread info.
608 * in signal_handler we need to check caller pid and tid(which is send to signal handler by SYS_rt_sig.).
609 * 1. caller pid == signal pid, means we do back trace in ourself process, means local backtrace.
611 * 2. pid != signal pid, means we do remote back trace.
620 if ((request->pid <= 0) || (FaultLoggerCheckPermissionResp::CHECK_PERMISSION_REJECT == resSecurityCheck)) {
621 DFXLOGE("%{public}s :: HandleSdkDumpRequest :: pid(%{public}d) or resSecurityCheck(%{public}d) fail.\n", \
622 FAULTLOGGERD_TAG.c_str(), request->pid, (int)resSecurityCheck);
626 DFXLOGI("Sdk dump pid(%{public}d) request pass permission verification.", request->pid);
627 if (IsCrashed(request->pid)) {
629 DFXLOGW("%{public}s :: pid(%{public}d) has been crashed, break.\n",
630 FAULTLOGGERD_TAG.c_str(), request->pid);
633 if (faultLoggerPipeMap_->Check(request->pid, request->time)) {
635 DFXLOGE("%{public}s :: pid(%{public}d) is dumping, break.\n", FAULTLOGGERD_TAG.c_str(), request->pid);
638 faultLoggerPipeMap_->Set(request->pid, request->time, request->isJson);
660 if (syscall(SYS_rt_sigqueueinfo, request->pid, si.si_signo, &si) != 0) {
672 void FaultLoggerDaemon::RecordFileCreation(int32_t type, int32_t pid)
676 crashTimeMap_[pid] = time(nullptr);
693 bool FaultLoggerDaemon::IsCrashed(int32_t pid)
697 return crashTimeMap_.find(pid) != crashTimeMap_.end();
700 int32_t FaultLoggerDaemon::CreateFileForRequest(int32_t type, int32_t pid, int32_t tid, uint64_t time) const
717 std::string ss = folderPath + "/" + typeStr + "-" + std::to_string(pid);
851 bool isCredentialMatched = (creds.pid == request->pid);
858 request->pid, request->uid, creds.pid, creds.uid, it->second, crashSocketFd_);
972 if (stats_[index].pid == request->pid) {
980 stats.pid = request->pid;
996 stats.pid = request->pid;
1035 "PID", stat.pid,