netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: linux-next: Tree for May 14
       [not found]     ` <20080514210447.GK20457@bakeyournoodle.com>
@ 2008-05-15  1:05       ` Tony Breeds
  2008-05-15  7:17         ` Geert Uytterhoeven
  0 siblings, 1 reply; 6+ messages in thread
From: Tony Breeds @ 2008-05-15  1:05 UTC (permalink / raw)
  To: Randy Dunlap
  Cc: Geert Uytterhoeven, Stephen Rothwell, linux-next, LKML,
	Jeff Garzik, David Miller, netdev

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).

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

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
ei_local with CONFIG_M68K

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@bakeyournoodle.com>

---

 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

Yours Tony

  linux.conf.au    http://www.marchsouth.org/
  Jan 19 - 24 2009 The Australian Linux Technical Conference!


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: linux-next: Tree for May 14
  2008-05-15  1:05       ` linux-next: Tree for May 14 Tony Breeds
@ 2008-05-15  7:17         ` Geert Uytterhoeven
  2008-05-15  7:23           ` Stephen Rothwell
  2008-05-16  2:10           ` Tony Breeds
  0 siblings, 2 replies; 6+ messages in thread
From: Geert Uytterhoeven @ 2008-05-15  7:17 UTC (permalink / raw)
  To: Tony Breeds
  Cc: Randy Dunlap, Stephen Rothwell, linux-next, LKML, Jeff Garzik,
	David Miller, netdev, Linux/m68k

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@bakeyournoodle.com>
> 
> ---
> 
>  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@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

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: linux-next: Tree for May 14
  2008-05-15  7:17         ` Geert Uytterhoeven
@ 2008-05-15  7:23           ` Stephen Rothwell
  2008-05-16  2:10           ` Tony Breeds
  1 sibling, 0 replies; 6+ messages in thread
From: Stephen Rothwell @ 2008-05-15  7:23 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: Tony Breeds, Randy Dunlap, linux-next, LKML, Jeff Garzik,
	David Miller, netdev, Linux/m68k

[-- Attachment #1: Type: text/plain, Size: 839 bytes --]

Hi Geert,

On Thu, 15 May 2008 09:17:15 +0200 (CEST) Geert Uytterhoeven <geert@linux-m68k.org> wrote:
>
> Wow, did you really get all of this from that webpage??

No, he didn't.  He reran the build by hand.  Sorry, but there appears to
a bug somewhere in our build system (or one of the tools it is using)
that very occasionally loses a line of the log.  We are trying to track
it down.

> > The patch below fixes the zorro8390 build, and I think will keep the warnings
> > that Jeff is trying to silence silenced.

I have applied this patch to today's linux-next, so that this particular
bug will not prevent the m68k builds.  I am hoping someone will pick it
up (or an equivalent patch) so I can drop it again.

-- 
Cheers,
Stephen Rothwell                    sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: linux-next: Tree for May 14
  2008-05-15  7:17         ` Geert Uytterhoeven
  2008-05-15  7:23           ` Stephen Rothwell
@ 2008-05-16  2:10           ` Tony Breeds
  2008-05-16  7:12             ` Geert Uytterhoeven
  1 sibling, 1 reply; 6+ messages in thread
From: Tony Breeds @ 2008-05-16  2:10 UTC (permalink / raw)
  To: Geert Uytterhoeven
  Cc: Randy Dunlap, Stephen Rothwell, linux-next, LKML, Jeff Garzik,
	David Miller, netdev, Linux/m68k

On Thu, May 15, 2008 at 09:17:15AM +0200, Geert Uytterhoeven wrote:
 
> Wow, did you really get all of this from that webpage??

Sorry no.  I ran the build again ... mmm cross compilers :)

> Thanks for chasing this down!

np.
 
> 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?

Well as it turns out it can happen in a few other plcaes (the same error
is visible on sh aswell:
	http://kisskb.ellerman.id.au/kisskb/buildresult/27769/ )

Below is a new fix. Thoughts?.

From: Tony Breeds <tony@bakeyournoodle.com>
Subject: [PATCH] Fix various 8390 builds

The commit 3f8cb098859bbea29d7b3765a3102e4a6bf81b85
(drivers/net/lib8390: fix warning, trim trailing whitespace) removed
ei_local from ei_tx_err() and ei_rx_overrun() resulting in the following
build errors on m68k and sh:

  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:
drivers/net/lib8390.c: In function 'ei_tx_err':
drivers/net/lib8390.c:556: error: 'ei_local' undeclared (first use in this function)
drivers/net/lib8390.c:556: error: (Each undeclared identifier is reported only once
drivers/net/lib8390.c:556: error: for each function it appears in.)
drivers/net/lib8390.c: In function 'ei_rx_overrun':
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

The problem is that ei_inb_p() is using various #defines (from
drivers/net/8390.h) that use EI_SHIFT, which in some drivers on some
architectures use ei_local.  Tag ei_local as "__maybe_unused" to keep it
around and keep the warnings the original commit is trying to silence
... silenced.

Signed-off-by: Tony Breeds <tony@bakeyournoodle.com>
---
 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..fb00268 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;
+	/* ei_local is used on some platforms via the EI_SHIFT macro */
+	struct ei_device *ei_local __maybe_unused =
+		(struct ei_device *) netdev_priv(dev);
 	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;
