From 0ff47fbdac6e13c706117c3e6c227f77ee093150 Mon Sep 17 00:00:00 2001 From: Mathias Agopian Date: Fri, 20 Aug 2010 11:47:44 -0700 Subject: [PATCH] only set the PRIV_FLAGS_NEEDS_FLUSH flag on PMEM buffers PRIV_FLAGS_NEEDS_FLUSH will trigger an ioctl call into the PMEM driver in unlock(), so it makes not sense to set this flag for non pmem buffers. Change-Id: Ie1e077c10df86d3689b82fa6ce5d6c856fc95688 --- libgralloc-qsd8k/mapper.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/libgralloc-qsd8k/mapper.cpp b/libgralloc-qsd8k/mapper.cpp index e8be6f6..26fadbc 100644 --- a/libgralloc-qsd8k/mapper.cpp +++ b/libgralloc-qsd8k/mapper.cpp @@ -238,8 +238,14 @@ int gralloc_lock(gralloc_module_t const* module, // if requesting sw write for non-framebuffer handles, flag for // flushing at unlock + + const uint32_t pmemMask = + private_handle_t::PRIV_FLAGS_USES_PMEM | + private_handle_t::PRIV_FLAGS_USES_PMEM_ADSP; + if ((usage & GRALLOC_USAGE_SW_WRITE_MASK) && - !(hnd->flags & private_handle_t::PRIV_FLAGS_FRAMEBUFFER)) { + (hnd->flags & pmemMask) && + !(hnd->flags & private_handle_t::PRIV_FLAGS_FRAMEBUFFER)) { hnd->flags |= private_handle_t::PRIV_FLAGS_NEEDS_FLUSH; }