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@xxxxxxxxxxxxxxx> [1] https://github.com/lenovo-yt2-dev/android_kernel_lenovo_baytrail/blob/cm-12.1/sound/soc/intel/board/byt_bl_wm5102.c > > Signed-off-by: Julia Lawall <Julia.Lawall@xxxxxxxx> > > --- > 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; > >