Re: uninline check_signature()

Geert Uytterhoeven
2007-07-17T20:31:58Z

On Tue, 17 Jul 2007, Linus Torvalds wrote:
> On Tue, 17 Jul 2007, Geert Uytterhoeven wrote:
> > M68k uses I/O memory for all I/O (hence it sets CONFIG_HAS_IOMEM), but
> > many m68k machines don't have PCI or ISA (hence it doesn't set
> > CONFIG_PCI resp. CONFIG_ISA).
>
> It doesn't matter whether the machine has PCI or ISA. The only thing that
> matters is whether the thing compiles (which in turn depends on whether it
> has "readb()", which in turn is what HAS_IOMEM is all about).
>
> So I do think that HAS_IOMEM is the right thing here.

Good, I guess then either I'll have to do something similar to what ARM does:

| #elif !defined(readb)
|
| #define readb(c) (__readwrite_bug("readb"),0)
| #define readw(c) (__readwrite_bug("readw"),0)
| #define readl(c) (__readwrite_bug("readl"),0)
| #define writeb(v,c) __readwrite_bug("writeb")
| #define writew(v,c) __readwrite_bug("writew")
| #define writel(v,c) __readwrite_bug("writel")
|
| #define check_signature(io,sig,len) (0)
|
| #endif /* __mem_pci */

(but use the real BUG() instead, I don't think the above will still
compile now check_signature() is out-of-line)

And we'll all live with a check_signature() in our kernel, which is used
only by a few legacy drivers that depend on ISA || PCI...

OR I'll have to disable HAS_IOMEM on m68k, and invent a new Kconfig
symbol for lots of other stuff that currently depends on HAS_IOMEM...

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-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