On 2/10/22 14:42, Julia Lawall wrote:
Platform_driver probe functions aren't called with locks held and thus don't need GFP_ATOMIC. Use GFP_KERNEL instead.
Problem found with Coccinelle.
Thanks Julia, indeed it's the only case where GFP_ATOMIC is used for machine drivers.
This was already present in the initial Android driver from Intel (2013) [1] and missed in the multiple passes to get this upstream.
Acked-by: Pierre-Louis Bossart pierre-louis.bossart@linux.intel.com
[1] https://github.com/lenovo-yt2-dev/android_kernel_lenovo_baytrail/blob/cm-12....
Signed-off-by: Julia Lawall Julia.Lawall@inria.fr
sound/soc/intel/boards/bytcr_wm5102.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sound/soc/intel/boards/bytcr_wm5102.c b/sound/soc/intel/boards/bytcr_wm5102.c index 504ef4cab111..8d8e96e3cd2d 100644 --- a/sound/soc/intel/boards/bytcr_wm5102.c +++ b/sound/soc/intel/boards/bytcr_wm5102.c @@ -389,7 +389,7 @@ static int snd_byt_wm5102_mc_probe(struct platform_device *pdev) bool sof_parent; int ret;
- priv = devm_kzalloc(dev, sizeof(*priv), GFP_ATOMIC);
- priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL); if (!priv) return -ENOMEM;