Re: [PATCH v5 00/26] Generic `Allocator` support for Rust

Danilo Krummrich
2024-08-15T17:31:50Z

On 8/15/24 7:19 PM, Boqun Feng wrote:
> On Thu, Aug 15, 2024 at 04:52:42AM +0200, Danilo Krummrich wrote:
>> On Wed, Aug 14, 2024 at 12:32:15PM -0700, Boqun Feng wrote:
>>> Hi Danilo,
>>>
>>> I'm trying to put your series on rust-dev, but I hit a few conflicts due
>>> to the conflict with `Box::drop_contents`, which has been in rust-dev
>>> for a while. And the conflict is not that trivial for me to resolve.
>>> So just a head-up, that's a requirement for me to put it on rust-dev for
>>> more tests from my end ;-)
>>
>> I rebased everything and you can fetch them from [1].
>>
>
> Thanks! I will take a look later today or tomorrow.

I'll also send a v6 soon, which will also be based on rust-dev, so can also
take this one then.

>
>> I resolved the following conflicts:
>>
>> - for `Box`, implement
>> - `drop_contents`
>> - `manually_drop_contents` [2]
>> - ``move_out` [2]
>
> Have you considered naming this `into_inner` which is aligned to std
> `Box`?

Seems viable too. I can rename it.

>
> Regards,
> Boqun
>
>> - `BorrowedMut` for `ForeignOwnable` for `Box<T, A>` and `Pin<Box<T, A>>`
>> - `InPlaceWrite` and updated `InPlaceInit`
>> - for `RBTreeNode`, make use of `Box::move_out` to replace the original
>> implementation partially moving out of `Box`
>>
>> @Alice: Please have a look at the changes for `RBTreeNode`. Maybe it's also
>> worth having them in a separate patch.
>>
>> - Danilo
>>
>>
>> [1] https://git.kernel.org/pub/scm/linux/kernel/git/dakr/linux.git/log/?h=rust-dev/mm
>> [2] https://git.kernel.org/pub/scm/linux/kernel/git/dakr/linux.git/commit/?h=rust-dev/mm&id=ef80ccca2ccebf3c7bcafdc13d1bfe81341cbe63
>> [3] https://git.kernel.org/pub/scm/linux/kernel/git/dakr/linux.git/diff/rust/kernel/rbtree.rs?h=rust-dev/mm&id=c361d66df7fb7760064fbca6bf9d72171c352a73
>>
>>>
>>> Regards,
>>> Boqun
>