[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CA+h21hrTv7B5_gbBhKP=iY1utaSqPYf0d3Qj2hjKtoOtfxRygA@mail.gmail.com>
Date: Sat, 14 Sep 2019 14:40:52 +0100
From: Vladimir Oltean <olteanv@...il.com>
To: kbuild test robot <lkp@...el.com>
Cc: kbuild-all@...org, f.fainelli@...il.com, vivien.didelot@...il.com,
andrew@...n.ch, davem@...emloft.net, vinicius.gomes@...el.com,
vedang.patel@...el.com, richardcochran@...il.com,
weifeng.voon@...el.com, jiri@...lanox.com, m-karicheri2@...com,
Jose.Abreu@...opsys.com, ilias.apalodimas@...aro.org,
jhs@...atatu.com, xiyou.wangcong@...il.com,
kurt.kanzenbach@...utronix.de, joergen.andreasen@...rochip.com,
netdev@...r.kernel.org
Subject: Re: [PATCH v2 net-next 6/7] net: dsa: sja1105: Configure the
Time-Aware Scheduler via tc-taprio offload
On 14/09/2019, kbuild test robot <lkp@...el.com> wrote:
> Hi Vladimir,
>
> I love your patch! Yet something to improve:
>
> [auto build test ERROR on net-next/master]
>
> url:
> https://github.com/0day-ci/linux/commits/Vladimir-Oltean/tc-taprio-offload-for-SJA1105-DSA/20190914-154650
> config: i386-randconfig-b001-201936 (attached as .config)
> compiler: gcc-7 (Debian 7.4.0-11) 7.4.0
> reproduce:
> # save the attached .config to linux build tree
> make ARCH=i386
>
> If you fix the issue, kindly add following tag
> Reported-by: kbuild test robot <lkp@...el.com>
>
> All error/warnings (new ones prefixed by >>):
>
> In file included from drivers/net/dsa/sja1105/sja1105.h:23:0,
> from drivers/net/dsa/sja1105/sja1105_spi.c:8:
>>> drivers/net/dsa/sja1105/sja1105_tas.h:38:45: warning: 'struct
>>> sja1105_private' declared inside parameter list will not be visible
>>> outside of this definition or declaration
Oops, I didn't realize I need the "struct sja1105_private;"
forward-declaration even if CONFIG_NET_DSA_SJA1105_TAS is not defined.
Never mind, I'll just make all prototypes take "struct dsa_switch *ds"
so the forward-declaration won't be needed at all. I'll send out a v3
soon.
> static inline void sja1105_tas_setup(struct sja1105_private *priv) { }
> ^~~~~~~~~~~~~~~
> drivers/net/dsa/sja1105/sja1105_tas.h:40:48: warning: 'struct
> sja1105_private' declared inside parameter list will not be visible outside
> of this definition or declaration
> static inline void sja1105_tas_teardown(struct sja1105_private *priv) {
> }
> ^~~~~~~~~~~~~~~
> --
> In file included from drivers/net/dsa/sja1105/sja1105.h:23:0,
> from drivers/net/dsa/sja1105/sja1105_main.c:24:
>>> drivers/net/dsa/sja1105/sja1105_tas.h:38:45: warning: 'struct
>>> sja1105_private' declared inside parameter list will not be visible
>>> outside of this definition or declaration
> static inline void sja1105_tas_setup(struct sja1105_private *priv) { }
> ^~~~~~~~~~~~~~~
> drivers/net/dsa/sja1105/sja1105_tas.h:40:48: warning: 'struct
> sja1105_private' declared inside parameter list will not be visible outside
> of this definition or declaration
> static inline void sja1105_tas_teardown(struct sja1105_private *priv) {
> }
> ^~~~~~~~~~~~~~~
> drivers/net/dsa/sja1105/sja1105_main.c: In function 'sja1105_teardown':
>>> drivers/net/dsa/sja1105/sja1105_main.c:1731:23: error: passing argument 1
>>> of 'sja1105_tas_teardown' from incompatible pointer type
>>> [-Werror=incompatible-pointer-types]
> sja1105_tas_teardown(priv);
> ^~~~
> In file included from drivers/net/dsa/sja1105/sja1105.h:23:0,
> from drivers/net/dsa/sja1105/sja1105_main.c:24:
> drivers/net/dsa/sja1105/sja1105_tas.h:40:20: note: expected 'struct
> sja1105_private *' but argument is of type 'struct sja1105_private *'
> static inline void sja1105_tas_teardown(struct sja1105_private *priv) {
> }
> ^~~~~~~~~~~~~~~~~~~~
> drivers/net/dsa/sja1105/sja1105_main.c: In function 'sja1105_probe':
>>> drivers/net/dsa/sja1105/sja1105_main.c:2215:20: error: passing argument 1
>>> of 'sja1105_tas_setup' from incompatible pointer type
>>> [-Werror=incompatible-pointer-types]
> sja1105_tas_setup(priv);
> ^~~~
> In file included from drivers/net/dsa/sja1105/sja1105.h:23:0,
> from drivers/net/dsa/sja1105/sja1105_main.c:24:
> drivers/net/dsa/sja1105/sja1105_tas.h:38:20: note: expected 'struct
> sja1105_private *' but argument is of type 'struct sja1105_private *'
> static inline void sja1105_tas_setup(struct sja1105_private *priv) { }
> ^~~~~~~~~~~~~~~~~
> cc1: some warnings being treated as errors
>
> vim +/sja1105_tas_teardown +1731 drivers/net/dsa/sja1105/sja1105_main.c
>
> 1726
> 1727 static void sja1105_teardown(struct dsa_switch *ds)
> 1728 {
> 1729 struct sja1105_private *priv = ds->priv;
> 1730
>> 1731 sja1105_tas_teardown(priv);
> 1732 cancel_work_sync(&priv->tagger_data.rxtstamp_work);
> 1733 skb_queue_purge(&priv->tagger_data.skb_rxtstamp_queue);
> 1734 sja1105_ptp_clock_unregister(priv);
> 1735 sja1105_static_config_free(&priv->static_config);
> 1736 }
> 1737
>
> ---
> 0-DAY kernel test infrastructure Open Source Technology
> Center
> https://lists.01.org/pipermail/kbuild-all Intel
> Corporation
>
Thanks,
-Vladimir
Powered by blists - more mailing lists