amba-pl011: fix panic introduced by "clear pending interrupts"
PATCH 1/1 amba-pl011: fix panic introduced by "clear pending interrupts"
patch 9b96fba, currently in linux-next, clears interrupts using uap->port.membase that has not been assigned. My x86 system, that uses a pci-to-amba bridge, panics with a message like:
BUG: unable to handle kernel NULL pointer dereference at 00000038 IP: [<c12c85ed>] pl011_probe+0x119/0x303
--- drivers/tty/serial/amba-pl011.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)
drivers/tty/serial/amba-pl011.c +2 -2
@@ -1947,8 +1947,8 @@ static int pl011_probe(struct amba_device *dev, const struct amba_id *id) }/* Ensure interrupts from this UART are masked and cleared */ -writew (0 , uap->port.membase +UART011_IMSC ); -writew (0xffff , uap->port.membase +UART011_ICR ); +writew (0 , base +UART011_IMSC ); +writew (0xffff , base +UART011_ICR ); uap->vendor = vendor; uap->lcrh_rx = vendor->lcrh_rx;
Signature · 1 line
1.7.7.2
Quoted 9 lines · Alessandro Rubini
patch 9b96fba, currently in linux-next, clears interrupts using
uap->port.membasethat has not been assigned. ?My x86 system, that uses a pci-to-amba bridge, panics with a message like:? BUG: unable to handle kernel NULL pointer dereference at 00000038 ? IP: [<
c12c85ed>]pl011_probe+0x119/0x303Signed-off-by Alessandro Rubini <[email protected]>
Yep I know, already sent the remedy, just waiting for Greg to pick it up:
http://marc.info/?l=linux-serial&m=133235774423240&w=2
But thanks for the quick attention :-)
Yours,
Linus Walleij
Hello.
Quoted 1 line · Alessandro Rubini
patch 9b96fba, currently in linux-next, clears interrupts using
Please also specify the summary of this commit in parens.
Quoted 8 lines
uap->port.membasethat has not been assigned. My x86 system, that uses a pci-to-amba bridge, panics with a message like:BUG: unable to handle kernel NULL pointer dereference at 00000038 IP: [<c12c85ed>] pl011_probe+0x119/0x303Signed-off-by Alessandro Rubini<[email protected]>Acked-by Giancarlo Asnaghi<[email protected]>
WBR, Sergei