TEE and OP-TEE fixes for v5.16 - Fixes a race when a tee_shm reaches reference count 0 and is about to be teared down - Fixes an incorrect page free bug in an error path of the OP-TEE shared memory pool handling - Suppresses a false positive kmemleak report when allocating driver private shared memory buffers for OP-TEE * tag 'fixes-for-v5.16' of https://git.linaro.org/people/jens.wiklander/linux-tee: optee: Suppress false positive kmemleak report in optee_handle_rpc() tee: optee: Fix incorrect page free bug tee: handle lookup of shm with reference count 0
Showing the changes to include (1 of 4 files). Show all
Unified · Split
| @@ -195,7 +195,7 @@ int tee_session_calc_client_uuid(uuid_t *uuid, u32 connection_method, · 194 unmodified lines | |||
| 195 | * @offset: offset of buffer in user space | 195 | * @offset: offset of buffer in user space |
| 196 | * @pages: locked pages from userspace | 196 | * @pages: locked pages from userspace |
| 197 | * @num_pages: number of locked pages | 197 | * @num_pages: number of locked pages |
| 198 | * @dmabuf: dmabuf used to for exporting to user space | 198 | * @refcount: reference counter |
| 199 | * @flags: defined by TEE_SHM_* in tee_drv.h | 199 | * @flags: defined by TEE_SHM_* in tee_drv.h |
| 200 | * @id: unique id of a shared memory object on this device, shared | 200 | * @id: unique id of a shared memory object on this device, shared |
| 201 | * with user space | 201 | * with user space |
| @@ -214,7 +214,7 @@ struct tee_shm { · 12 unmodified lines | |||
| 214 | unsigned int offset; | 214 | unsigned int offset; |
| 215 | struct page **pages; | 215 | struct page **pages; |
| 216 | size_t num_pages; | 216 | size_t num_pages; |
| 217 | struct dma_buf *dmabuf; | 217 | refcount_t refcount; |
| 218 | u32 flags; | 218 | u32 flags; |
| 219 | int id; | 219 | int id; |
| 220 | u64 sec_world_id; | 220 | u64 sec_world_id; |