diff --git a/common/include/input_hub.cpp b/common/include/input_hub.cpp index 426b155c601bd5b34a41a15644fe713ffaf0006c..afbbecbd2af4b00b85aaa8984ca63558d0baf030 100644 --- a/common/include/input_hub.cpp +++ b/common/include/input_hub.cpp @@ -414,17 +414,14 @@ void InputHub::GetDeviceHandler() continue; } - Device* device = GetDeviceByFdLocked(eventItem.data.fd); - if (!device) { - DHLOGE( - "Received unexpected epoll event 0x%08x for unknown fd %d.", - eventItem.events, eventItem.data.fd); - continue; - } - if (eventItem.events & EPOLLHUP) { - DHLOGI("Removing device %s due to epoll hang-up event.", - device->identifier.name.c_str()); + Device* device = GetDeviceByFdLocked(eventItem.data.fd); + if (!device) { + DHLOGE("Received unexpected epoll event 0x%08x for unknown fd %d.", + eventItem.events, eventItem.data.fd); + continue; + } + DHLOGI("Removing device %s due to epoll hang-up event.", device->identifier.name.c_str()); deviceChanged_ = true; CloseDeviceLocked(*device); } diff --git a/services/source/transport/src/distributed_input_source_transport.cpp b/services/source/transport/src/distributed_input_source_transport.cpp index e6c370e92e0a379b7bdcc75c788c161df557c1cd..48fd7a7b5d607f1a49a6f8d2cc81f5b0c7d6dcd2 100644 --- a/services/source/transport/src/distributed_input_source_transport.cpp +++ b/services/source/transport/src/distributed_input_source_transport.cpp @@ -651,7 +651,7 @@ int32_t DistributedInputSourceTransport::LatencyCount(const std::string &deviceI return ERR_DH_INPUT_SERVER_SOURCE_TRANSPORT_LATENCY_FAIL; } - DHLOGI("LatencyCount deviceId:%s, sessionId: %d, smsg:%s.", + DHLOGD("LatencyCount deviceId:%s, sessionId: %d, smsg:%s.", GetAnonyString(deviceId).c_str(), sessionId, SetAnonyId(smsg).c_str()); return DH_SUCCESS; } @@ -1102,7 +1102,14 @@ void DistributedInputSourceTransport::CalculateLatency(int32_t sessionId, const return; } - deltaTime_ = GetCurrentTimeUs() - sendTime_; + uint64_t curTimeUs = GetCurrentTimeUs(); + if (curTimeUs <= sendTime_) { + DHLOGE("Latency time error, currtime is before than send time, curTime: %llu us, sendTime: %llu us", + curTimeUs, sendTime_); + return; + } + + deltaTime_ = curTimeUs - sendTime_; deltaTimeAll_ += deltaTime_; recvNum_ += 1; eachLatencyDetails_ += (std::to_string(deltaTime_) + DINPUT_SPLIT_COMMA); diff --git a/sinkhandler/src/distributed_input_sink_handler.cpp b/sinkhandler/src/distributed_input_sink_handler.cpp index be4eecafafa4d174cf6340203951c6eb84c3761e..95541e37ef50290ced0cb0f1d179851f8dbf7e6d 100644 --- a/sinkhandler/src/distributed_input_sink_handler.cpp +++ b/sinkhandler/src/distributed_input_sink_handler.cpp @@ -42,32 +42,31 @@ DistributedInputSinkHandler::~DistributedInputSinkHandler() int32_t DistributedInputSinkHandler::InitSink(const std::string ¶ms) { - DHLOGD("InitSource"); + DHLOGI("DistributedInputSinkHandler InitSink begin"); std::unique_lock lock(proxyMutex_); - if (!DInputSAManager::GetInstance().HasDInputSinkProxy()) { - sptr samgr = SystemAbilityManagerClient::GetInstance().GetSystemAbilityManager(); - if (!samgr) { - DHLOGE("Failed to get system ability mgr."); - return ERR_DH_INPUT_SINK_HANDLER_INIT_SINK_SA_FAIL; - } - sptr loadCallback(new LoadDInputSinkCallback(params)); - HisyseventUtil::GetInstance().SysEventWriteBehavior(DINPUT_INIT, - "dinput sink LoadSystemAbility call"); - int32_t ret = samgr->LoadSystemAbility(DISTRIBUTED_HARDWARE_INPUT_SINK_SA_ID, loadCallback); - if (ret != ERR_OK) { - DHLOGE("Failed to Load systemAbility, systemAbilityId:%d, ret code:%d", - DISTRIBUTED_HARDWARE_INPUT_SINK_SA_ID, ret); - return ERR_DH_INPUT_SINK_HANDLER_INIT_SINK_SA_FAIL; - } + sptr samgr = SystemAbilityManagerClient::GetInstance().GetSystemAbilityManager(); + if (!samgr) { + DHLOGE("Failed to get system ability mgr."); + return ERR_DH_INPUT_SINK_HANDLER_INIT_SINK_SA_FAIL; + } + sptr loadCallback(new LoadDInputSinkCallback(params)); + HisyseventUtil::GetInstance().SysEventWriteBehavior(DINPUT_INIT, + "dinput sink LoadSystemAbility call"); + int32_t ret = samgr->LoadSystemAbility(DISTRIBUTED_HARDWARE_INPUT_SINK_SA_ID, loadCallback); + if (ret != ERR_OK) { + DHLOGE("Failed to Load systemAbility, systemAbilityId:%d, ret code:%d", + DISTRIBUTED_HARDWARE_INPUT_SINK_SA_ID, ret); + return ERR_DH_INPUT_SINK_HANDLER_INIT_SINK_SA_FAIL; } auto waitStatus = proxyConVar_.wait_for(lock, std::chrono::milliseconds(INPUT_LOAD_SA_TIMEOUT_MS), [this]() { return (DInputSAManager::GetInstance().HasDInputSinkProxy()); }); if (!waitStatus) { - DHLOGE("dinput load sa timeout."); + DHLOGE("dinput load sink sa timeout."); return ERR_DH_INPUT_SINK_HANDLER_INIT_SINK_SA_FAIL; } + DHLOGI("DistributedInputSinkHandler InitSink end"); return DH_SUCCESS; } diff --git a/sourcehandler/src/distributed_input_source_handler.cpp b/sourcehandler/src/distributed_input_source_handler.cpp index e47ae50810348a279bb4eaa635e8965a206465f1..dc93bae3fdfc1969e1e558d8e42c0ed3db992fa2 100644 --- a/sourcehandler/src/distributed_input_source_handler.cpp +++ b/sourcehandler/src/distributed_input_source_handler.cpp @@ -41,32 +41,31 @@ DistributedInputSourceHandler::DistributedInputSourceHandler() int32_t DistributedInputSourceHandler::InitSource(const std::string ¶ms) { - DHLOGD("InitSource"); + DHLOGI("DistributedInputSourceHandler InitSource begin"); std::unique_lock lock(proxyMutex_); - if (!DInputSAManager::GetInstance().HasDInputSourceProxy()) { - sptr samgr = SystemAbilityManagerClient::GetInstance().GetSystemAbilityManager(); - if (!samgr) { - DHLOGE("Failed to get system ability mgr."); - return ERR_DH_INPUT_SINK_HANDLER_INIT_SOURCE_SA_FAIL; - } - sptr loadCallback(new LoadDInputSourceCallback(params)); - HisyseventUtil::GetInstance().SysEventWriteBehavior(DINPUT_INIT, - "dinput init source sa start."); - int32_t ret = samgr->LoadSystemAbility(DISTRIBUTED_HARDWARE_INPUT_SOURCE_SA_ID, loadCallback); - if (ret != ERR_OK) { - DHLOGE("Failed to Load systemAbility, systemAbilityId:%d, ret code:%d", - DISTRIBUTED_HARDWARE_INPUT_SOURCE_SA_ID, ret); - return ERR_DH_INPUT_SINK_HANDLER_INIT_SOURCE_SA_FAIL; - } + sptr samgr = SystemAbilityManagerClient::GetInstance().GetSystemAbilityManager(); + if (!samgr) { + DHLOGE("Failed to get system ability mgr."); + return ERR_DH_INPUT_SINK_HANDLER_INIT_SOURCE_SA_FAIL; + } + sptr loadCallback(new LoadDInputSourceCallback(params)); + HisyseventUtil::GetInstance().SysEventWriteBehavior(DINPUT_INIT, + "dinput init source sa start."); + int32_t ret = samgr->LoadSystemAbility(DISTRIBUTED_HARDWARE_INPUT_SOURCE_SA_ID, loadCallback); + if (ret != ERR_OK) { + DHLOGE("Failed to Load systemAbility, systemAbilityId:%d, ret code:%d", + DISTRIBUTED_HARDWARE_INPUT_SOURCE_SA_ID, ret); + return ERR_DH_INPUT_SINK_HANDLER_INIT_SOURCE_SA_FAIL; } auto waitStatus = proxyConVar_.wait_for(lock, std::chrono::milliseconds(INPUT_LOAD_SA_TIMEOUT_MS), [this]() { return (DInputSAManager::GetInstance().HasDInputSourceProxy()); }); if (!waitStatus) { - DHLOGE("dinput load sa timeout."); + DHLOGE("dinput load source sa timeout."); return ERR_DH_INPUT_SINK_HANDLER_INIT_SOURCE_SA_FAIL; } + DHLOGI("DistributedInputSourceHandler InitSource end"); return DH_SUCCESS; }