Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

power: supply: ab8500: Remove flush_scheduled_work() call.

It seems to me that ab8500 driver is using dedicated workqueues and
is not calling schedule{,_delayed}_work{,_on}(). Then, there will be
no work to flush using flush_scheduled_work().

Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.com>

authored by

Tetsuo Handa and committed by
Sebastian Reichel
a1124c84 13a4223d

-5
-1
drivers/power/supply/ab8500_btemp.c
··· 697 697 698 698 /* Delete the work queue */ 699 699 destroy_workqueue(di->btemp_wq); 700 - flush_scheduled_work(); 701 700 } 702 701 703 702 static const struct component_ops ab8500_btemp_component_ops = {
-1
drivers/power/supply/ab8500_chargalg.c
··· 1769 1769 1770 1770 /* Delete the work queue */ 1771 1771 destroy_workqueue(di->chargalg_wq); 1772 - flush_scheduled_work(); 1773 1772 } 1774 1773 1775 1774 static const struct component_ops ab8500_chargalg_component_ops = {
-2
drivers/power/supply/ab8500_charger.c
··· 3377 3377 /* Delete the work queue */ 3378 3378 destroy_workqueue(di->charger_wq); 3379 3379 3380 - flush_scheduled_work(); 3381 - 3382 3380 /* Unbind fg, btemp, algorithm */ 3383 3381 component_unbind_all(dev, di); 3384 3382 }
-1
drivers/power/supply/ab8500_fg.c
··· 3227 3227 struct ab8500_fg *di = platform_get_drvdata(pdev); 3228 3228 3229 3229 destroy_workqueue(di->fg_wq); 3230 - flush_scheduled_work(); 3231 3230 component_del(&pdev->dev, &ab8500_fg_component_ops); 3232 3231 list_del(&di->node); 3233 3232 ab8500_fg_sysfs_exit(di);