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] [day] [month] [year] [list]
Message-ID: <10f740e80903251251x33cd3e05gcf03e41e0aaf6308@mail.gmail.com>
Date:	Wed, 25 Mar 2009 20:51:27 +0100
From:	Geert Uytterhoeven <geert@...ux-m68k.org>
To:	Thomas Gleixner <tglx@...utronix.de>
Cc:	LKML <linux-kernel@...r.kernel.org>,
	Andrew Morton <akpm@...ux-foundation.org>,
	Ingo Molnar <mingo@...e.hu>,
	Peter Zijlstra <peterz@...radead.org>,
	Arjan van de Veen <arjan@...radead.org>,
	Steven Rostedt <rostedt@...dmis.org>,
	Jon Masters <jonathan@...masters.org>,
	linux-next@...r.kernel.org
Subject: Re: [patch 1/4] genirq: make irqreturn_t an enum

On Thu, Feb 26, 2009 at 14:28, Thomas Gleixner <tglx@...utronix.de> wrote:
> Impact: cleanup
>
> Remove the 2.4 compabiliy cruft

> --- linux-2.6-tip.orig/include/linux/irqreturn.h
> +++ linux-2.6-tip/include/linux/irqreturn.h
> @@ -1,25 +1,17 @@
> -/* irqreturn.h */
>  #ifndef _LINUX_IRQRETURN_H
>  #define _LINUX_IRQRETURN_H
>
> -/*
> - * For 2.4.x compatibility, 2.4.x can use
> - *
> - *     typedef void irqreturn_t;
> - *     #define IRQ_NONE
> - *     #define IRQ_HANDLED
> - *     #define IRQ_RETVAL(x)
> - *
> - * To mix old-style and new-style irq handler returns.
> - *
> - * IRQ_NONE means we didn't handle it.
> - * IRQ_HANDLED means that we did have a valid interrupt and handled it.
> - * IRQ_RETVAL(x) selects on the two depending on x being non-zero (for handled)
> +/**
> + * enum irqreturn
> + * @IRQ_NONE           interrupt was not from this device
> + * @IRQ_HANDLED                interrupt was handled by this device
>  */
> -typedef int irqreturn_t;
> +enum irqreturn {
> +       IRQ_NONE,
> +       IRQ_HANDLED,
> +};
>
> -#define IRQ_NONE       (0)
> -#define IRQ_HANDLED    (1)
> -#define IRQ_RETVAL(x)  ((x) != 0)
> +typedef enum irqreturn irqreturn_t;
> +#define IRQ_RETVAL(x)  ((x) != IRQ_NONE)

JFYI, this causes the following warning in linux-next on m68k:

| arch/m68k/kernel/ints.c:231: warning: assignment from incompatible
pointer type

(cfr. http://kisskb.ellerman.id.au/kisskb/buildresult/271602/)

as struct irq_node in arch/m68k/include/asm/irq_mm.h still has a
`int (*handler)(int, void *);'.

I'll cook a patch, but there may be other users hidden somewhere in
arch-specific code...

Gr{oetje,eeting}s,

						Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@...ux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
							    -- Linus Torvalds
--
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