Skip to content
  • Jia-Ju Bai's avatar
    usb: isp1760: Replace mdelay with msleep in isp1760_init_core · 0f029008
    Jia-Ju Bai authored
    
    
    isp1760_init_core() is never called in atomic context.
    
    The call chains ending up at isp1760_init_core() are:
    [1] isp1760_init_core() <- isp1760_register() <- isp1760_plat_probe()
    [2] isp1760_init_core() <- isp1760_register() <- isp1761_pci_probe()
    
    isp1760_plat_probe() is set as ".probe" in struct platform_driver.
    isp1761_pci_probe() is set as ".probe" in struct pci_driver.
    These functions are not called in atomic context.
    
    Despite never getting called from atomic context, isp1761_pci_probe()
    calls mdelay() to busily wait.
    This is not necessary and can be replaced with msleep() to
    avoid busy waiting.
    
    This is found by a static analysis tool named DCNS written by myself.
    And I also manually check it.
    
    Signed-off-by: default avatarJia-Ju Bai <baijiaju1990@gmail.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    0f029008