[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHp75VfQd9e4fLAYkYrMajnJfPQqno6s_aiTarErPiqP-Z6ydg@mail.gmail.com>
Date: Mon, 12 Feb 2024 11:53:49 +0200
From: Andy Shevchenko <andy.shevchenko@...il.com>
To: George Stark <gnstark@...utedevices.com>
Cc: pavel@....cz, vadimp@...dia.com, mpe@...erman.id.au, npiggin@...il.com,
christophe.leroy@...roup.eu, hdegoede@...hat.com, mazziesaccount@...il.com,
peterz@...radead.org, mingo@...hat.com, will@...nel.org, longman@...hat.com,
boqun.feng@...il.com, nikitos.tr@...il.com, linux-leds@...r.kernel.org,
linux-kernel@...r.kernel.org, linuxppc-dev@...ts.ozlabs.org,
Lee Jones <lee@...nel.org>, kernel@...utedevices.com
Subject: Re: [DMARC error][SPF error] Re: [PATCH v4 00/10] devm_led_classdev_register()
usage problem
On Mon, Feb 12, 2024 at 1:52 AM George Stark <gnstark@...utedevicescom> wrote:
> I haven't lose hope for the devm_mutex thing and keep pinging those guys
> from time to time.
I don't understand. According to v4 thread Christophe proposed on how
the patch should look like. What you need is to incorporate an updated
version into your series. Am I wrong?
> Sure I can single out the fix-only patch I'll do it tomorrow.
I believe it can be handled without issuing it separately. `b4` tool
is capable of selective choices. It was rather Q to Lee if he can/want
to apply it right away.
> On 2/9/24 20:11, Andy Shevchenko wrote:
> > On Thu, Dec 21, 2023 at 03:11:11PM +0000, Lee Jones wrote:
> >> On Thu, 14 Dec 2023, George Stark wrote:
> >>
> >>> This patch series fixes the problem of devm_led_classdev_register misusing.
> >>>
> >>> The basic problem is described in [1]. Shortly when devm_led_classdev_register()
> >>> is used then led_classdev_unregister() called after driver's remove() callback.
> >>> led_classdev_unregister() calls driver's brightness_set callback and that callback
> >>> may use resources which were destroyed already in driver's remove().
> >>>
> >>> After discussion with maintainers [2] [3] we decided:
> >>> 1) don't touch led subsytem core code and don't remove led_set_brightness() from it
> >>> but fix drivers
> >>> 2) don't use devm_led_classdev_unregister
> >>>
> >>> So the solution is to use devm wrappers for all resources
> >>> driver's brightness_set() depends on. And introduce dedicated devm wrapper
> >>> for mutex as it's often used resource.
> >>>
> >>> [1] https://lore.kernel.org/lkml/8704539b-ed3b-44e6-aa82-586e2f895e2b@salutedevices.com/T/
> >>> [2] https://lore.kernel.org/lkml/8704539b-ed3b-44e6-aa82-586e2f895e2b@salutedevices.com/T/#mc132b9b350fa51931b4fcfe14705d9f06e91421f
> >>> [3] https://lore.kernel.org/lkml/8704539b-ed3b-44e6-aa82-586e2f895e2b@salutedevices.com/T/#mdbf572a85c33f869a553caf986b6228bb65c8383
> >
> > ...
> >
> >> FYI: I'll conduct my review once the locking side is settled.
> >
> > To reduce burden can you apply the first one? It's a fix.
--
With Best Regards,
Andy Shevchenko
Powered by blists - more mailing lists