Re: aufs vs. m68k conflict, please advice

Uwe Kleine-König
2011-12-17T18:49:18Z

On Sat, Dec 17, 2011 at 02:28:35PM +0000, Thorsten Glaser wrote:
> Ben Hutchings dixit:
>
> >why other architectures get away with it. Maybe they just don't use
> >pr_*() in headers.
>
> Maybe something like this?
>
> #define ack_bad_irq(irq) do { \
> pr_crit("unexpected IRQ trap at vector %02x\n", \
> (unsigned int)(irq)); \
> } while (/* CONSTCOND */ 0)
>
> This would defer pr_crit expansion to when the static inline
> function was actually used.
>
> Just an idea of the moment,
IMHO the problem is that aufs provides an incomplete definition of
pr_fmt. Either it should define AUFS_NAME on the commandline, too, or
should define pr_fmt in an aufs header (or a .c file) #included after
all other headers and only when AUFS_NAME is defined, too.

The ugly thing about aufs' pr_fmt being already there when ack_bad_irq
is defined is, that the message printed by the pr_crit suddenly looks
aufs specific which it clearly isn't. So it should better make sure that
the definition isn't available to ack_bad_irq.

Best regards
Uwe

--
Pengutronix e.K. | Uwe Kleine-König |
Industrial Linux Solutions | http://www.pengutronix.de/ |