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
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 20 Nov 2006 16:28:03 +0300
From:	Sergei Shtylyov <sshtylyov@...mvista.com>
To:	Stefan Roese <ml@...fan-roese.de>
Cc:	linux-kernel@...r.kernel.org, linuxppc-embedded@...abs.org
Subject: Re: [PATCH] serial: Use real irq on UART0 (IRQ = 0) on PPC4xx systems

Hello.

Stefan Roese wrote:
> This patch fixes a problem seen on multiple 4xx platforms, where
> the UART0 interrupt number is 0. The macro "is_real_interrupt" lead
> on those systems to not use an real interrupt but the timer based
> implementation.

> This problem was detected and fixed by
> Charles Gales <cgales@...c.com> and John Baxter <jbaxter@...c.com>
> from AMCC.

> Signed-off-by: Stefan Roese <sr@...x.de>

> ---
> commit f83094acd3258575c9a5cdb1d65e241c16eff03a
> tree 72582c5eeb2a9c8ea57287616d51e42fff8ed641
> parent f56f68c4e1977f0e884a304af4c617bed4909417
> author Stefan Roese <sr@...x.de> Sat, 18 Nov 2006 10:28:50 +0100
> committer Stefan Roese <sr@...x.de> Sat, 18 Nov 2006 10:28:50 +0100

>  drivers/serial/8250.c |   22 ++++++++++++++--------
>  1 files changed, 14 insertions(+), 8 deletions(-)

> diff --git a/drivers/serial/8250.c b/drivers/serial/8250.c
> index e34bd03..a51679e 100644
> --- a/drivers/serial/8250.c
> +++ b/drivers/serial/8250.c
> @@ -76,8 +76,14 @@ static unsigned int nr_uarts = CONFIG_SE
>   * We default to IRQ0 for the "no irq" hack.   Some
>   * machine types want others as well - they're free
>   * to redefine this in their header file.
> + * NOTE:  Some PPC4xx use IRQ0 for a UART Interrupt, so
> + * we will assume that the IRQ is always real
>   */
> +#ifdef CONFIG_4xx
> +#define is_real_interrupt(irq)	(1)
> +#else
>  #define is_real_interrupt(irq)	((irq) != 0)
> +#endif

    This should have been done in <asm/serial.h> instead, like this:

#undef is_real_interrupt(irq)
#define is_real_interrupt(irq)	1

    Not too smart as well,but at least this wasy you won't be pulluting the 
generic code...

WBR, Sergei
-
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

Powered by Openwall GNU/*/Linux Powered by OpenVZ