From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jacek Anaszewski Subject: Re: [PATCH] leds: avoid races with workqueue Date: Thu, 2 May 2019 21:28:06 +0200 Message-ID: <62a99fe8-5c61-c681-3f9d-54e0a27a63d2@gmail.com> References: <20190426214246.GA24966@amd> <84fac57d-1121-a1da-fb45-16a2521bdef9@gmail.com> <20190427193411.GA9709@amd> <2578a614-beb9-1c9d-9f74-208a8a7ab64f@gmail.com> <20190427223207.GA3585@amd> <20190429152259.GB10501@amd> <36e1fdd7-a220-4b0d-d558-829f522b0841@gmail.com> <20190501183600.GA20452@amd> <9337b5fb-0ff8-9925-29e6-a781884af861@gmail.com> <20190502191321.GB4845@amd> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <20190502191321.GB4845@amd> Content-Language: en-US List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: ibm-acpi-devel-bounces-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org To: Pavel Machek Cc: ibm-acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org, ibm-acpi-N3TV7GIv+o9fyO9Q7EP/yw@public.gmane.org, stable-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org, linux-leds-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, platform-driver-x86-u79uwXL29TY76Z2rM5mHXA@public.gmane.org List-Id: linux-leds@vger.kernel.org On 5/2/19 9:13 PM, Pavel Machek wrote: > Hi! > >>>>> +++ b/drivers/leds/led-class.c >>>>> @@ -57,6 +57,7 @@ static ssize_t brightness_store(struct device *dev, >>>>> if (state == LED_OFF) >>>>> led_trigger_remove(led_cdev); >>>>> led_set_brightness(led_cdev, state); >>>>> + flush_work(&led_cdev->set_brightness_work); >>>> >>>> Is this really required here? It creates non-uniform brightness >>>> setting behavior depending on whether it is set from sysfs or >>>> by in-kernel call to led_set_brightness(). >>> >>> This fixes the echo 0 > brightness; echo 1 > brightness. It has to be >>> at a place where we can sleep. >>> >>> If you have better idea, it is welcome, but it would be good to fix >>> the bug. >> >> Currently not, so I applied the patch in this shape. > > Thanks! > > This is actually something that makes sense for stable.. perhaps the > bots can pick it up. I was thinking of it, but finally decided to submit this patch to linux-stable when it will prove not having side effects. But if you think it is ready for stable then I can add relevant "Fixes" tag. Do you think that below will be an appropriate base to refer to? Fixes 1afcadfcd184 ("leds: core: Use set_brightness_work for the blocking op") ? -- Best regards, Jacek Anaszewski