See commit message for rust binder commit for details.
Signed-off-by: Alice Ryhl <aliceryhl@google.com>
---
Changes in v6:
- Fix rebase mixups.
- Include benchmark in commit message.
- Link to v5: https://lore.kernel.org/r/20251112-binder-bitmap-v5-0-8b9d7c7eca82@google.com
Changes in v5:
- Rename NO_ALLOC_MAX_LEN to MAX_INLINE_LEN.
- Update all uses of MAX_LEN/MAX_INLINE_LEN to reference the new
constants.
- Link to v4: https://lore.kernel.org/r/20251110-binder-bitmap-v4-0-5ed8a7fab1b9@google.com
Changes in v4:
- Keep existing IdPool constructor (renamed to with_capacity).
- Undo docs changes that were due to the removal of the existing IdPool
constructor.
- List id < pool.map.len() as invariant for UnusedId and mention it in
as_u32() comment.
- Fix [`acquire`] docs links.
- Link to v3: https://lore.kernel.org/r/20251028-binder-bitmap-v3-0-32822d4b3207@google.com
Changes in v3:
- Also update documentation to fix compile errors.
- Use new_inline() instead of new_small().
- Reword commit message of "rust: id_pool: do not supply starting capacity"
- Change UnusedId::acquire() to return usize.
- Link to v2: https://lore.kernel.org/r/20251021-binder-bitmap-v2-0-e652d172c62b@google.com
Changes in v2:
- Use id_pool.
- Link to v1: https://lore.kernel.org/r/20251020-binder-bitmap-v1-0-879bec9cddc1@google.com
---
Alice Ryhl (6):
rust: bitmap: add MAX_LEN and MAX_INLINE_LEN constants
rust: bitmap: add BitmapVec::new_inline()
rust: id_pool: rename IdPool::new() to with_capacity()
rust: id_pool: do not supply starting capacity
rust: id_pool: do not immediately acquire new ids
rust_binder: use bitmap for allocation of handles
drivers/android/binder/process.rs | 64 +++++++++++++-----
rust/kernel/bitmap.rs | 43 ++++++++----
rust/kernel/id_pool.rs | 139 ++++++++++++++++++++++++++++----------
3 files changed, 180 insertions(+), 66 deletions(-)
---
base-commit: 211ddde0823f1442e4ad052a2f30f050145ccada
change-id: 20251007-binder-bitmap-5aa0d966fb1f
Best regards,
--
Alice Ryhl <aliceryhl@google.com>