Commit Graph

8 Commits

Author SHA1 Message Date
Naseer Ahmed
378d858eaf gralloc1: Locking fixes
* Separate buffer lock and descriptor lock
* Add lock for allocation as we touch the handles_map

Change-Id: I2baf7a65f55b04f1bbbfbf78a19c0e288040fab7
CRs-Fixed: 2037173
2017-04-21 17:19:45 -04:00
Naseer Ahmed
4c0eec9ccb gralloc1: Refactor AllocateBuffer
Remove local function that passes the full set of arguments and
always use the BufferDescriptor function instead.

CRs-Fixed: 2025984
Change-Id: Ia27885ee57cd0a5a1643420c893042f90be588cd
2017-03-28 21:11:37 -04:00
Naseer Ahmed
3a9d53a1ac gralloc1: Import ion handle into registering process
Importing the ion handle when retain() is called validates the
incoming ion fd and holds the client process accountable for
releasing the handle once it's done.

CRs-Fixed: 2020175
Change-Id: I3a169983b6d6b201d044e1c777a631aa16f9cb9a
2017-03-20 12:19:54 -04:00
Naseer Ahmed
ef287dc13d gralloc1: Use handle as map key
The handle map is process local and the id may not be unique for
a given process

Bug: 36135145
CRs-Fixed: 2018333
Change-Id: Ic2bba13107787fd54121c978bff7e507eeb7dd64
2017-03-13 17:50:57 -04:00
Naseer Ahmed
dc918136ae gralloc1: Add Dump() in buffer manager
CRs-Fixed: 2016226
Change-Id: Ia09de175b6b0c837ae9d66deb6f08615a7cf6baa
2017-03-11 23:59:06 -05:00
Naseer Ahmed
e69031e9c7 gralloc1: Add remaining functionality
* Use private_0 flag
* Add some legacy flags to be used during transition
* Fix gralloc module version
* Adjust makefiles for gralloc1
* Add support for dump, num flex planes and lock flex.
* Use a unique ID for buffer descriptors
* Do not delete buffer handle, fix after verifying framework fix.
* Current gralloc1 clients do not conform to the lock() requirement
in the gralloc1 header. Tracked in b/33588773
* Add perform APIs to get the buffer size  and allocate a buffer
for use by SDM
* Fix reference counting
* Add a unique buffer ID
* Some cleanup in private_handle
* Create a wrapper class of private_handle to do refcounting
* Resolve implementation defined formats At allocation time, update buffer
descriptors to replace implementation defined formats with the ones we mean
to allocate
* Defer ion handle release
* Remove unused drm code.
* Add legacy constructor for private_handle_t used by some
clients

CRs-Fixed: 2007391
Change-Id: Ia9e816cec35ba45483a5b75d99f256325a010138
2017-02-17 09:19:23 -08:00
Ramkumar Radhakrishnan
ba55eac6ae libgralloc: Store unaligned buffer resolution in private handle.
Add unaligned_width and unaligned_height in private_handle_t to store
the buffer resolution without alignment that client asked to allocate.

Change-Id: I28d757af4178f581e6a83dc06198106c85fc7262
CRs-Fixed: 1040942
2016-09-08 15:15:49 -07:00
Prabhanjan Kandula
96e9234520 gralloc1 : initial implementation
Initial implementation of the gralloc1 APIs

Change-Id: I3b01595b0f9b30d9a08d02101fe42281556bd6a2
2016-05-11 00:49:41 +05:30