lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  PHC 
Open Source and information security mailing list archives
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 4 Oct 2010 11:39:02 +0300 (EEST)
From:	Meelis Roos <>
To:	David Miller <>
Subject: Re: [PATCH] tms380tr: fix long delays in initialization

> > tms380tr driver tries to use udelay (meaning busy loop) for several half 
> > second delays during hardware initialization. Crazy overly long busy 
> > wait delays mean no delay at all so driver initialization fails without 
> > waiting. Fix it by using msleep() for long delays and leave it to 
> > udelay() for short delays.
> > 
> > Signed-off-by: Meelis Roos <>
> You can't use msleep() here because this code can be invoked
> from interrupts and thus cannot sleep.

I checked these two functions that contain long delays that I changed - 
tms380tr_bringup_diags() and tms380tr_init_adapter() - to be called only 
from tms380tr_chipset_init() that is only called from tms380tr_open() so 
no call paths from interrupts AFAICS. Short delyas from interrupt 
context are not changed in any way, they still use udelay().

Meelis Roos (
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to
More majordomo info at

Powered by blists - more mailing lists