mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-16 02:14:58 +00:00
delay: Fix ndelay() spuriously treated as udelay()
A recent rework on delay functions wrongly ended up calling __udelay() instead of __ndelay() for nanosecond delays, increasing those by 1000. As a result hangs have been observed on boot Restore the right function calls. Fixes: 19e2d91d8cb1 ("delay: Rework udelay and ndelay") Reported-by: Chen-Yu Tsai <wenst@chromium.org> Signed-off-by: Frederic Weisbecker <frederic@kernel.org> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Tested-by: Chen-Yu Tsai <wenst@chromium.org> Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> Reviewed-by: Chen-Yu Tsai <wenst@chromium.org> Link: https://lore.kernel.org/all/20241121152931.51884-1-frederic@kernel.org
This commit is contained in:
parent
f5807b0606
commit
4d17c25eaf
@ -75,11 +75,11 @@ static __always_inline void ndelay(unsigned long nsec)
|
||||
{
|
||||
if (__builtin_constant_p(nsec)) {
|
||||
if (nsec >= DELAY_CONST_MAX)
|
||||
__bad_udelay();
|
||||
__bad_ndelay();
|
||||
else
|
||||
__const_udelay(nsec * NDELAY_CONST_MULT);
|
||||
} else {
|
||||
__udelay(nsec);
|
||||
__ndelay(nsec);
|
||||
}
|
||||
}
|
||||
#define ndelay(x) ndelay(x)
|
||||
|
Loading…
x
Reference in New Issue
Block a user