[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20170106192027.GA756@kmp-mobile.hq.kempniu.pl>
Date: Fri, 6 Jan 2017 20:20:27 +0100
From: Michał Kępień <kernel@...pniu.pl>
To: Johannes Berg <johannes@...solutions.net>
Cc: "David S . Miller" <davem@...emloft.net>,
Михаил Кринкин
<krinkin.m.u@...il.com>, linux-wireless@...r.kernel.org,
netdev@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v4] rfkill: Add rfkill-any LED trigger
> On Fri, 2017-01-06 at 07:07 +0100, Michał Kępień wrote:
> > Add a new "global" (i.e. not per-rfkill device) LED trigger, rfkill-
> > any,
> > which may be useful on laptops with a single "radio LED" and multiple
> > radio transmitters. The trigger is meant to turn a LED on whenever
> > there is at least one radio transmitter active and turn it off
> > otherwise.
> >
> > Signed-off-by: Michał Kępień <kernel@...pniu.pl>
> > ---
> > Changes from v3:
> >
> > - Revert introducing a new bitfield and instead defer LED event
> > firing
> > to a work queue to prevent conditional locking and ensure the
> > trigger can really be used from any context. This also voids the
> > need to take rfkill_global_mutex before calling
> > rfkill_set_block()
> > in rfkill_resume().
>
> Looks better, but
>
> > +static struct work_struct rfkill_any_work;
>
> At least on module exit you need to cancel this work.
It is cancelled in rfkill_any_led_trigger_unregister(). It seemed
fitting to do it this way as rfkill_any_work is initialized in
rfkill_any_led_trigger_register(). And if CONFIG_RFKILL_LEDS=n,
rfkill_any_work is neither initialized nor scheduled, so we should be
good as well. Am I missing something?
--
Best regards,
Michał Kępień
Powered by blists - more mailing lists