* Re: [PATCH] phy: SMSC: fix unused warnings when built into kernel
2010-08-06 6:43 ` Changli Gao
@ 2010-08-06 7:37 ` Mike Frysinger
2010-08-06 7:37 ` Mike Frysinger
2010-08-06 12:57 ` Ben Hutchings
2 siblings, 0 replies; 6+ messages in thread
From: Mike Frysinger @ 2010-08-06 7:37 UTC (permalink / raw)
To: Changli Gao; +Cc: netdev, David S. Miller
[-- Attachment #1: Type: Text/Plain, Size: 1125 bytes --]
On Friday, August 06, 2010 02:43:46 Changli Gao wrote:
> On Fri, Aug 6, 2010 at 2:27 PM, Mike Frysinger <vapier@gentoo.org> wrote:
> > If the SMSC phy is not built as a module, we get the warning:
> > drivers/net/phy/smsc.c:257: warning: 'smsc_tbl' defined but not
> > used
> >
> > So mark the structure as maybe unused to avoid this.
> >
> > Signed-off-by: Mike Frysinger <vapier@gentoo.org>
> > ---
> > drivers/net/phy/smsc.c | 2 +-
> > 1 files changed, 1 insertions(+), 1 deletions(-)
> >
> > diff --git a/drivers/net/phy/smsc.c b/drivers/net/phy/smsc.c
> > index 78fa988..11944ef 100644
> > --- a/drivers/net/phy/smsc.c
> > +++ b/drivers/net/phy/smsc.c
> > @@ -254,7 +254,7 @@ MODULE_LICENSE("GPL");
> > module_init(smsc_init);
> > module_exit(smsc_exit);
> >
> > -static struct mdio_device_id smsc_tbl[] = {
> > +static __maybe_unused struct mdio_device_id smsc_tbl[] = {
> > { 0x0007c0a0, 0xfffffff0 },
> > { 0x0007c0b0, 0xfffffff0 },
> > { 0x0007c0c0, 0xfffffff0 },
>
> How about adding a #ifdef CONFIG_SMSC_PHY_MODULE clause around these
> lines?
[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] phy: SMSC: fix unused warnings when built into kernel
2010-08-06 6:43 ` Changli Gao
2010-08-06 7:37 ` Mike Frysinger
@ 2010-08-06 7:37 ` Mike Frysinger
2010-08-06 12:57 ` Ben Hutchings
2 siblings, 0 replies; 6+ messages in thread
From: Mike Frysinger @ 2010-08-06 7:37 UTC (permalink / raw)
To: Changli Gao; +Cc: netdev, David S. Miller
[-- Attachment #1: Type: Text/Plain, Size: 882 bytes --]
On Friday, August 06, 2010 02:43:46 Changli Gao wrote:
> On Fri, Aug 6, 2010 at 2:27 PM, Mike Frysinger wrote:
> > If the SMSC phy is not built as a module, we get the warning:
> > drivers/net/phy/smsc.c:257: warning: 'smsc_tbl' defined but not
> > used
> >
> > So mark the structure as maybe unused to avoid this.
> >
> > --- a/drivers/net/phy/smsc.c
> > +++ b/drivers/net/phy/smsc.c
> > @@ -254,7 +254,7 @@ MODULE_LICENSE("GPL");
> > module_init(smsc_init);
> > module_exit(smsc_exit);
> >
> > -static struct mdio_device_id smsc_tbl[] = {
> > +static __maybe_unused struct mdio_device_id smsc_tbl[] = {
> > { 0x0007c0a0, 0xfffffff0 },
> > { 0x0007c0b0, 0xfffffff0 },
> > { 0x0007c0c0, 0xfffffff0 },
>
> How about adding a #ifdef CONFIG_SMSC_PHY_MODULE clause around these
> lines?
imo, the less ifdefs the better
-mike
[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] phy: SMSC: fix unused warnings when built into kernel
2010-08-06 6:43 ` Changli Gao
2010-08-06 7:37 ` Mike Frysinger
2010-08-06 7:37 ` Mike Frysinger
@ 2010-08-06 12:57 ` Ben Hutchings
2010-08-08 6:08 ` David Miller
2 siblings, 1 reply; 6+ messages in thread
From: Ben Hutchings @ 2010-08-06 12:57 UTC (permalink / raw)
To: Changli Gao; +Cc: Mike Frysinger, netdev, David S. Miller
On Fri, 2010-08-06 at 14:43 +0800, Changli Gao wrote:
> On Fri, Aug 6, 2010 at 2:27 PM, Mike Frysinger <vapier@gentoo.org> wrote:
> > If the SMSC phy is not built as a module, we get the warning:
> > drivers/net/phy/smsc.c:257: warning: 'smsc_tbl' defined but not used
> >
> > So mark the structure as maybe unused to avoid this.
> >
> > Signed-off-by: Mike Frysinger <vapier@gentoo.org>
> > ---
> > drivers/net/phy/smsc.c | 2 +-
> > 1 files changed, 1 insertions(+), 1 deletions(-)
> >
> > diff --git a/drivers/net/phy/smsc.c b/drivers/net/phy/smsc.c
> > index 78fa988..11944ef 100644
> > --- a/drivers/net/phy/smsc.c
> > +++ b/drivers/net/phy/smsc.c
> > @@ -254,7 +254,7 @@ MODULE_LICENSE("GPL");
> > module_init(smsc_init);
> > module_exit(smsc_exit);
> >
> > -static struct mdio_device_id smsc_tbl[] = {
> > +static __maybe_unused struct mdio_device_id smsc_tbl[] = {
> > { 0x0007c0a0, 0xfffffff0 },
> > { 0x0007c0b0, 0xfffffff0 },
> > { 0x0007c0c0, 0xfffffff0 },
>
> How about adding a #ifdef CONFIG_SMSC_PHY_MODULE clause around these lines?
By default, gcc will discard unused variables and functions declared as
static. So this would not provide any run-time benefit.
Ben.
--
Ben Hutchings, Senior Software Engineer, Solarflare Communications
Not speaking for my employer; that's the marketing department's job.
They asked us to note that Solarflare product names are trademarked.
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] phy: SMSC: fix unused warnings when built into kernel
2010-08-06 12:57 ` Ben Hutchings
@ 2010-08-08 6:08 ` David Miller
0 siblings, 0 replies; 6+ messages in thread
From: David Miller @ 2010-08-08 6:08 UTC (permalink / raw)
To: bhutchings; +Cc: xiaosuo, vapier, netdev
From: Ben Hutchings <bhutchings@solarflare.com>
Date: Fri, 06 Aug 2010 13:57:15 +0100
> On Fri, 2010-08-06 at 14:43 +0800, Changli Gao wrote:
>> On Fri, Aug 6, 2010 at 2:27 PM, Mike Frysinger <vapier@gentoo.org> wrote:
>> > If the SMSC phy is not built as a module, we get the warning:
>> > drivers/net/phy/smsc.c:257: warning: 'smsc_tbl' defined but not used
>> >
>> > So mark the structure as maybe unused to avoid this.
>> >
>> > Signed-off-by: Mike Frysinger <vapier@gentoo.org>
>> > ---
>> > drivers/net/phy/smsc.c | 2 +-
>> > 1 files changed, 1 insertions(+), 1 deletions(-)
>> >
>> > diff --git a/drivers/net/phy/smsc.c b/drivers/net/phy/smsc.c
>> > index 78fa988..11944ef 100644
>> > --- a/drivers/net/phy/smsc.c
>> > +++ b/drivers/net/phy/smsc.c
>> > @@ -254,7 +254,7 @@ MODULE_LICENSE("GPL");
>> > module_init(smsc_init);
>> > module_exit(smsc_exit);
>> >
>> > -static struct mdio_device_id smsc_tbl[] = {
>> > +static __maybe_unused struct mdio_device_id smsc_tbl[] = {
>> > { 0x0007c0a0, 0xfffffff0 },
>> > { 0x0007c0b0, 0xfffffff0 },
>> > { 0x0007c0c0, 0xfffffff0 },
>>
>> How about adding a #ifdef CONFIG_SMSC_PHY_MODULE clause around these lines?
>
> By default, gcc will discard unused variables and functions declared as
> static. So this would not provide any run-time benefit.
We never have to do this for any other module device table, because
usually the table is actually used for the probing.
The MDIO ones are special in that they are only used for assisting in
module probing.
I would suggest that, in light of this, we make MODULE_DEVICE_TABLE()
make a dummy reference to the table.
Otherwise we're likely going going to have to add these ugly tags to
every single PHY driver.
^ permalink raw reply [flat|nested] 6+ messages in thread