+	/* ei_local is used on some platforms via the EI_SHIFT macro */
+	struct ei_device *ei_local __maybe_unused =
+		(struct ei_device *) netdev_priv(dev);
 
 	/*
 	 * Record whether a Tx was in progress and then issue the
-- 
1.5.5.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: linux-next: Tree for May 14
  2008-05-16  2:10           ` Tony Breeds
@ 2008-05-16  7:12             ` Geert Uytterhoeven
  2008-05-19  5:03               ` [PATCH v3] Fix various 8390 builds Tony Breeds
  0 siblings, 1 reply; 6+ messages in thread
From: Geert Uytterhoeven @ 2008-05-16  7:12 UTC (permalink / raw)
  To: Tony Breeds
  Cc: Randy Dunlap, Stephen Rothwell, linux-next, LKML, Jeff Garzik,
	David Miller, netdev, Linux/m68k

On Fri, 16 May 2008, Tony Breeds wrote:
> On Thu, May 15, 2008 at 09:17:15AM +0200, Geert Uytterhoeven wrote:
> > 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?
> 
> Well as it turns out it can happen in a few other plcaes (the same error
> is visible on sh aswell:
> 	http://kisskb.ellerman.id.au/kisskb/buildresult/27769/ )
> 
> Below is a new fix. Thoughts?.

Looks OK to me!

> --- 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;
> +	/* ei_local is used on some platforms via the EI_SHIFT macro */
> +	struct ei_device *ei_local __maybe_unused =
> +		(struct ei_device *) netdev_priv(dev);
                ^^^^^^^^^^^^^^^^^^^^
But please don't reintroduce the casts. netdev_priv() returns a void *.

>  	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;
> +	/* ei_local is used on some platforms via the EI_SHIFT macro */
> +	struct ei_device *ei_local __maybe_unused =
> +		(struct ei_device *) netdev_priv(dev);
                ^^^^^^^^^^^^^^^^^^^^
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

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH v3] Fix various 8390 builds
  2008-05-16  7:12             ` Geert Uytterhoeven
@ 2008-05-19  5:03               ` Tony Breeds
  0 siblings, 0 replies; 6+ messages in thread
From: Tony Breeds @ 2008-05-19  5:03 UTC (permalink / raw)
  To: David Miller, Jeff Garzik, Stephen Rothwell
  Cc: Geert Uytterhoeven, Randy Dunlap, linux-next, LKML, netdev,
	Linux/m68k

The commit 3f8cb098859bbea29d7b3765a3102e4a6bf81b85
(drivers/net/lib8390: fix warning, trim trailing whitespace) removed
ei_local from ei_tx_err() and ei_rx_overrun() resulting in the following
build errors on m68k and sh:

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:
drivers/net/lib8390.c: In function 'ei_tx_err':
drivers/net/lib8390.c:556: error: 'ei_local' undeclared (first use in this function)
drivers/net/lib8390.c:556: error: (Each undeclared identifier is reported only once
drivers/net/lib8390.c:556: error: for each function it appears in.)
drivers/net/lib8390.c: In function 'ei_rx_overrun':
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

The problem is that ei_inb_p() is using various #defines (from
drivers/net/8390.h) that use EI_SHIFT, which in some drivers on some
architectures use ei_local.  Tag ei_local as "__maybe_unused" to keep it
around and keep the warnings the original commit is trying to silence
... silenced.

Signed-off-by: Tony Breeds <tony@bakeyournoodle.com>
---
Updated to remove pointless casts

 drivers/net/lib8390.c |    4 ++++
 1 file changed, 4 insertions(+)

 Dave, Jeff can one of you take this?


diff --git a/drivers/net/lib8390.c b/drivers/net/lib8390.c
index ed49527..00d59ab 100644
--- a/drivers/net/lib8390.c
+++ b/drivers/net/lib8390.c
@@ -553,6 +553,8 @@ static void __ei_poll(struct net_device *dev)
 static void ei_tx_err(struct net_device *dev)
 {
 	unsigned long e8390_base = dev->base_addr;
+	/* ei_local is used on some platforms via the EI_SHIFT macro */
+	struct ei_device *ei_local __maybe_unused = netdev_priv(dev);
 	unsigned char txsr = ei_inb_p(e8390_base+EN0_TSR);
 	unsigned char tx_was_aborted = txsr & (ENTSR_ABT+ENTSR_FU);
 
@@ -815,6 +817,8 @@ static void ei_rx_overrun(struct net_device *dev)
 {
 	unsigned long e8390_base = dev->base_addr;
 	unsigned char was_txing, must_resend = 0;
+	/* ei_local is used on some platforms via the EI_SHIFT macro */
+	struct ei_device *ei_local __maybe_unused = netdev_priv(dev);
 
 	/*
 	 * Record whether a Tx was in progress and then issue the
Yours Tony

  linux.conf.au    http://www.marchsouth.org/
  Jan 19 - 24 2009 The Australian Linux Technical Conference!


^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2008-05-19  5:03 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <20080514170106.3cbcb201.sfr@canb.auug.org.au>
     [not found] ` <Pine.LNX.4.64.0805142237240.11631@anakin>
     [not found]   ` <20080514135008.60e5df96.randy.dunlap@oracle.com>
     [not found]     ` <20080514210447.GK20457@bakeyournoodle.com>
2008-05-15  1:05       ` linux-next: Tree for May 14 Tony Breeds
2008-05-15  7:17         ` Geert Uytterhoeven
2008-05-15  7:23           ` Stephen Rothwell
2008-05-16  2:10           ` Tony Breeds
2008-05-16  7:12             ` Geert Uytterhoeven
2008-05-19  5:03               ` [PATCH v3] Fix various 8390 builds Tony Breeds

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).