LCOV - code coverage report
Current view: top level - acl/acl_tdt_queue - queue_process_host.cpp (source / functions) Hit Total Coverage
Test: coverage.info Lines: 313 327 95.7 %
Date: 2026-08-27 13:24:42 Functions: 20 20 100.0 %

          Line data    Source code
       1             : /**
       2             :  * Copyright (c) 2025 Huawei Technologies Co., Ltd.
       3             :  * This program is free software, you can redistribute it and/or modify it under the terms and conditions of
       4             :  * CANN Open Software License Agreement Version 2.0 (the "License").
       5             :  * Please refer to the License for details. You may not use this file except in compliance with the License.
       6             :  * THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR IMPLIED,
       7             :  * INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE.
       8             :  * See LICENSE in the root of the software repository for the full text of the License.
       9             :  */
      10             : #include "queue_process_host.h"
      11             : #include "log_inner.h"
      12             : #include "runtime/mem.h"
      13             : #include "runtime/rt_mem_queue.h"
      14             : #include "runtime/dev.h"
      15             : #include "queue_schedule/qs_client.h"
      16             : #include "utils/math_utils.h"
      17             : 
      18             : namespace acl {
      19           3 :     aclError QueueProcessorHost::acltdtCreateQueue(const acltdtQueueAttr *const attr, uint32_t *const qid)
      20             :     {
      21           3 :         ACL_LOG_INFO("Start to acltdtCreateQueue");
      22           3 :         ACL_REQUIRES_NOT_NULL(qid);
      23           2 :         int32_t deviceId = 0;
      24           2 :         rtError_t rtRet = RT_ERROR_NONE;
      25           2 :         rtRet = rtGetDevice(&deviceId);
      26           2 :         if (rtRet != ACL_SUCCESS) {
      27           0 :             ACL_LOG_CALL_ERROR("[Get][DeviceId]fail to get deviceId errorCode = %d", rtRet);
      28           0 :             return rtRet;
      29             :         }
      30           4 :         const std::lock_guard<std::recursive_mutex> lk(muForQueueCtrl_);
      31           2 :         const rtError_t ret =  rtMemQueueInit(deviceId);
      32           2 :         if ((ret != ACL_RT_SUCCESS) && (ret != ACL_ERROR_RT_REPEATED_INIT)) {
      33           0 :             ACL_LOG_INNER_ERROR("queue init failed, ret is %d", ret);
      34           0 :             return ret;
      35             :         }
      36           2 :         ACL_REQUIRES_OK(acltdtCreateQueueWithAttr(deviceId, attr, qid));
      37           2 :         ACL_LOG_INFO("Successfully to execute acltdtCreateQueue, qid is %u", *qid);
      38           2 :         return ACL_SUCCESS;
      39             :     }
      40             : 
      41           1 :     aclError QueueProcessorHost::acltdtDestroyQueue(const uint32_t qid)
      42             :     {
      43           1 :         int32_t deviceId = 0;
      44           1 :         ACL_REQUIRES_CALL_RTS_OK(rtGetDevice(&deviceId), rtGetDevice);
      45             :         // get qs id
      46           1 :         int32_t qsPid = 0;
      47           1 :         size_t routeNum = 0UL;
      48           2 :         const std::lock_guard<std::recursive_mutex> lk(muForQueueCtrl_);
      49           1 :         if (GetDstInfo(deviceId, QS_PID, qsPid) == RT_ERROR_NONE) {
      50           1 :             rtEschedEventSummary_t eventSum = {0, 0U, 0, 0U, 0U, nullptr, 0U, 0};
      51           1 :             rtEschedEventReply_t ack = {nullptr, 0U, 0U};
      52           1 :             bqs::QsProcMsgRsp qsRsp = {0UL, 0, 0U, 0U, 0U, {0}};
      53           1 :             int32_t cpPid = 0;
      54           1 :             ACL_REQUIRES_OK(GetDstInfo(deviceId, CP_PID, cpPid));
      55           1 :             eventSum.pid = cpPid;
      56           1 :             eventSum.grpId = 0U;
      57           1 :             eventSum.eventId = RT_MQ_SCHED_EVENT_QS_MSG;
      58           1 :             eventSum.dstEngine = static_cast<uint32_t>(RT_MQ_DST_ENGINE_ACPU_DEVICE);
      59           1 :             ack.buf = reinterpret_cast<char_t *>(&qsRsp);
      60           1 :             ack.bufLen = sizeof(qsRsp);
      61           1 :             acltdtQueueRouteQueryInfo queryInfo = {bqs::BQS_QUERY_TYPE_SRC_OR_DST, qid, qid, true, true, true};
      62           1 :             ACL_REQUIRES_OK(GetQueueRouteNum(&queryInfo, deviceId, eventSum, ack, routeNum));
      63             :         }
      64           1 :         if (routeNum > 0UL) {
      65           0 :             ACL_LOG_ERROR("qid [%u] can not be destroyed, it need to be unbinded first.", qid);
      66           0 :             return ACL_ERROR_FAILURE;
      67             :         }
      68           1 :         ACL_REQUIRES_CALL_RTS_OK(rtMemQueueDestroy(deviceId, qid), rtMemQueueDestroy);
      69           1 :         DeleteMutexForData(qid);
      70           1 :         return ACL_SUCCESS;
      71             :     }
      72             : 
      73           2 :     aclError QueueProcessorHost::acltdtBindQueueRoutes(acltdtQueueRouteList *const qRouteList)
      74             :     {
      75           2 :         ACL_REQUIRES_NOT_NULL(qRouteList);
      76           2 :         ACL_LOG_INFO("Start to acltdtBindQueueRoutes, queue route is %zu", qRouteList->routeList.size());
      77           2 :         int32_t deviceId = 0;
      78           2 :         ACL_REQUIRES_CALL_RTS_OK(rtGetDevice(&deviceId), rtGetDevice);
      79           2 :         ACL_REQUIRES_OK(InitQueueSchedule(deviceId));
      80             :         // get dst pid
      81           2 :         int32_t dstPid = 0;
      82           2 :         ACL_REQUIRES_OK(GetDstInfo(deviceId, CP_PID, dstPid));
      83           2 :         rtEschedEventSummary_t eventSum = {0, 0U, 0, 0U, 0U, nullptr, 0U, 0};
      84           2 :         rtEschedEventReply_t ack = {nullptr, 0U, 0U};
      85           2 :         bqs::QsProcMsgRsp qsRsp = {0UL, 0, 0U, 0U, 0U, {0}};
      86           2 :         eventSum.pid = dstPid;
      87           2 :         eventSum.grpId = 0U;
      88           2 :         eventSum.eventId = RT_MQ_SCHED_EVENT_QS_MSG;
      89           2 :         eventSum.dstEngine = static_cast<uint32_t>(RT_MQ_DST_ENGINE_ACPU_DEVICE);
      90           2 :         ack.buf = reinterpret_cast<char_t *>(&qsRsp);
      91           2 :         ack.bufLen = sizeof(qsRsp);
      92           4 :         const std::lock_guard<std::recursive_mutex> lk(muForQueueCtrl_);
      93           2 :         if (!isQsInit_) {
      94           1 :             ACL_REQUIRES_OK(SendConnectQsMsg(deviceId, eventSum, ack));
      95           1 :             isQsInit_ = true;
      96             :         }
      97           2 :         ACL_REQUIRES_OK(SendBindUnbindMsg(deviceId, qRouteList, true, eventSum, ack));
      98           1 :         ACL_LOG_INFO("Successfully to execute acltdtBindQueueRoutes, queue route is %zu", qRouteList->routeList.size());
      99           1 :         return ACL_SUCCESS;
     100             :     }
     101             : 
     102           4 :     aclError QueueProcessorHost::acltdtUnbindQueueRoutes(acltdtQueueRouteList *const qRouteList)
     103             :     {
     104           4 :         ACL_REQUIRES_NOT_NULL(qRouteList);
     105           4 :         ACL_LOG_INFO("Start to acltdtUnBindQueueRoutes, queue route is %zu", qRouteList->routeList.size());
     106           4 :         int32_t deviceId = 0;
     107           4 :         ACL_REQUIRES_CALL_RTS_OK(rtGetDevice(&deviceId), rtGetDevice);
     108             :         // get dst pid
     109           4 :         int32_t dstPid = 0;
     110           4 :         ACL_REQUIRES_OK(GetDstInfo(deviceId, CP_PID, dstPid));
     111           4 :         rtEschedEventSummary_t eventSum = {0, 0U, 0, 0U, 0U, nullptr, 0U, 0};
     112           4 :         rtEschedEventReply_t ack = {nullptr, 0U, 0U};
     113           4 :         bqs::QsProcMsgRsp qsRsp = {0UL, 0, 0U, 0U, 0U, {0}};
     114           4 :         eventSum.pid = dstPid;
     115           4 :         eventSum.grpId = 0U;
     116           4 :         eventSum.eventId = RT_MQ_SCHED_EVENT_QS_MSG;
     117           4 :         eventSum.dstEngine = static_cast<uint32_t>(RT_MQ_DST_ENGINE_ACPU_DEVICE);
     118           4 :         ack.buf = reinterpret_cast<char_t *>(&qsRsp);
     119           4 :         ack.bufLen = sizeof(qsRsp);
     120           8 :         const std::lock_guard<std::recursive_mutex> lk(muForQueueCtrl_);
     121           4 :         ACL_REQUIRES_OK(SendBindUnbindMsg(deviceId, qRouteList, false, eventSum, ack));
     122           4 :         ACL_LOG_INFO("Successfully to execute acltdtUnBindQueueRoutes, queue route is %zu",
     123             :                      qRouteList->routeList.size());
     124           4 :         return ACL_SUCCESS;
     125             :     }
     126             : 
     127           1 :     aclError QueueProcessorHost::acltdtQueryQueueRoutes(const acltdtQueueRouteQueryInfo *const queryInfo,
     128             :                                                         acltdtQueueRouteList *const qRouteList)
     129             :     {
     130           1 :         ACL_REQUIRES_NOT_NULL(queryInfo);
     131           1 :         ACL_REQUIRES_NOT_NULL(qRouteList);
     132           1 :         ACL_LOG_INFO("Start to acltdtQueryQueueRoutes");
     133           1 :         int32_t deviceId = 0;
     134           1 :         ACL_REQUIRES_CALL_RTS_OK(rtGetDevice(&deviceId), rtGetDevice);
     135             :         // get dst id
     136           1 :         int32_t dstPid = 0;
     137           1 :         ACL_REQUIRES_OK(GetDstInfo(deviceId, CP_PID, dstPid));
     138           1 :         rtEschedEventSummary_t eventSum = {0, 0U, 0, 0U, 0U, nullptr, 0U, 0};
     139           1 :         rtEschedEventReply_t ack = {nullptr, 0U, 0U};
     140           1 :         bqs::QsProcMsgRsp qsRsp = {0UL, 0, 0U, 0U, 0U, {0}};
     141           1 :         eventSum.pid = dstPid;
     142           1 :         eventSum.grpId = 0U;
     143           1 :         eventSum.eventId = RT_MQ_SCHED_EVENT_QS_MSG;
     144           1 :         eventSum.dstEngine = static_cast<uint32_t>(RT_MQ_DST_ENGINE_ACPU_DEVICE);
     145           1 :         ack.buf = reinterpret_cast<char_t *>(&qsRsp);
     146           1 :         ack.bufLen = sizeof(qsRsp);
     147           2 :         const std::lock_guard<std::recursive_mutex> lk(muForQueueCtrl_);
     148           1 :         size_t routeNum = 0UL;
     149           1 :         ACL_REQUIRES_OK(GetQueueRouteNum(queryInfo, deviceId, eventSum, ack, routeNum));
     150           1 :         ACL_REQUIRES_OK(QueryQueueRoutes(deviceId, queryInfo, routeNum, eventSum, ack, qRouteList));
     151           1 :         return ACL_SUCCESS;
     152             :     }
     153             : 
     154           8 :     aclError QueueProcessorHost::SendBindUnbindMsg(const int32_t deviceId, acltdtQueueRouteList *const qRouteList,
     155             :         const bool isBind, rtEschedEventSummary_t &eventSum, rtEschedEventReply_t &ack) const
     156             :     {
     157           8 :         ACL_LOG_INFO("start to send bind or unbind msg");
     158             :         // send bind or unbind msg
     159           8 :         size_t routeListBody = 0U;
     160           8 :         ACL_CHECK_ASSIGN_SIZET_MULTI(qRouteList->routeList.size(), sizeof(bqs::QueueRoute), routeListBody);
     161           8 :         size_t routeSize = 0U;
     162           8 :         ACL_CHECK_ASSIGN_SIZET_ADD(sizeof(bqs::QsRouteHead), routeListBody, routeSize);
     163           8 :         ACL_LOG_INFO("route size is %zu, queue route num is %zu", routeSize, qRouteList->routeList.size());
     164           8 :         void *devPtr = nullptr;
     165           8 :         constexpr uint32_t flags = RT_MEMORY_DEFAULT | RT_MEMORY_POLICY_DEFAULT_PAGE_ONLY;
     166           8 :         ACL_REQUIRES_CALL_RTS_OK(rtMalloc(&devPtr, routeSize, flags, acl::ACL_MODE_ID_U16), rtMalloc);
     167           8 :         ACL_CHECK_MALLOC_RESULT(devPtr);
     168           8 :         (void)rtMemset(devPtr, routeSize, 0U, routeSize);
     169           8 :         bqs::QsRouteHead head = {0U, 0U, 0U, 0UL};
     170           8 :         head.length = routeSize;
     171           8 :         head.routeNum = qRouteList->routeList.size();
     172           8 :         head.subEventId =
     173           8 :             isBind ? static_cast<uint32_t>(bqs::ACL_BIND_QUEUE) : static_cast<uint32_t>(bqs::ACL_UNBIND_QUEUE);
     174           8 :         auto ret = rtMemcpy(devPtr, routeSize, &head, sizeof(head), RT_MEMCPY_HOST_TO_DEVICE);
     175           8 :         if (ret != ACL_RT_SUCCESS) {
     176           0 :             ACL_LOG_INNER_ERROR("call rtMemcpy failed ,ret is %d", ret);
     177           0 :             (void)rtFree(devPtr);
     178           0 :             devPtr = nullptr;
     179           0 :             return ret;
     180             :         }
     181           8 :         size_t offset = sizeof(bqs::QsRouteHead);
     182          16 :         for (size_t i = 0UL; i < qRouteList->routeList.size(); ++i) {
     183           8 :             bqs::QueueRoute tmpRoute = {0U, 0U, 0, 0, 0, 0UL, 0UL, {0}};
     184           8 :             tmpRoute.srcId = qRouteList->routeList[i].srcId;
     185           8 :             tmpRoute.dstId = qRouteList->routeList[i].dstId;
     186           8 :             ret = rtMemcpy((static_cast<uint8_t *>(devPtr) + offset), (routeSize - offset), &tmpRoute,
     187             :                 sizeof(tmpRoute), RT_MEMCPY_HOST_TO_DEVICE);
     188           8 :             if (ret != ACL_RT_SUCCESS) {
     189           0 :                 ACL_LOG_INNER_ERROR("call rtMemcpy failed ,ret is %d", ret);
     190           0 :                 (void)rtFree(devPtr);
     191           0 :                 devPtr = nullptr;
     192           0 :                 return ret;
     193             :             }
     194           8 :             offset += sizeof(bqs::QueueRoute);
     195             :         }
     196             : 
     197           8 :         bqs::QueueRouteList bqsBindUnbindMsg = {0U, 0U, {0}};
     198           8 :         bqsBindUnbindMsg.routeListMsgAddr = reinterpret_cast<uintptr_t>(devPtr);
     199           8 :         eventSum.subeventId =
     200           8 :             isBind ? static_cast<uint32_t>(bqs::ACL_BIND_QUEUE) : static_cast<uint32_t>(bqs::ACL_UNBIND_QUEUE);
     201           8 :         eventSum.msgLen = sizeof(bqsBindUnbindMsg);
     202           8 :         eventSum.msg = reinterpret_cast<char_t *>(&bqsBindUnbindMsg);
     203           8 :         ret = rtEschedSubmitEventSync(deviceId, &eventSum, &ack);
     204           8 :         eventSum.msgLen = 0U;
     205           8 :         eventSum.msg = nullptr;
     206           8 :         if (ret != RT_ERROR_NONE) {
     207           1 :             ACL_LOG_CALL_ERROR("[Call][Rts]call rts api rtEschedSubmitEventSync failed.");
     208           1 :             (void)rtFree(devPtr);
     209           1 :             devPtr = nullptr;
     210           1 :             return ret;
     211             :         }
     212           7 :         bqs::QsProcMsgRsp *const rsp = reinterpret_cast<bqs::QsProcMsgRsp *>(ack.buf);
     213           7 :         if (rsp->retCode != 0) {
     214           1 :             ACL_LOG_INNER_ERROR("send connet qs failed, ret code id %d", rsp->retCode);
     215           1 :             (void)rtFree(devPtr);
     216           1 :             devPtr = nullptr;
     217           1 :             return ACL_ERROR_FAILURE;
     218             :         }
     219           6 :         offset = sizeof(bqs::QsRouteHead);
     220          11 :         for (size_t i = 0UL; i < qRouteList->routeList.size(); ++i) {
     221           6 :             bqs::QueueRoute retRoute = {0U, 0U, 0, 0, 0, 0UL, 0UL, {0}};
     222           6 :             ret = rtMemcpy(&retRoute, sizeof(retRoute), (static_cast<uint8_t *>(devPtr) + offset),
     223             :                 sizeof(retRoute), RT_MEMCPY_DEVICE_TO_HOST);
     224           6 :             if (ret != ACL_RT_SUCCESS) {
     225           1 :                 ACL_LOG_INNER_ERROR("call rtMemcpy failed, ret is %d", ret);
     226           1 :                 (void)rtFree(devPtr);
     227           1 :                 devPtr = nullptr;
     228           1 :                 return ret;
     229             :             }
     230           5 :             qRouteList->routeList[i].status = retRoute.status;
     231           5 :             ACL_LOG_INFO("route %zu, srcqid is %u, dst pid is %u, status is %d", i, qRouteList->routeList[i].srcId,
     232             :                 qRouteList->routeList[i].dstId, qRouteList->routeList[i].status);
     233           5 :             offset += sizeof(bqs::QueueRoute);
     234             :         }
     235           5 :         (void)rtFree(devPtr);
     236           5 :         devPtr = nullptr;
     237           5 :         return ret;
     238             :     }
     239             : 
     240           7 :     aclError QueueProcessorHost::QueryQueueRoutes(const int32_t deviceId,
     241             :         const acltdtQueueRouteQueryInfo *const queryInfo,
     242             :         const size_t routeNum, rtEschedEventSummary_t &eventSum,
     243             :         rtEschedEventReply_t &ack, acltdtQueueRouteList *const qRouteList) const
     244             :     {
     245           7 :         ACL_LOG_INFO("start to query queue route %zu", routeNum);
     246           7 :         if (routeNum == 0U) {
     247           1 :             return ACL_SUCCESS;
     248             :         }
     249           6 :         size_t routeListBody = 0U;
     250           6 :         ACL_CHECK_ASSIGN_SIZET_MULTI(routeNum, sizeof(bqs::QueueRoute), routeListBody);
     251           6 :         size_t routeSize = 0U;
     252           6 :         ACL_CHECK_ASSIGN_SIZET_ADD((sizeof(bqs::QsRouteHead) + sizeof(bqs::QueueRouteQuery)), routeListBody, routeSize);
     253           6 :         ACL_LOG_INFO("route size is %zu, queue route num is %zu", routeSize, qRouteList->routeList.size());
     254           6 :         void *devPtr = nullptr;
     255           6 :         constexpr uint32_t flags = RT_MEMORY_DEFAULT | RT_MEMORY_POLICY_DEFAULT_PAGE_ONLY;
     256           6 :         ACL_REQUIRES_CALL_RTS_OK(rtMalloc(&devPtr, routeSize, flags, acl::ACL_MODE_ID_U16), rtMalloc);
     257           6 :         ACL_CHECK_MALLOC_RESULT(devPtr);
     258           6 :         (void)rtMemset(devPtr, routeSize, 0U, routeSize);
     259           6 :         bqs::QsRouteHead head = {0U, 0U, 0U, 0UL};
     260           6 :         head.length = routeSize;
     261           6 :         head.routeNum = routeNum;
     262           6 :         head.subEventId = bqs::ACL_QUERY_QUEUE;
     263           6 :         auto ret = rtMemcpy(devPtr, routeSize, &head, sizeof(head), RT_MEMCPY_HOST_TO_DEVICE);
     264           6 :         if (ret != ACL_RT_SUCCESS) {
     265           1 :             ACL_LOG_INNER_ERROR("call rtMemcpy failed ,ret is %d", ret);
     266           1 :             (void)rtFree(devPtr);
     267           1 :             devPtr = nullptr;
     268           1 :             return ret;
     269             :         }
     270           5 :         size_t offset = sizeof(bqs::QsRouteHead);
     271           5 :         bqs::QueueRouteQuery routeQuery = {0UL, 0U, 0U, 0U, 0, 0, 0UL, {0}};
     272           5 :         routeQuery.queryType = static_cast<uint32_t>(queryInfo->mode);
     273           5 :         routeQuery.srcId = queryInfo->srcId;
     274           5 :         routeQuery.dstId = queryInfo->dstId;
     275           5 :         ret = rtMemcpy((static_cast<uint8_t *>(devPtr) + offset), (routeSize - offset), &routeQuery,
     276             :             sizeof(routeQuery), RT_MEMCPY_HOST_TO_DEVICE);
     277           5 :         if (ret != ACL_RT_SUCCESS) {
     278           1 :             ACL_LOG_INNER_ERROR("call rtMemcpy failed ,ret is %d", ret);
     279           1 :             (void)rtFree(devPtr);
     280           1 :             devPtr = nullptr;
     281           1 :             return ret;
     282             :         }
     283             : 
     284           4 :         bqs::QueueRouteList qsCommonMsg = {0U, 0U, {0}};
     285           4 :         qsCommonMsg.routeListMsgAddr = reinterpret_cast<uintptr_t>(devPtr);
     286           4 :         eventSum.subeventId = bqs::ACL_QUERY_QUEUE;
     287           4 :         eventSum.msgLen = sizeof(qsCommonMsg);
     288           4 :         eventSum.msg = reinterpret_cast<char_t *>(&qsCommonMsg);
     289             : 
     290           4 :         ret = rtEschedSubmitEventSync(deviceId, &eventSum, &ack);
     291           4 :         eventSum.msgLen = 0U;
     292           4 :         eventSum.msg = nullptr;
     293           4 :         if (ret != RT_ERROR_NONE) {
     294           1 :             (void)rtFree(devPtr);
     295           1 :             devPtr = nullptr;
     296           1 :             return ret;
     297             :         }
     298           3 :         bqs::QsProcMsgRsp *const rsp = reinterpret_cast<bqs::QsProcMsgRsp *>(ack.buf);
     299           3 :         if (rsp->retCode != 0) {
     300           1 :             ACL_LOG_INNER_ERROR("query queue route failed, ret code id %d", rsp->retCode);
     301           1 :             (void)rtFree(devPtr);
     302           1 :             devPtr = nullptr;
     303           1 :             return ACL_ERROR_FAILURE;
     304             :         }
     305           2 :         offset = sizeof(bqs::QsRouteHead) + sizeof(bqs::QueueRouteQuery);
     306           3 :         for (size_t i = 0UL; i < routeNum; ++i) {
     307           2 :             bqs::QueueRoute retRoute = {0U, 0U, 0, 0, 0, 0UL, 0UL, {0}};
     308           2 :             ret = rtMemcpy(&retRoute, sizeof(retRoute), (static_cast<uint8_t *>(devPtr) + offset),
     309             :                 sizeof(retRoute), RT_MEMCPY_DEVICE_TO_HOST);
     310           2 :             if (ret != ACL_RT_SUCCESS) {
     311           1 :                 ACL_LOG_INNER_ERROR("call rtMemcpy failed ,ret is %d", ret);
     312           1 :                 (void)rtFree(devPtr);
     313           1 :                 devPtr = nullptr;
     314           1 :                 return ret;
     315             :             }
     316           1 :             const acltdtQueueRoute tmpQueueRoute = {retRoute.srcId, retRoute.dstId, retRoute.status};
     317           1 :             qRouteList->routeList.push_back(tmpQueueRoute);
     318           1 :             ACL_LOG_INFO("route %zu, srcqid is %u, dst pid is %u, status is %d", i, qRouteList->routeList[i].srcId,
     319             :                 qRouteList->routeList[i].dstId, qRouteList->routeList[i].status);
     320           1 :             offset += sizeof(bqs::QueueRoute);
     321             :         }
     322           1 :         (void)rtFree(devPtr);
     323           1 :         devPtr = nullptr;
     324           1 :         ACL_LOG_INFO("Successfully to execute acltdtQueryQueueRoutes, queue route is %zu",
     325             :                      qRouteList->routeList.size());
     326           1 :         return ACL_SUCCESS;
     327             :     }
     328             : 
     329           1 :     aclError QueueProcessorHost::acltdtEnqueue(const uint32_t qid, const acltdtBuf buf, const int32_t timeout)
     330             :     {
     331             :         (void)(qid);
     332             :         (void)(buf);
     333             :         (void)(timeout);
     334           1 :         ACL_LOG_ERROR("[Unsupport][Feature]acltdtEnqueue is not supported in this version. Please check.");
     335           1 :         const char_t *argList[] = {"feature", "reason"};
     336           1 :         const char_t *argVal[] = {"acltdtEnqueue", "please check"};
     337           1 :         acl::AclErrorLogManager::ReportInputErrorWithChar(acl::UNSUPPORTED_FEATURE_MSG, argList, argVal, 2UL);
     338           2 :         return ACL_ERROR_FEATURE_UNSUPPORTED;
     339             :     }
     340             : 
     341           1 :     aclError QueueProcessorHost::acltdtDequeue(const uint32_t qid, acltdtBuf *const buf, const int32_t timeout)
     342             :     {
     343             :         (void)(qid);
     344             :         (void)(buf);
     345             :         (void)(timeout);
     346           1 :         ACL_LOG_ERROR("[Unsupport][Feature]acltdtDequeue is not supported in this version. Please check.");
     347           1 :         const char_t *argList[] = {"feature", "reason"};
     348           1 :         const char_t *argVal[] = {"acltdtDequeue", "please check"};
     349           1 :         acl::AclErrorLogManager::ReportInputErrorWithChar(acl::UNSUPPORTED_FEATURE_MSG, argList, argVal, 2UL);
     350           2 :         return ACL_ERROR_FEATURE_UNSUPPORTED;
     351             :     }
     352             : 
     353           3 :     aclError QueueProcessorHost::acltdtAllocBuf(const size_t size, const uint32_t type, acltdtBuf *const buf)
     354             :     {
     355             :         (void)(size);
     356             :         (void)(type);
     357             :         (void)(buf);
     358           3 :         ACL_LOG_ERROR("[Unsupport][Feature]acltdtAllocBuf is not supported in this version. Please check.");
     359           3 :         const char_t *argList[] = {"feature", "reason"};
     360           3 :         const char_t *argVal[] = {"acltdtAllocBuf", "please check"};
     361           3 :         acl::AclErrorLogManager::ReportInputErrorWithChar(acl::UNSUPPORTED_FEATURE_MSG, argList, argVal, 2UL);
     362           6 :         return ACL_ERROR_FEATURE_UNSUPPORTED;
     363             :     }
     364             : 
     365           3 :     aclError QueueProcessorHost::acltdtFreeBuf(acltdtBuf buf)
     366             :     {
     367             :         (void)(buf);
     368           3 :         ACL_LOG_ERROR("[Unsupport][Feature]acltdtFreeBuf is not supported in this version. Please check.");
     369           3 :         const char_t *argList[] = {"feature", "reason"};
     370           3 :         const char_t *argVal[] = {"acltdtFreeBuf", "please check"};
     371           3 :         acl::AclErrorLogManager::ReportInputErrorWithChar(acl::UNSUPPORTED_FEATURE_MSG, argList, argVal, 2UL);
     372           6 :         return ACL_ERROR_FEATURE_UNSUPPORTED;
     373             :     }
     374             : 
     375           1 :     aclError QueueProcessorHost::acltdtGetBufData(const acltdtBuf buf, void **const dataPtr, size_t *const size)
     376             :     {
     377             :         (void)(buf);
     378             :         (void)(dataPtr);
     379             :         (void)(size);
     380           1 :         ACL_LOG_ERROR("[Unsupport][Feature]acltdtGetBufData is not supported in this version. Please check.");
     381           1 :         const char_t *argList[] = {"feature", "reason"};
     382           1 :         const char_t *argVal[] = {"acltdtGetBufData", "please check"};
     383           1 :         acl::AclErrorLogManager::ReportInputErrorWithChar(acl::UNSUPPORTED_FEATURE_MSG, argList, argVal, 2UL);
     384           2 :         return ACL_ERROR_FEATURE_UNSUPPORTED;
     385             :     }
     386             : 
     387           1 :     aclError QueueProcessorHost::acltdtGetBufUserData(const acltdtBuf buf, void *dataPtr,
     388             :                                                       const size_t size, const size_t offset)
     389             :     {
     390             :         (void)(buf);
     391             :         (void)(dataPtr);
     392             :         (void)(size);
     393             :         (void)(offset);
     394           1 :         ACL_LOG_ERROR("[Unsupport][Feature]acltdtGetBufUserData is not supported in this version. Please check.");
     395           1 :         const char_t *argList[] = {"feature", "reason"};
     396           1 :         const char_t *argVal[] = {"acltdtGetBufUserData", "please check"};
     397           1 :         acl::AclErrorLogManager::ReportInputErrorWithChar(acl::UNSUPPORTED_FEATURE_MSG, argList, argVal, 2UL);
     398           2 :         return ACL_ERROR_FEATURE_UNSUPPORTED;
     399             :     }
     400             : 
     401           1 :     aclError QueueProcessorHost::acltdtSetBufUserData(acltdtBuf buf, const void *dataPtr,
     402             :                                                       const size_t size, const size_t offset)
     403             :     {
     404             :         (void)(buf);
     405             :         (void)(dataPtr);
     406             :         (void)(size);
     407             :         (void)(offset);
     408           1 :         ACL_LOG_ERROR("[Unsupport][Feature]acltdtSetBufUserData is not supported in this version. Please check.");
     409           1 :         const char_t *argList[] = {"feature", "reason"};
     410           1 :         const char_t *argVal[] = {"acltdtSetBufUserData", "please check"};
     411           1 :         acl::AclErrorLogManager::ReportInputErrorWithChar(acl::UNSUPPORTED_FEATURE_MSG, argList, argVal, 2UL);
     412           2 :         return ACL_ERROR_FEATURE_UNSUPPORTED;
     413             :     }
     414             : 
     415           1 :     aclError QueueProcessorHost::acltdtCopyBufRef(const acltdtBuf buf, acltdtBuf *const newBuf)
     416             :     {
     417             :         (void)(buf);
     418             :         (void)(newBuf);
     419           1 :         ACL_LOG_ERROR("[Unsupport][Feature]acltdtCopyBufRef is not supported in this version. Please check.");
     420           1 :         const char_t *argList[] = {"feature", "reason"};
     421           1 :         const char_t *argVal[] = {"acltdtCopyBufRef", "please check"};
     422           1 :         acl::AclErrorLogManager::ReportInputErrorWithChar(acl::UNSUPPORTED_FEATURE_MSG, argList, argVal, 2UL);
     423           2 :         return ACL_ERROR_FEATURE_UNSUPPORTED;
     424             :     }
     425             : 
     426           1 :     aclError QueueProcessorHost::acltdtSetBufDataLen(const acltdtBuf buf, const size_t len)
     427             :     {
     428             :         (void)(buf);
     429             :         (void)(len);
     430           1 :         ACL_LOG_ERROR("[Unsupport][Feature]acltdtSetBufDataLen is not supported in this version. Please check.");
     431           1 :         const char_t *argList[] = {"feature", "reason"};
     432           1 :         const char_t *argVal[] = {"acltdtSetBufDataLen", "please check"};
     433           1 :         acl::AclErrorLogManager::ReportInputErrorWithChar(acl::UNSUPPORTED_FEATURE_MSG, argList, argVal, 2UL);
     434           2 :         return ACL_ERROR_FEATURE_UNSUPPORTED;
     435             :     }
     436             : 
     437           1 :     aclError QueueProcessorHost::acltdtGetBufDataLen(const acltdtBuf buf, size_t *const len)
     438             :     {
     439             :         (void)(buf);
     440             :         (void)(len);
     441           1 :         ACL_LOG_ERROR("[Unsupport][Feature]acltdtGetBufDataLen is not supported in this version. Please check.");
     442           1 :         const char_t *argList[] = {"feature", "reason"};
     443           1 :         const char_t *argVal[] = {"acltdtGetBufDataLen", "please check"};
     444           1 :         acl::AclErrorLogManager::ReportInputErrorWithChar(acl::UNSUPPORTED_FEATURE_MSG, argList, argVal, 2UL);
     445           2 :         return ACL_ERROR_FEATURE_UNSUPPORTED;
     446             :     }
     447             : 
     448           1 :     aclError QueueProcessorHost::acltdtAppendBufChain(const acltdtBuf headBuf, const acltdtBuf buf)
     449             :     {
     450             :         (void)(buf);
     451             :         (void)(headBuf);
     452           1 :         ACL_LOG_ERROR("[Unsupport][Feature]acltdtAppendBufChain is not supported in this version. Please check.");
     453           1 :         const char_t *argList[] = {"feature", "reason"};
     454           1 :         const char_t *argVal[] = {"acltdtAppendBufChain", "please check"};
     455           1 :         acl::AclErrorLogManager::ReportInputErrorWithChar(acl::UNSUPPORTED_FEATURE_MSG, argList, argVal, 2UL);
     456           2 :         return ACL_ERROR_FEATURE_UNSUPPORTED;
     457             :     }
     458             : 
     459           1 :     aclError QueueProcessorHost::acltdtGetBufChainNum(const acltdtBuf headBuf, uint32_t *const num)
     460             :     {
     461             :         (void)(headBuf);
     462             :         (void)(num);
     463           1 :         ACL_LOG_ERROR("[Unsupport][Feature]acltdtGetBufChainNum is not supported in this version. Please check.");
     464           1 :         const char_t *argList[] = {"feature", "reason"};
     465           1 :         const char_t *argVal[] = {"acltdtGetBufChainNum", "please check"};
     466           1 :         acl::AclErrorLogManager::ReportInputErrorWithChar(acl::UNSUPPORTED_FEATURE_MSG, argList, argVal, 2UL);
     467           2 :         return ACL_ERROR_FEATURE_UNSUPPORTED;
     468             :     }
     469             : 
     470           1 :     aclError QueueProcessorHost::acltdtGetBufFromChain(const acltdtBuf headBuf,
     471             :         const uint32_t index, acltdtBuf *const buf)
     472             :     {
     473             :         (void)(buf);
     474             :         (void)(headBuf);
     475             :         (void)(index);
     476           1 :         ACL_LOG_ERROR("[Unsupport][Feature]acltdtGetBufFromChain is not supported in this version. Please check.");
     477           1 :         const char_t *argList[] = {"feature", "reason"};
     478           1 :         const char_t *argVal[] = {"acltdtGetBufFromChain", "please check"};
     479           1 :         acl::AclErrorLogManager::ReportInputErrorWithChar(acl::UNSUPPORTED_FEATURE_MSG, argList, argVal, 2UL);
     480           2 :         return ACL_ERROR_FEATURE_UNSUPPORTED;
     481             :     }
     482             : }

Generated by: LCOV version 1.14