On Tue May 19, 2026 at 11:39 AM BST, Danilo Krummrich wrote:
> On Tue May 19, 2026 at 9:56 AM CEST, Eliot Courtney wrote:
>> For example, in the next patch on the sample aux driver you can do:
>>
>> ```
>> let data = adev.registration_data::<ForLt!(for<'a> Data<'static>)>()?;
>> let pdev: &'static pci::Device<Bound> = data.parent;
>> ```
>>
>> and mint a 'static reference to a bound device, which seems unsound to
>> me.
>
> Good catch, I applied the fix.
>
> Additionally, we could probably reject unused lifetime binders in the ForLt!()
> macro, which doesn't help when used with a type alias, but may be a good
> defensive measure anyway.

That won't work, `ForLt!(T)` is basically not using the lifetime binder, and you
do need that to work.

Best,
Gary

>
>> What about requiring all device ids declared to be supported by an aux
>> bus driver to have the same rust registration data type?
>
> Please see [1] and [2].
>
> Thanks,
> Danilo
>
> [1] https://lore.kernel.org/driver-core/[email protected]/
> [2] https://lore.kernel.org/driver-core/[email protected]/

Reply via email to