diff options
author | Devin Moore <devinmoore@google.com> | 2021-01-25 18:20:54 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2021-01-25 18:20:54 +0000 |
commit | 1f00c21c28715bc102138561b9218aaa088589bd (patch) | |
tree | 97f8513604705b33d7c8994337d6f4d030302f0b /tests/msgq/1.0/default/TestMsgQ.cpp | |
parent | ec203cf2fb69167c4d6829d7060fa253ca9ce900 (diff) | |
parent | 17365e56a26fbc10aba10e7e0141d0c4f4937614 (diff) |
Merge "Use NativeHandle in MQDescriptor instead of ParcelFileDescriptor"
Diffstat (limited to 'tests/msgq/1.0/default/TestMsgQ.cpp')
-rw-r--r-- | tests/msgq/1.0/default/TestMsgQ.cpp | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/tests/msgq/1.0/default/TestMsgQ.cpp b/tests/msgq/1.0/default/TestMsgQ.cpp index 44737378b3..4726ffe5e9 100644 --- a/tests/msgq/1.0/default/TestMsgQ.cpp +++ b/tests/msgq/1.0/default/TestMsgQ.cpp @@ -41,10 +41,19 @@ Return<bool> TestMsgQ::configureFmqSyncReadWrite( return true; } -Return<void> TestMsgQ::getFmqUnsyncWrite(bool configureFmq, getFmqUnsyncWrite_cb _hidl_cb) { +Return<void> TestMsgQ::getFmqUnsyncWrite(bool configureFmq, bool userFd, + getFmqUnsyncWrite_cb _hidl_cb) { if (configureFmq) { static constexpr size_t kNumElementsInQueue = 1024; - mFmqUnsynchronized.reset(new (std::nothrow) MessageQueueUnsync(kNumElementsInQueue)); + static constexpr size_t kElementSizeBytes = sizeof(int32_t); + android::base::unique_fd ringbufferFd; + if (userFd) { + ringbufferFd.reset( + ::ashmem_create_region("UnsyncWrite", kNumElementsInQueue * kElementSizeBytes)); + } + mFmqUnsynchronized.reset(new (std::nothrow) MessageQueueUnsync( + kNumElementsInQueue, false, std::move(ringbufferFd), + kNumElementsInQueue * kElementSizeBytes)); } if ((mFmqUnsynchronized == nullptr) || (mFmqUnsynchronized->isValid() == false)) { |