lists.openwall.net | 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 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Thu, 19 Apr 2012 14:09:01 -0700 From: Greg KH <gregkh@...uxfoundation.org> To: linux-kernel@...r.kernel.org, stable@...r.kernel.org Cc: torvalds@...ux-foundation.org, akpm@...ux-foundation.org, alan@...rguk.ukuu.org.uk, Shreshtha Kumar Sahu <shreshthakumar.sahu@...ricsson.com>, Russell King <linux@....linux.org.uk>, Nicolas Pitre <nico@...xnic.net>, Viresh Kumar <viresh.kumar@...com>, Linus Walleij <linus.walleij@...aro.org>, Grant Likely <grant.likely@...retlab.ca> Subject: [ 43/68] serial: PL011: move interrupt clearing 3.2-stable review patch. If anyone has any objections, please let me know. ------------------ From: Linus Walleij <linus.walleij@...aro.org> commit c3d8b76f61586714cdc5f219ba45592a54caaa55 upstream. Commit 360f748b204275229f8398cb2f9f53955db1503b "serial: PL011: clear pending interrupts" attempts to clear interrupts by writing to a yet-unassigned memory address. This fixes the issue. The breaking patch is marked for stable so should be carried along with the other patch. Cc: Shreshtha Kumar Sahu <shreshthakumar.sahu@...ricsson.com> Cc: Russell King <linux@....linux.org.uk> Cc: Nicolas Pitre <nico@...xnic.net> Reported-by: Viresh Kumar <viresh.kumar@...com> Signed-off-by: Linus Walleij <linus.walleij@...aro.org> Tested-by: Grant Likely <grant.likely@...retlab.ca> Signed-off-by: Greg Kroah-Hartman <gregkh@...uxfoundation.org> --- drivers/tty/serial/amba-pl011.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) --- a/drivers/tty/serial/amba-pl011.c +++ b/drivers/tty/serial/amba-pl011.c @@ -1919,10 +1919,6 @@ static int pl011_probe(struct amba_devic goto unmap; } - /* Ensure interrupts from this UART are masked and cleared */ - writew(0, uap->port.membase + UART011_IMSC); - writew(0xffff, uap->port.membase + UART011_ICR); - uap->vendor = vendor; uap->lcrh_rx = vendor->lcrh_rx; uap->lcrh_tx = vendor->lcrh_tx; @@ -1939,6 +1935,10 @@ static int pl011_probe(struct amba_devic uap->port.line = i; pl011_dma_probe(uap); + /* Ensure interrupts from this UART are masked and cleared */ + writew(0, uap->port.membase + UART011_IMSC); + writew(0xffff, uap->port.membase + UART011_ICR); + snprintf(uap->type, sizeof(uap->type), "PL011 rev%u", amba_rev(dev)); amba_ports[i] = uap; -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists