• Jia-Ju Bai's avatar
    ALSA: ad1889: Replace mdelay with usleep_range in snd_ad1889_ac97_ready · 1fa350b6
    Jia-Ju Bai authored
    snd_ad1889_ac97_ready() is never called in atomic context.
    
    The call chain ending up at snd_ad1889_ac97_ready() is:
    [1] snd_ad1889_ac97_ready() <- snd_ad1889_ac97_xinit() <-
    	snd_ad1889_ac97_init() <- snd_ad1889_probe()
    
    snd_ad1889_probe() is only set as ".probe" in struct pci_driver.
    This function is not called in atomic context.
    
    Despite never getting called from atomic context, snd_ad1889_ac97_ready()
    calls mdelay for busy wait.
    This is not necessary and can be replaced with usleep_range to
    avoid busy waiting.
    
    This is found by a static analysis tool named DCNS written by myself.
    Signed-off-by: default avatarJia-Ju Bai <baijiaju1990@gmail.com>
    Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
    1fa350b6
ad1889.c 26 KB