diff options
| author | Daniil Cherednik <[email protected]> | 2025-10-23 18:24:06 +0200 |
|---|---|---|
| committer | GitHub <[email protected]> | 2025-10-23 18:24:06 +0200 |
| commit | f09a53558ceff76e2de34cf8b83efc254b282d09 (patch) | |
| tree | aa493f0ab85b3a7fad0dd052c9344c6995a9affe | |
| parent | 0fa04232ae1f1c0fe39506184816ea8e780c66e4 (diff) | |
[ICRDMA] Move cq actor into separate library. EXT-1618 (#27501)
[ICRDMA] Move cq actor into separate library.
Add dummy implementation for unsupported platforms. EXT-1618
| -rw-r--r-- | ydb/library/actors/interconnect/rdma/cq_actor/cq_actor.cpp (renamed from ydb/library/actors/interconnect/rdma/cq_actor.cpp) | 6 | ||||
| -rw-r--r-- | ydb/library/actors/interconnect/rdma/cq_actor/cq_actor.h (renamed from ydb/library/actors/interconnect/rdma/cq_actor.h) | 0 | ||||
| -rw-r--r-- | ydb/library/actors/interconnect/rdma/cq_actor/cq_actor_dummy.cpp | 47 | ||||
| -rw-r--r-- | ydb/library/actors/interconnect/rdma/cq_actor/ya.make | 32 | ||||
| -rw-r--r-- | ydb/library/actors/interconnect/rdma/ut/utils.cpp | 1 | ||||
| -rw-r--r-- | ydb/library/actors/interconnect/rdma/ut/utils.h | 2 | ||||
| -rw-r--r-- | ydb/library/actors/interconnect/rdma/ut/ya.make | 1 | ||||
| -rw-r--r-- | ydb/library/actors/interconnect/rdma/ya.make | 5 |
8 files changed, 88 insertions, 6 deletions
diff --git a/ydb/library/actors/interconnect/rdma/cq_actor.cpp b/ydb/library/actors/interconnect/rdma/cq_actor/cq_actor.cpp index 67b2ab5987f..7f593d209a6 100644 --- a/ydb/library/actors/interconnect/rdma/cq_actor.cpp +++ b/ydb/library/actors/interconnect/rdma/cq_actor/cq_actor.cpp @@ -1,13 +1,13 @@ #include "cq_actor.h" -#include "events.h" -#include "rdma.h" -#include "ctx.h" #include <ydb/library/actors/core/hfunc.h> #include <ydb/library/actors/core/actor_bootstrapped.h> #include <ydb/library/actors/interconnect/logging/logging.h> #include <ydb/library/actors/interconnect/poller/poller_actor.h> +#include <ydb/library/actors/interconnect/rdma/ctx.h> +#include <ydb/library/actors/interconnect/rdma/events.h> +#include <ydb/library/actors/interconnect/rdma/rdma.h> using namespace NActors; diff --git a/ydb/library/actors/interconnect/rdma/cq_actor.h b/ydb/library/actors/interconnect/rdma/cq_actor/cq_actor.h index fee63e034c2..fee63e034c2 100644 --- a/ydb/library/actors/interconnect/rdma/cq_actor.h +++ b/ydb/library/actors/interconnect/rdma/cq_actor/cq_actor.h diff --git a/ydb/library/actors/interconnect/rdma/cq_actor/cq_actor_dummy.cpp b/ydb/library/actors/interconnect/rdma/cq_actor/cq_actor_dummy.cpp new file mode 100644 index 00000000000..1eeb0ff0f1d --- /dev/null +++ b/ydb/library/actors/interconnect/rdma/cq_actor/cq_actor_dummy.cpp @@ -0,0 +1,47 @@ +#include "cq_actor.h" + +#include <ydb/library/actors/core/hfunc.h> +#include <ydb/library/actors/core/actor_bootstrapped.h> + +#include <ydb/library/actors/interconnect/logging/logging.h> +#include <ydb/library/actors/interconnect/rdma/events.h> + +using namespace NActors; + +namespace NInterconnect::NRdma { + +class TCqActorDummy: public TInterconnectLoggingBase, public TActorBootstrapped<TCqActorDummy> { + +public: + TCqActorDummy() + : TInterconnectLoggingBase("CqActor") + {} + + static constexpr IActor::EActivityType ActorActivityType() { + return IActor::EActivityType::INTERCONNECT_RDMA_CQ; + } + + void Bootstrap() { + Become(&TCqActorDummy::StateFunc); + } + + STRICT_STFUNC(StateFunc, + hFunc(TEvGetCqHandle, Handle); + ) + + void Handle(TEvGetCqHandle::TPtr& ev) { + ev->Get()->CqPtr = nullptr; + TlsActivationContext->Send(ev->Sender, std::unique_ptr<TEvGetCqHandle>(ev->Release().Release())); + } +}; + +NActors::IActor* CreateCqActor(int /*maxCqe*/, int /*maxWr*/, NMonitoring::TDynamicCounters* /*counters*/) { + return new TCqActorDummy(); +} + +NActors::TActorId MakeCqActorId() { + char x[12] = {'I', 'C', 'R', 'D', 'M', 'A', 'C', 'Q', '\xDE', '\xAD', '\xBE', '\xEF'}; + return TActorId(0, TStringBuf(std::begin(x), std::end(x))); +} + +} diff --git a/ydb/library/actors/interconnect/rdma/cq_actor/ya.make b/ydb/library/actors/interconnect/rdma/cq_actor/ya.make new file mode 100644 index 00000000000..c5e7c0cf655 --- /dev/null +++ b/ydb/library/actors/interconnect/rdma/cq_actor/ya.make @@ -0,0 +1,32 @@ +LIBRARY() + +IF (OS_LINUX) + + SRCS( + cq_actor.cpp + ) + + PEERDIR( + contrib/libs/ibdrv + contrib/libs/protobuf + ydb/library/actors/core + ydb/library/actors/protos + ydb/library/actors/util + ) + +ELSE() + + SRCS( + cq_actor_dummy.cpp + ) + + PEERDIR( + contrib/libs/protobuf + ydb/library/actors/core + ydb/library/actors/protos + ydb/library/actors/util + ) + +ENDIF() + +END() diff --git a/ydb/library/actors/interconnect/rdma/ut/utils.cpp b/ydb/library/actors/interconnect/rdma/ut/utils.cpp index 747ad9c75b1..26bbb27f21a 100644 --- a/ydb/library/actors/interconnect/rdma/ut/utils.cpp +++ b/ydb/library/actors/interconnect/rdma/ut/utils.cpp @@ -1,6 +1,5 @@ #include "utils.h" -#include <ydb/library/actors/interconnect/rdma/cq_actor.h> #include <ydb/library/actors/interconnect/rdma/ctx.h> #include <ydb/library/actors/interconnect/rdma/events.h> #include <ydb/library/actors/interconnect/rdma/link_manager.h> diff --git a/ydb/library/actors/interconnect/rdma/ut/utils.h b/ydb/library/actors/interconnect/rdma/ut/utils.h index 5cd659c7422..f14e1694f30 100644 --- a/ydb/library/actors/interconnect/rdma/ut/utils.h +++ b/ydb/library/actors/interconnect/rdma/ut/utils.h @@ -2,7 +2,7 @@ #include <library/cpp/testing/gtest/gtest.h> -#include <ydb/library/actors/interconnect/rdma/cq_actor.h> +#include <ydb/library/actors/interconnect/rdma/cq_actor/cq_actor.h> #include <ydb/library/actors/interconnect/rdma/mem_pool.h> #include <ydb/library/actors/interconnect/rdma/rdma.h> diff --git a/ydb/library/actors/interconnect/rdma/ut/ya.make b/ydb/library/actors/interconnect/rdma/ut/ya.make index ab3ad54bfba..a480c510f86 100644 --- a/ydb/library/actors/interconnect/rdma/ut/ya.make +++ b/ydb/library/actors/interconnect/rdma/ut/ya.make @@ -21,6 +21,7 @@ PEERDIR( ydb/library/actors/core ydb/library/actors/interconnect ydb/library/actors/interconnect/rdma + ydb/library/actors/interconnect/rdma/cq_actor ydb/library/actors/testlib ) diff --git a/ydb/library/actors/interconnect/rdma/ya.make b/ydb/library/actors/interconnect/rdma/ya.make index 4115feb901e..9090c599ab2 100644 --- a/ydb/library/actors/interconnect/rdma/ya.make +++ b/ydb/library/actors/interconnect/rdma/ya.make @@ -1,7 +1,6 @@ LIBRARY() SRCS( - cq_actor.cpp ctx.cpp ctx_open.cpp link_manager.cpp @@ -19,6 +18,10 @@ PEERDIR( END() +RECURSE( + cq_actor +) + RECURSE_FOR_TESTS( ut ) |
