From 70b9a15df00a42b319279d903bf5923564920e3b Mon Sep 17 00:00:00 2001 From: Martijn Coenen Date: Fri, 18 Nov 2016 15:29:32 +0100 Subject: [PATCH] Use newly introduced hidl_handle. Bug: 32089785 Test: builds Change-Id: I27c7d3945e1fe390661bf322987011a00fe9b3fe --- audio/2.0/default/Device.cpp | 2 +- audio/2.0/default/Device.h | 2 +- audio/2.0/default/PrimaryDevice.cpp | 2 +- audio/2.0/default/PrimaryDevice.h | 2 +- audio/2.0/default/Stream.cpp | 2 +- audio/2.0/default/Stream.h | 2 +- audio/2.0/default/StreamIn.cpp | 2 +- audio/2.0/default/StreamIn.h | 2 +- audio/2.0/default/StreamOut.cpp | 2 +- audio/2.0/default/StreamOut.h | 2 +- audio/effect/2.0/default/EffectsFactory.cpp | 2 +- audio/effect/2.0/default/EffectsFactory.h | 2 +- graphics/composer/2.1/default/Hwc.cpp | 68 +++++++++++---------- tests/bar/1.0/default/Bar.cpp | 4 +- tests/bar/1.0/default/Bar.h | 2 +- tests/foo/1.0/default/Foo.cpp | 2 +- 16 files changed, 52 insertions(+), 48 deletions(-) diff --git a/audio/2.0/default/Device.cpp b/audio/2.0/default/Device.cpp index 05824c7fc5..339f371763 100644 --- a/audio/2.0/default/Device.cpp +++ b/audio/2.0/default/Device.cpp @@ -520,7 +520,7 @@ Return Device::setParameters(const hidl_vec& parameters) return setParametersImpl(parameters); } -Return Device::debugDump(const native_handle_t* fd) { +Return Device::debugDump(const hidl_handle& fd) { if (fd->numFds == 1) { analyzeStatus("dump", mDevice->dump(mDevice, fd->data[0])); } diff --git a/audio/2.0/default/Device.h b/audio/2.0/default/Device.h index d7b31287e7..3fd67e39b7 100644 --- a/audio/2.0/default/Device.h +++ b/audio/2.0/default/Device.h @@ -102,7 +102,7 @@ struct Device : public IDevice, public ParametersUtil { Return getParameters( const hidl_vec& keys, getParameters_cb _hidl_cb) override; Return setParameters(const hidl_vec& parameters) override; - Return debugDump(const native_handle_t* fd) override; + Return debugDump(const hidl_handle& fd) override; // Utility methods for extending interfaces. Result analyzeStatus(const char* funcName, int status); diff --git a/audio/2.0/default/PrimaryDevice.cpp b/audio/2.0/default/PrimaryDevice.cpp index 9f5180cebb..a8aa5ecd8a 100644 --- a/audio/2.0/default/PrimaryDevice.cpp +++ b/audio/2.0/default/PrimaryDevice.cpp @@ -119,7 +119,7 @@ Return PrimaryDevice::setParameters(const hidl_vec& para return mDevice->setParameters(parameters); } -Return PrimaryDevice::debugDump(const native_handle_t* fd) { +Return PrimaryDevice::debugDump(const hidl_handle& fd) { return mDevice->debugDump(fd); } diff --git a/audio/2.0/default/PrimaryDevice.h b/audio/2.0/default/PrimaryDevice.h index 4c5b590efa..968c208d52 100644 --- a/audio/2.0/default/PrimaryDevice.h +++ b/audio/2.0/default/PrimaryDevice.h @@ -88,7 +88,7 @@ struct PrimaryDevice : public IPrimaryDevice { Return getParameters( const hidl_vec& keys, getParameters_cb _hidl_cb) override; Return setParameters(const hidl_vec& parameters) override; - Return debugDump(const native_handle_t* fd) override; + Return debugDump(const hidl_handle& fd) override; // Methods from ::android::hardware::audio::V2_0::IPrimaryDevice follow. Return setVoiceVolume(float volume) override; diff --git a/audio/2.0/default/Stream.cpp b/audio/2.0/default/Stream.cpp index 7616becc9b..6d68f551e7 100644 --- a/audio/2.0/default/Stream.cpp +++ b/audio/2.0/default/Stream.cpp @@ -222,7 +222,7 @@ Return Stream::setParameters(const hidl_vec& parameters) return setParametersImpl(parameters); } -Return Stream::debugDump(const native_handle_t* fd) { +Return Stream::debugDump(const hidl_handle& fd) { if (fd->numFds == 1) { analyzeStatus("dump", mStream->dump(mStream, fd->data[0])); } diff --git a/audio/2.0/default/Stream.h b/audio/2.0/default/Stream.h index f28fbff0dc..3893af44f5 100644 --- a/audio/2.0/default/Stream.h +++ b/audio/2.0/default/Stream.h @@ -70,7 +70,7 @@ struct Stream : public IStream, public ParametersUtil { Return getParameters( const hidl_vec& keys, getParameters_cb _hidl_cb) override; Return setParameters(const hidl_vec& parameters) override; - Return debugDump(const native_handle_t* fd) override; + Return debugDump(const hidl_handle& fd) override; // Utility methods for extending interfaces. Result analyzeStatus(const char* funcName, int status); diff --git a/audio/2.0/default/StreamIn.cpp b/audio/2.0/default/StreamIn.cpp index b590d1a2e9..791e519483 100644 --- a/audio/2.0/default/StreamIn.cpp +++ b/audio/2.0/default/StreamIn.cpp @@ -126,7 +126,7 @@ Return StreamIn::setParameters(const hidl_vec& parameter return mStreamCommon->setParameters(parameters); } -Return StreamIn::debugDump(const native_handle_t* fd) { +Return StreamIn::debugDump(const hidl_handle& fd) { return mStreamCommon->debugDump(fd); } diff --git a/audio/2.0/default/StreamIn.h b/audio/2.0/default/StreamIn.h index 83f620cdbb..c2a7ea2bdd 100644 --- a/audio/2.0/default/StreamIn.h +++ b/audio/2.0/default/StreamIn.h @@ -72,7 +72,7 @@ struct StreamIn : public IStreamIn { Return getParameters( const hidl_vec& keys, getParameters_cb _hidl_cb) override; Return setParameters(const hidl_vec& parameters) override; - Return debugDump(const native_handle_t* fd) override; + Return debugDump(const hidl_handle& fd) override; // Methods from ::android::hardware::audio::V2_0::IStreamIn follow. Return getAudioSource(getAudioSource_cb _hidl_cb) override; diff --git a/audio/2.0/default/StreamOut.cpp b/audio/2.0/default/StreamOut.cpp index 34bae29cc2..21062565b2 100644 --- a/audio/2.0/default/StreamOut.cpp +++ b/audio/2.0/default/StreamOut.cpp @@ -128,7 +128,7 @@ Return StreamOut::setParameters(const hidl_vec& paramete return mStreamCommon->setParameters(parameters); } -Return StreamOut::debugDump(const native_handle_t* fd) { +Return StreamOut::debugDump(const hidl_handle& fd) { return mStreamCommon->debugDump(fd); } diff --git a/audio/2.0/default/StreamOut.h b/audio/2.0/default/StreamOut.h index 51b7df800b..ca33b2dc84 100644 --- a/audio/2.0/default/StreamOut.h +++ b/audio/2.0/default/StreamOut.h @@ -74,7 +74,7 @@ struct StreamOut : public IStreamOut { Return getParameters( const hidl_vec& keys, getParameters_cb _hidl_cb) override; Return setParameters(const hidl_vec& parameters) override; - Return debugDump(const native_handle_t* fd) override; + Return debugDump(const hidl_handle& fd) override; // Methods from ::android::hardware::audio::V2_0::IStreamOut follow. Return getLatency() override; diff --git a/audio/effect/2.0/default/EffectsFactory.cpp b/audio/effect/2.0/default/EffectsFactory.cpp index 30fcb26722..2b5d70ba2b 100644 --- a/audio/effect/2.0/default/EffectsFactory.cpp +++ b/audio/effect/2.0/default/EffectsFactory.cpp @@ -182,7 +182,7 @@ Return EffectsFactory::createEffect( return Void(); } -Return EffectsFactory::debugDump(const native_handle_t* fd) { +Return EffectsFactory::debugDump(const hidl_handle& fd) { if (fd->numFds == 1) { EffectDumpEffects(fd->data[0]); } diff --git a/audio/effect/2.0/default/EffectsFactory.h b/audio/effect/2.0/default/EffectsFactory.h index 229356f170..d934c93bfd 100644 --- a/audio/effect/2.0/default/EffectsFactory.h +++ b/audio/effect/2.0/default/EffectsFactory.h @@ -47,7 +47,7 @@ struct EffectsFactory : public IEffectsFactory { Return getDescriptor(const Uuid& uid, getDescriptor_cb _hidl_cb) override; Return createEffect( const Uuid& uid, int32_t session, int32_t ioHandle, createEffect_cb _hidl_cb) override; - Return debugDump(const native_handle_t* fd) override; + Return debugDump(const hidl_handle& fd) override; private: static sp dispatchEffectInstanceCreation( diff --git a/graphics/composer/2.1/default/Hwc.cpp b/graphics/composer/2.1/default/Hwc.cpp index 7fa511974f..36c6e54b95 100644 --- a/graphics/composer/2.1/default/Hwc.cpp +++ b/graphics/composer/2.1/default/Hwc.cpp @@ -318,15 +318,15 @@ public: presentDisplay_cb hidl_cb) override; Return setActiveConfig(Display display, Config config) override; Return setClientTarget(Display display, - const native_handle_t* target, - const native_handle_t* acquireFence, + const hidl_handle& target, + const hidl_handle& acquireFence, Dataspace dataspace, const hidl_vec& damage) override; Return setColorMode(Display display, ColorMode mode) override; Return setColorTransform(Display display, const hidl_vec& matrix, ColorTransform hint) override; Return setOutputBuffer(Display display, - const native_handle_t* buffer, - const native_handle_t* releaseFence) override; + const hidl_handle& buffer, + const hidl_handle& releaseFence) override; Return setPowerMode(Display display, PowerMode mode) override; Return setVsyncEnabled(Display display, Vsync enabled) override; Return validateDisplay(Display display, @@ -334,8 +334,8 @@ public: Return setCursorPosition(Display display, Layer layer, int32_t x, int32_t y) override; Return setLayerBuffer(Display display, - Layer layer, const native_handle_t* buffer, - const native_handle_t* acquireFence) override; + Layer layer, const hidl_handle& buffer, + const hidl_handle& acquireFence) override; Return setLayerSurfaceDamage(Display display, Layer layer, const hidl_vec& damage) override; Return setLayerBlendMode(Display display, @@ -351,7 +351,7 @@ public: Return setLayerPlaneAlpha(Display display, Layer layer, float alpha) override; Return setLayerSidebandStream(Display display, - Layer layer, const native_handle_t* stream) override; + Layer layer, const hidl_handle& stream) override; Return setLayerSourceCrop(Display display, Layer layer, const FRect& crop) override; Return setLayerTransform(Display display, @@ -1027,17 +1027,18 @@ Return HwcHal::setActiveConfig(Display display, Config config) } Return HwcHal::setClientTarget(Display display, - const native_handle_t* target, - const native_handle_t* acquireFence, + const hidl_handle& target, + const hidl_handle& acquireFence, Dataspace dataspace, const hidl_vec& damage) { - if (!sHandleImporter.importBuffer(target)) { + const native_handle_t* targetHandle = target.getNativeHandle(); + if (!sHandleImporter.importBuffer(targetHandle)) { return Error::NO_RESOURCES; } int32_t fence; if (!sHandleImporter.importFence(acquireFence, fence)) { - sHandleImporter.freeBuffer(target); + sHandleImporter.freeBuffer(targetHandle); return Error::NO_RESOURCES; } @@ -1045,13 +1046,13 @@ Return HwcHal::setClientTarget(Display display, reinterpret_cast(&damage[0]) }; int32_t error = mDispatch.setClientTarget(mDevice, display, - target, fence, static_cast(dataspace), + targetHandle, fence, static_cast(dataspace), damage_region); if (error == HWC2_ERROR_NONE) { std::lock_guard lock(mDisplayMutex); auto dpy = mDisplays.find(display); - dpy->second.ClientTarget = target; + dpy->second.ClientTarget = targetHandle; } else { sHandleImporter.freeBuffer(target); sHandleImporter.closeFence(fence); @@ -1076,28 +1077,29 @@ Return HwcHal::setColorTransform(Display display, } Return HwcHal::setOutputBuffer(Display display, - const native_handle_t* buffer, - const native_handle_t* releaseFence) + const hidl_handle& buffer, + const hidl_handle& releaseFence) { - if (!sHandleImporter.importBuffer(buffer)) { + const native_handle_t* bufferHandle = buffer.getNativeHandle(); + if (!sHandleImporter.importBuffer(bufferHandle)) { return Error::NO_RESOURCES; } int32_t fence; if (!sHandleImporter.importFence(releaseFence, fence)) { - sHandleImporter.freeBuffer(buffer); + sHandleImporter.freeBuffer(bufferHandle); return Error::NO_RESOURCES; } int32_t error = mDispatch.setOutputBuffer(mDevice, - display, buffer, fence); + display, bufferHandle, fence); if (error == HWC2_ERROR_NONE) { std::lock_guard lock(mDisplayMutex); auto dpy = mDisplays.find(display); - dpy->second.OutputBuffer = buffer; + dpy->second.OutputBuffer = bufferHandle; } else { - sHandleImporter.freeBuffer(buffer); + sHandleImporter.freeBuffer(bufferHandle); } // unlike in setClientTarget, fence is owned by us and is always closed @@ -1142,28 +1144,29 @@ Return HwcHal::setCursorPosition(Display display, } Return HwcHal::setLayerBuffer(Display display, - Layer layer, const native_handle_t* buffer, - const native_handle_t* acquireFence) + Layer layer, const hidl_handle& buffer, + const hidl_handle& acquireFence) { - if (!sHandleImporter.importBuffer(buffer)) { + const native_handle_t* bufferHandle = buffer.getNativeHandle(); + if (!sHandleImporter.importBuffer(bufferHandle)) { return Error::NO_RESOURCES; } int32_t fence; if (!sHandleImporter.importFence(acquireFence, fence)) { - sHandleImporter.freeBuffer(buffer); + sHandleImporter.freeBuffer(bufferHandle); return Error::NO_RESOURCES; } int32_t error = mDispatch.setLayerBuffer(mDevice, - display, layer, buffer, fence); + display, layer, bufferHandle, fence); if (error == HWC2_ERROR_NONE) { std::lock_guard lock(mDisplayMutex); auto dpy = mDisplays.find(display); - dpy->second.LayerBuffers[layer] = buffer; + dpy->second.LayerBuffers[layer] = bufferHandle; } else { - sHandleImporter.freeBuffer(buffer); + sHandleImporter.freeBuffer(bufferHandle); sHandleImporter.closeFence(fence); } @@ -1230,21 +1233,22 @@ Return HwcHal::setLayerPlaneAlpha(Display display, } Return HwcHal::setLayerSidebandStream(Display display, - Layer layer, const native_handle_t* stream) + Layer layer, const hidl_handle& stream) { - if (!sHandleImporter.importBuffer(stream)) { + const native_handle_t* streamHandle = stream.getNativeHandle(); + if (!sHandleImporter.importBuffer(streamHandle)) { return Error::NO_RESOURCES; } int32_t error = mDispatch.setLayerSidebandStream(mDevice, - display, layer, stream); + display, layer, streamHandle); if (error == HWC2_ERROR_NONE) { std::lock_guard lock(mDisplayMutex); auto dpy = mDisplays.find(display); - dpy->second.LayerSidebandStreams[layer] = stream; + dpy->second.LayerSidebandStreams[layer] = streamHandle; } else { - sHandleImporter.freeBuffer(stream); + sHandleImporter.freeBuffer(streamHandle); } return static_cast(error); diff --git a/tests/bar/1.0/default/Bar.cpp b/tests/bar/1.0/default/Bar.cpp index 2158cd8722..c07e2fabdc 100644 --- a/tests/bar/1.0/default/Bar.cpp +++ b/tests/bar/1.0/default/Bar.cpp @@ -153,8 +153,8 @@ Return Bar::thisIsNew() { return Void(); } -Return Bar::expectNullHandle(const native_handle_t* h, const Abc& xyz, expectNullHandle_cb _hidl_cb) { - ALOGI("SERVER(Bar) h = %p, xyz.z = %p", h, static_cast(xyz.z)); +Return Bar::expectNullHandle(const hidl_handle& h, const Abc& xyz, expectNullHandle_cb _hidl_cb) { + ALOGI("SERVER(Bar) h = %p, xyz.z = %p", h.getNativeHandle(), xyz.z.getNativeHandle()); _hidl_cb(h == nullptr, xyz.z == nullptr); return Void(); } diff --git a/tests/bar/1.0/default/Bar.h b/tests/bar/1.0/default/Bar.h index 4e22b610cf..29eedec29c 100644 --- a/tests/bar/1.0/default/Bar.h +++ b/tests/bar/1.0/default/Bar.h @@ -64,7 +64,7 @@ struct Bar : public IBar { // Methods from ::android::hardware::tests::bar::V1_0::IBar follow. Return thisIsNew() override; - Return expectNullHandle(const native_handle_t* h, const Abc& xyz, expectNullHandle_cb _hidl_cb) override; + Return expectNullHandle(const hidl_handle& h, const Abc& xyz, expectNullHandle_cb _hidl_cb) override; private: sp mFoo; diff --git a/tests/foo/1.0/default/Foo.cpp b/tests/foo/1.0/default/Foo.cpp index f7cc7c0a43..a1df3b28ad 100644 --- a/tests/foo/1.0/default/Foo.cpp +++ b/tests/foo/1.0/default/Foo.cpp @@ -309,7 +309,7 @@ Return Foo::createMyHandle(createMyHandle_cb _hidl_cb) { } Return Foo::createHandles(uint32_t size, createHandles_cb _hidl_cb) { - hidl_vec handles; + hidl_vec handles; handles.resize(size); for(uint32_t i = 0; i < size; ++i) { createMyHandle([&](const MyHandle& h) {