On Wed, Apr 3, 2019 at 11:30 AM Matthias Kaehlcke <m...@chromium.org> wrote: > The worker is owned by this driver and supposedly we know what we are > doing. Changing a member in the struct after calling complete() would > likely be a bug anyway (though not necessarily a fatal one).
The work_struct is owned by the driver, but the *worker* is not. If we haven't ensured the worker is totally done with the work_struct, then we should not be freeing the struct. (i.e., we should not return from the context where it was stack-allocated.) Anyway, I think we've all agreed that this should be changed, Brian