Re: [PATCH v3 0/3] drivers: base: Add tests showing devm handling inconsistencies

From: Greg Kroah-Hartman
Date: Sat Aug 12 2023 - 07:07:26 EST


On Mon, Aug 07, 2023 at 08:54:08AM +0200, Maxime Ripard wrote:
> Hi,
>
> On Fri, Aug 04, 2023 at 05:01:50PM +0200, Greg Kroah-Hartman wrote:
> > On Mon, Jul 31, 2023 at 09:28:47AM +0200, Greg Kroah-Hartman wrote:
> > > On Mon, Jul 31, 2023 at 08:34:03AM +0200, Maxime Ripard wrote:
> > > > On Thu, Jul 20, 2023 at 02:45:06PM +0200, Maxime Ripard wrote:
> > > > > Hi,
> > > > >
> > > > > This follows the discussion here:
> > > > > https://lore.kernel.org/linux-kselftest/20230324123157.bbwvfq4gsxnlnfwb@houat/
> > > > >
> > > > > This shows a couple of inconsistencies with regard to how device-managed
> > > > > resources are cleaned up. Basically, devm resources will only be cleaned up
> > > > > if the device is attached to a bus and bound to a driver. Failing any of
> > > > > these cases, a call to device_unregister will not end up in the devm
> > > > > resources being released.
> > > > >
> > > > > We had to work around it in DRM to provide helpers to create a device for
> > > > > kunit tests, but the current discussion around creating similar, generic,
> > > > > helpers for kunit resumed interest in fixing this.
> > > > >
> > > > > This can be tested using the command:
> > > > > ./tools/testing/kunit/kunit.py run --kunitconfig=drivers/base/test/
> > > > >
> > > > > I added the fix David suggested back in that discussion which does fix
> > > > > the tests. The SoB is missing, since David didn't provide it back then.
> > > > >
> > > > > Let me know what you think,
> > > > > Maxime
> > > > >
> > > > > Signed-off-by: Maxime Ripard <mripard@xxxxxxxxxx>
> > > >
> > > > Ping?
> > >
> > > It's in my review queue, still trying to catch up...
> >
> > I didn't make it here this week, sorry.
>
> np, I just don't want that patch to disappear into the ether :)
>
> > I kind of worry about encoding the current "odd" functionality in a
> > test as being the correct thing, but will look at it closer next week.
>
> I don't think I'm doing that? The tests we've added are all how we think
> it should behave, the broken ones being skipped to avoid any failures.
>
> The last patch drops the kunit_skip() to make sure that it's tested
> going forward.
>
> So we shouldn't encode the odd behaviour anywhere in this series, unless
> I got you wrong?

No you are correct, I was mis-remembering things.

This looks good, thanks for sticking with it, all now applied to my
tree.

greg k-h