[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: aufs vs. m68k conflict, please advice



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/  |


Reply to: