diff options
author | Mohan Pallaka <mpallaka@codeaurora.org> | 2018-08-21 14:42:21 -0700 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2018-09-17 13:54:10 -0700 |
commit | 1ce3bea7a871ff420d083906b746479b3e000913 (patch) | |
tree | 61674a9f6c805e0e965b786805ba64ee36246a2c | |
parent | 0d0d8fb1dbac70212796bc3e4a93d3b936ac5101 (diff) | |
download | display-1ce3bea7a871ff420d083906b746479b3e000913.tar.gz |
Gralloc: Use 4 bytes padding for private_handle_t
Force 4 bytes padding to avoid data leak due to uninitialized padding.
Bug: 77237704
Change-Id: Ib45ef7e3751667f037465105209c491f0bf927a6
CRs-Fixed: 2257685
-rw-r--r-- | gralloc/gr_priv_handle.h | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/gralloc/gr_priv_handle.h b/gralloc/gr_priv_handle.h index 1eb03b81..d0681d78 100644 --- a/gralloc/gr_priv_handle.h +++ b/gralloc/gr_priv_handle.h @@ -33,6 +33,7 @@ typedef gralloc1_error_t (*GRALLOC1_PFN_PERFORM)(gralloc1_device_t *device, int #define PRIV_HANDLE_CONST(exp) static_cast<const private_handle_t *>(exp) +#pragma pack(push, 4) struct private_handle_t : public native_handle_t { enum { PRIV_FLAGS_FRAMEBUFFER = 0x00000001, @@ -74,15 +75,15 @@ struct private_handle_t : public native_handle_t { int format; int buffer_type; unsigned int layer_count; - uint64_t id __attribute__((aligned(8))); - uint64_t usage __attribute__((aligned(8))); + uint64_t id; + uint64_t usage; unsigned int size; unsigned int offset; unsigned int offset_metadata; - uint64_t base __attribute__((aligned(8))); - uint64_t base_metadata __attribute__((aligned(8))); - uint64_t gpuaddr __attribute__((aligned(8))); + uint64_t base; + uint64_t base_metadata; + uint64_t gpuaddr; static const int kNumFds = 2; static const int kMagic = 'gmsm'; @@ -172,5 +173,6 @@ struct private_handle_t : public native_handle_t { uint64_t GetBackingstore() const { return id; } }; +#pragma pack(pop) #endif // __GR_PRIV_HANDLE_H__ |