ARM: clps711x: serial driver hungs are a result of call disable_irq within ISR
authorAlexander Shiyan <shc_work@mail.ru>
Tue, 27 Mar 2012 08:22:49 +0000 (12:22 +0400)
committerBen Hutchings <ben@decadent.org.uk>
Fri, 11 May 2012 12:13:50 +0000 (13:13 +0100)
commit4bbc6c95aa832cc52517d6aa7c0b9848ff6cb9bc
tree3e8d4d25d5a6fbd74855a47aded1ca507b7d35da
parent79e4f41d995c273e972563387ecadb746448c2a1
ARM: clps711x: serial driver hungs are a result of call disable_irq within ISR

commit 7a6fbc9a887193a1e9f8658703881c528040afbc upstream.

Since 2.6.30-rc1 clps711x serial driver hungs system. This is a result
of call disable_irq from ISR. synchronize_irq waits for end of interrupt
and goes to infinite loop. This patch fix this problem.

Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
drivers/tty/serial/clps711x.c