On 2/4/25 3:17 AM, Alice Ryhl wrote: > On Mon, Feb 3, 2025 at 3:17 PM Asahi Lina <lina@xxxxxxxxxxxxx> wrote: >> >> >> >> On 2/3/25 6:13 PM, Alice Ryhl wrote: >>> On Sun, Feb 2, 2025 at 2:06 PM Asahi Lina <lina@xxxxxxxxxxxxx> wrote: >>>> + /// Consumes the `Owned`, returning a raw pointer. >>>> + /// >>>> + /// This function does not actually relinquish ownership of the object. >>>> + /// After calling this function, the caller is responsible for ownership previously managed >>>> + /// by the `Owned`. >>>> + #[allow(dead_code)] >>>> + pub(crate) fn into_raw(me: Self) -> NonNull<T> { >>> >>> I would just make these methods public, like the ARef ones. Then you >>> can drop the #[allow(dead_code)] annotation. >> >> Does it make sense to ever have drivers doing this? I feel like these >> methods should be limited to the kernel crate. > > Not having drivers use this is the ideal, but I don't think we should > always expect it to be possible. The Binder driver has a C component > for the binderfs component, and it also has some code that's > essentially an abstraction inside the driver that I was asked to move > into Binder because it's so specific to Binder that it's not useful > for anyone else. That's fair, I'll make it pub. ~~ Lina