On Mon, Mar 17, 2025 at 7:34 AM Alice Ryhl <aliceryhl@xxxxxxxxxx> wrote: > > On Fri, Mar 07, 2025 at 04:58:49PM -0500, Tamir Duberstein wrote: > > Implement `HasWork::work_container_of` in `impl_has_work!`, narrowing > > the interface of `HasWork` and replacing pointer arithmetic with > > `container_of!`. Remove the provided implementation of > > `HasWork::get_work_offset` without replacement; an implementation is > > already generated in `impl_has_work!`. Remove the `Self: Sized` bound on > > `HasWork::work_container_of` which was apparently necessary to access > > `OFFSET` as `OFFSET` no longer exists. > > > > A similar API change was discussed on the hrtimer series[1]. > > > > Link: https://lore.kernel.org/all/20250224-hrtimer-v3-v6-12-rc2-v9-1-5bd3bf0ce6cc@xxxxxxxxxx/ [1] > > Signed-off-by: Tamir Duberstein <tamird@xxxxxxxxx> > > Overall looks good to me, but please CC the WORKQUEUE maintainers on the > next version. > > Reviewed-by: Alice Ryhl <aliceryhl@xxxxxxxxxx> > > Rust Binder still builds with this change: > > Tested-by: Alice Ryhl <aliceryhl@xxxxxxxxxx> > > > - where > > - Self: Sized, > > I did have trait object support in mind when I wrote these abstractions, > but I don't actually need it and I don't think I actually got it working > with trait objects. > > Alice Thanks! Does there need to be another version? No changes have been requested.