Re: linux-next: Tree for May 14

From: Geert Uytterhoeven
Date: Thu May 15 2008 - 03:17:41 EST


On Thu, 15 May 2008, Tony Breeds wrote:
> On Thu, May 15, 2008 at 07:04:47AM +1000, Tony Breeds wrote:
> > On Wed, May 14, 2008 at 01:50:08PM -0700, Randy Dunlap wrote:
> >
> > > Ugh. Can you please make the log file more readable?
> > >
> > > Or is a problem with my browser (firefox)?
> >
> > It's a raw download, save it as a file and then view it (or look at the
> > source).

That's what I did....

> FWIW the error in question is:
> Using /scratch1/tony/next as source for kernel
> GEN /scratch1/tony/next_out/Makefile
> CHK include/linux/version.h
> CHK include/linux/utsrelease.h
> CALL /scratch1/tony/next/scripts/checksyscalls.sh
> CHK include/linux/compile.h
> CC [M] drivers/net/zorro8390.o
> In file included from /scratch1/tony/next/drivers/net/zorro8390.c:47:
> /scratch1/tony/next/drivers/net/lib8390.c: In function 'ei_tx_err':
> /scratch1/tony/next/drivers/net/lib8390.c:556: error: 'ei_local' undeclared (first use in this function)
> /scratch1/tony/next/drivers/net/lib8390.c:556: error: (Each undeclared identifier is reported only once
> /scratch1/tony/next/drivers/net/lib8390.c:556: error: for each function it appears in.)
> /scratch1/tony/next/drivers/net/lib8390.c: In function 'ei_rx_overrun':
> /scratch1/tony/next/drivers/net/lib8390.c:823: error: 'ei_local' undeclared (first use in this function)
> make[3]: *** [drivers/net/zorro8390.o] Error 1
> make[2]: *** [drivers/net] Error 2
> make[1]: *** [drivers] Error 2
> make: *** [sub-make] Error 2

Wow, did you really get all of this from that webpage??

> It was introduced by 3f8cb098859bbea29d7b3765a3102e4a6bf81b85
> (drivers/net/lib8390: fix warning, trim trailing whitespace)
>
> The problem is that ei_inb_p() is using various #defines (from
> drivers/net/8390.h) that use EI_SHIFT, which in the zorro8390 case uses
> ei_local. Since zorro8390 is only build for m68k, guard the definition of

Thanks for chasing this down!

> ei_local with CONFIG_M68K

Technically, it could also happen on PPC (APUS), but all APUS support got
removed a few months ago.
So maybe CONFIG_ZORRO is more appropriate?

(CONFIG_ZORRO8390 || CONFIG_ZORRO8390_MODULE is probably frowned upon?)

> The patch below fixes the zorro8390 build, and I think will keep the warnings
> that Jeff is trying to silence silenced.
>
> Signed-off-by: Tony Breeds <tony@xxxxxxxxxxxxxxxxxx>
>
> ---
>
> drivers/net/lib8390.c | 6 ++++++
> 1 files changed, 6 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/net/lib8390.c b/drivers/net/lib8390.c
> index ed49527..a3d04a1 100644
> --- a/drivers/net/lib8390.c
> +++ b/drivers/net/lib8390.c
> @@ -553,6 +553,9 @@ static void __ei_poll(struct net_device *dev)
> static void ei_tx_err(struct net_device *dev)
> {
> unsigned long e8390_base = dev->base_addr;
> +#ifdef CONFIG_M68K
> + struct ei_device *ei_local = (struct ei_device *) netdev_priv(dev);
> +#endif
> unsigned char txsr = ei_inb_p(e8390_base+EN0_TSR);
> unsigned char tx_was_aborted = txsr & (ENTSR_ABT+ENTSR_FU);
>
> @@ -815,6 +818,9 @@ static void ei_rx_overrun(struct net_device *dev)
> {
> unsigned long e8390_base = dev->base_addr;
> unsigned char was_txing, must_resend = 0;
> +#ifdef CONFIG_M68K
> + struct ei_device *ei_local = (struct ei_device *) netdev_priv(dev);
> +#endif
>
> /*
> * Record whether a Tx was in progress and then issue the

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx

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@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/