goldfish: fix kernel panic when using multiple adb connection
When using multiple adb on 64 bit kernel to transfer data, the goldfish pipe interrupt will crash the kernel. Signed-off-by: Jun Tian <jun.j.tian@intel.com> Signed-off-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
49a75c444f
commit
25c72c786c
@ -469,6 +469,9 @@ static irqreturn_t goldfish_pipe_interrupt(int irq, void *dev_id)
|
|||||||
|
|
||||||
#ifdef CONFIG_64BIT
|
#ifdef CONFIG_64BIT
|
||||||
channel = (u64)readl(dev->base + PIPE_REG_CHANNEL_HIGH) << 32;
|
channel = (u64)readl(dev->base + PIPE_REG_CHANNEL_HIGH) << 32;
|
||||||
|
|
||||||
|
if (channel == 0)
|
||||||
|
break;
|
||||||
#endif
|
#endif
|
||||||
channel |= readl(dev->base + PIPE_REG_CHANNEL);
|
channel |= readl(dev->base + PIPE_REG_CHANNEL);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user