* drivers/net/ethernet/chelsio/cxgb4/cxgb4_thermal.c:96: undefined reference to `thermal_zone_device_register'
@ 2018-11-08 7:08 kbuild test robot
2018-11-09 0:46 ` Randy Dunlap
0 siblings, 1 reply; 2+ messages in thread
From: kbuild test robot @ 2018-11-08 7:08 UTC (permalink / raw)
To: Arnd Bergmann; +Cc: kbuild-all, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 4185 bytes --]
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 85758777c2a227fd1541b6dd122a08ab79c347ce
commit: e70a57fa59bb7fefe063780a49e063d0d0f61863 cxgb4: fix thermal configuration dependencies
date: 4 weeks ago
config: x86_64-randconfig-s0-11081213 (attached as .config)
compiler: gcc-6 (Debian 6.4.0-9) 6.4.0 20171026
reproduce:
git checkout e70a57fa59bb7fefe063780a49e063d0d0f61863
# save the attached .config to linux build tree
make ARCH=x86_64
All errors (new ones prefixed by >>):
drivers/net/ethernet/chelsio/cxgb4/cxgb4_thermal.o: In function `cxgb4_thermal_init':
>> drivers/net/ethernet/chelsio/cxgb4/cxgb4_thermal.c:96: undefined reference to `thermal_zone_device_register'
drivers/net/ethernet/chelsio/cxgb4/cxgb4_thermal.o: In function `cxgb4_thermal_remove':
>> drivers/net/ethernet/chelsio/cxgb4/cxgb4_thermal.c:112: undefined reference to `thermal_zone_device_unregister'
vim +96 drivers/net/ethernet/chelsio/cxgb4/cxgb4_thermal.c
b1871915 Ganesh Goudar 2018-10-09 72
b1871915 Ganesh Goudar 2018-10-09 73 int cxgb4_thermal_init(struct adapter *adap)
b1871915 Ganesh Goudar 2018-10-09 74 {
b1871915 Ganesh Goudar 2018-10-09 75 struct ch_thermal *ch_thermal = &adap->ch_thermal;
b1871915 Ganesh Goudar 2018-10-09 76 int num_trip = CXGB4_NUM_TRIPS;
b1871915 Ganesh Goudar 2018-10-09 77 u32 param, val;
b1871915 Ganesh Goudar 2018-10-09 78 int ret;
b1871915 Ganesh Goudar 2018-10-09 79
b1871915 Ganesh Goudar 2018-10-09 80 /* on older firmwares we may not get the trip temperature,
b1871915 Ganesh Goudar 2018-10-09 81 * set the num of trips to 0.
b1871915 Ganesh Goudar 2018-10-09 82 */
b1871915 Ganesh Goudar 2018-10-09 83 param = (FW_PARAMS_MNEM_V(FW_PARAMS_MNEM_DEV) |
b1871915 Ganesh Goudar 2018-10-09 84 FW_PARAMS_PARAM_X_V(FW_PARAMS_PARAM_DEV_DIAG) |
b1871915 Ganesh Goudar 2018-10-09 85 FW_PARAMS_PARAM_Y_V(FW_PARAM_DEV_DIAG_MAXTMPTHRESH));
b1871915 Ganesh Goudar 2018-10-09 86
b1871915 Ganesh Goudar 2018-10-09 87 ret = t4_query_params(adap, adap->mbox, adap->pf, 0, 1,
b1871915 Ganesh Goudar 2018-10-09 88 ¶m, &val);
b1871915 Ganesh Goudar 2018-10-09 89 if (ret < 0) {
b1871915 Ganesh Goudar 2018-10-09 90 num_trip = 0; /* could not get trip temperature */
b1871915 Ganesh Goudar 2018-10-09 91 } else {
b1871915 Ganesh Goudar 2018-10-09 92 ch_thermal->trip_temp = val * 1000;
b1871915 Ganesh Goudar 2018-10-09 93 ch_thermal->trip_type = THERMAL_TRIP_CRITICAL;
b1871915 Ganesh Goudar 2018-10-09 94 }
b1871915 Ganesh Goudar 2018-10-09 95
b1871915 Ganesh Goudar 2018-10-09 @96 ch_thermal->tzdev = thermal_zone_device_register("cxgb4", num_trip,
b1871915 Ganesh Goudar 2018-10-09 97 0, adap,
b1871915 Ganesh Goudar 2018-10-09 98 &cxgb4_thermal_ops,
b1871915 Ganesh Goudar 2018-10-09 99 NULL, 0, 0);
b1871915 Ganesh Goudar 2018-10-09 100 if (IS_ERR(ch_thermal->tzdev)) {
b1871915 Ganesh Goudar 2018-10-09 101 ret = PTR_ERR(ch_thermal->tzdev);
b1871915 Ganesh Goudar 2018-10-09 102 dev_err(adap->pdev_dev, "Failed to register thermal zone\n");
b1871915 Ganesh Goudar 2018-10-09 103 ch_thermal->tzdev = NULL;
b1871915 Ganesh Goudar 2018-10-09 104 return ret;
b1871915 Ganesh Goudar 2018-10-09 105 }
b1871915 Ganesh Goudar 2018-10-09 106 return 0;
b1871915 Ganesh Goudar 2018-10-09 107 }
b1871915 Ganesh Goudar 2018-10-09 108
b1871915 Ganesh Goudar 2018-10-09 109 int cxgb4_thermal_remove(struct adapter *adap)
b1871915 Ganesh Goudar 2018-10-09 110 {
b1871915 Ganesh Goudar 2018-10-09 111 if (adap->ch_thermal.tzdev)
b1871915 Ganesh Goudar 2018-10-09 @112 thermal_zone_device_unregister(adap->ch_thermal.tzdev);
:::::: The code at line 96 was first introduced by commit
:::::: b187191577629b5358acf4e234809ee8d441ceb4 cxgb4: Add thermal zone support
:::::: TO: Ganesh Goudar <ganeshgr@chelsio.com>
:::::: CC: David S. Miller <davem@davemloft.net>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 30151 bytes --]
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: drivers/net/ethernet/chelsio/cxgb4/cxgb4_thermal.c:96: undefined reference to `thermal_zone_device_register'
2018-11-08 7:08 drivers/net/ethernet/chelsio/cxgb4/cxgb4_thermal.c:96: undefined reference to `thermal_zone_device_register' kbuild test robot
@ 2018-11-09 0:46 ` Randy Dunlap
0 siblings, 0 replies; 2+ messages in thread
From: Randy Dunlap @ 2018-11-09 0:46 UTC (permalink / raw)
To: kbuild test robot, Arnd Bergmann
Cc: kbuild-all, linux-kernel, Ganesh Goudar, David Miller, netdev
[adding netdev + maintainers]
On 11/7/18 11:08 PM, kbuild test robot wrote:
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> head: 85758777c2a227fd1541b6dd122a08ab79c347ce
> commit: e70a57fa59bb7fefe063780a49e063d0d0f61863 cxgb4: fix thermal configuration dependencies
> date: 4 weeks ago
> config: x86_64-randconfig-s0-11081213 (attached as .config)
> compiler: gcc-6 (Debian 6.4.0-9) 6.4.0 20171026
> reproduce:
> git checkout e70a57fa59bb7fefe063780a49e063d0d0f61863
> # save the attached .config to linux build tree
> make ARCH=x86_64
>
> All errors (new ones prefixed by >>):
>
> drivers/net/ethernet/chelsio/cxgb4/cxgb4_thermal.o: In function `cxgb4_thermal_init':
>>> drivers/net/ethernet/chelsio/cxgb4/cxgb4_thermal.c:96: undefined reference to `thermal_zone_device_register'
> drivers/net/ethernet/chelsio/cxgb4/cxgb4_thermal.o: In function `cxgb4_thermal_remove':
>>> drivers/net/ethernet/chelsio/cxgb4/cxgb4_thermal.c:112: undefined reference to `thermal_zone_device_unregister'
>
Hi,
There was a Kconfig WARNING (clue!) before the build errors:
WARNING: unmet direct dependencies detected for CHELSIO_T4
Depends on [m]: NETDEVICES [=y] && ETHERNET [=y] && NET_VENDOR_CHELSIO [=y] && PCI [=y] && (IPV6 [=n] || IPV6 [=n]=n) && (THERMAL [=m] || !THERMAL [=m])
Selected by [y]:
- SCSI_CXGB4_ISCSI [=y] && SCSI_LOWLEVEL [=y] && SCSI [=y] && PCI [=y] && INET [=y] && (IPV6 [=n] || IPV6 [=n]=n)
That says that the problem is with CONFIG_THERMAL=m while CONFIG_CHELSIO_T4=y.
This is caused by drivers/scsi/cxgbi/cxgb4i/Kconfig and its use of "select"
instead of "depends on":
config SCSI_CXGB4_ISCSI
tristate "Chelsio T4 iSCSI support"
depends on PCI && INET && (IPV6 || IPV6=n)
select NETDEVICES
select ETHERNET
select NET_VENDOR_CHELSIO
select CHELSIO_T4
select CHELSIO_LIB
select SCSI_ISCSI_ATTRS
---help---
This driver supports iSCSI offload for the Chelsio T4 devices.
> vim +96 drivers/net/ethernet/chelsio/cxgb4/cxgb4_thermal.c
>
> b1871915 Ganesh Goudar 2018-10-09 72
> b1871915 Ganesh Goudar 2018-10-09 73 int cxgb4_thermal_init(struct adapter *adap)
> b1871915 Ganesh Goudar 2018-10-09 74 {
> b1871915 Ganesh Goudar 2018-10-09 75 struct ch_thermal *ch_thermal = &adap->ch_thermal;
> b1871915 Ganesh Goudar 2018-10-09 76 int num_trip = CXGB4_NUM_TRIPS;
> b1871915 Ganesh Goudar 2018-10-09 77 u32 param, val;
> b1871915 Ganesh Goudar 2018-10-09 78 int ret;
> b1871915 Ganesh Goudar 2018-10-09 79
> b1871915 Ganesh Goudar 2018-10-09 80 /* on older firmwares we may not get the trip temperature,
> b1871915 Ganesh Goudar 2018-10-09 81 * set the num of trips to 0.
> b1871915 Ganesh Goudar 2018-10-09 82 */
> b1871915 Ganesh Goudar 2018-10-09 83 param = (FW_PARAMS_MNEM_V(FW_PARAMS_MNEM_DEV) |
> b1871915 Ganesh Goudar 2018-10-09 84 FW_PARAMS_PARAM_X_V(FW_PARAMS_PARAM_DEV_DIAG) |
> b1871915 Ganesh Goudar 2018-10-09 85 FW_PARAMS_PARAM_Y_V(FW_PARAM_DEV_DIAG_MAXTMPTHRESH));
> b1871915 Ganesh Goudar 2018-10-09 86
> b1871915 Ganesh Goudar 2018-10-09 87 ret = t4_query_params(adap, adap->mbox, adap->pf, 0, 1,
> b1871915 Ganesh Goudar 2018-10-09 88 ¶m, &val);
> b1871915 Ganesh Goudar 2018-10-09 89 if (ret < 0) {
> b1871915 Ganesh Goudar 2018-10-09 90 num_trip = 0; /* could not get trip temperature */
> b1871915 Ganesh Goudar 2018-10-09 91 } else {
> b1871915 Ganesh Goudar 2018-10-09 92 ch_thermal->trip_temp = val * 1000;
> b1871915 Ganesh Goudar 2018-10-09 93 ch_thermal->trip_type = THERMAL_TRIP_CRITICAL;
> b1871915 Ganesh Goudar 2018-10-09 94 }
> b1871915 Ganesh Goudar 2018-10-09 95
> b1871915 Ganesh Goudar 2018-10-09 @96 ch_thermal->tzdev = thermal_zone_device_register("cxgb4", num_trip,
> b1871915 Ganesh Goudar 2018-10-09 97 0, adap,
> b1871915 Ganesh Goudar 2018-10-09 98 &cxgb4_thermal_ops,
> b1871915 Ganesh Goudar 2018-10-09 99 NULL, 0, 0);
> b1871915 Ganesh Goudar 2018-10-09 100 if (IS_ERR(ch_thermal->tzdev)) {
> b1871915 Ganesh Goudar 2018-10-09 101 ret = PTR_ERR(ch_thermal->tzdev);
> b1871915 Ganesh Goudar 2018-10-09 102 dev_err(adap->pdev_dev, "Failed to register thermal zone\n");
> b1871915 Ganesh Goudar 2018-10-09 103 ch_thermal->tzdev = NULL;
> b1871915 Ganesh Goudar 2018-10-09 104 return ret;
> b1871915 Ganesh Goudar 2018-10-09 105 }
> b1871915 Ganesh Goudar 2018-10-09 106 return 0;
> b1871915 Ganesh Goudar 2018-10-09 107 }
> b1871915 Ganesh Goudar 2018-10-09 108
> b1871915 Ganesh Goudar 2018-10-09 109 int cxgb4_thermal_remove(struct adapter *adap)
> b1871915 Ganesh Goudar 2018-10-09 110 {
> b1871915 Ganesh Goudar 2018-10-09 111 if (adap->ch_thermal.tzdev)
> b1871915 Ganesh Goudar 2018-10-09 @112 thermal_zone_device_unregister(adap->ch_thermal.tzdev);
>
> :::::: The code at line 96 was first introduced by commit
> :::::: b187191577629b5358acf4e234809ee8d441ceb4 cxgb4: Add thermal zone support
>
> :::::: TO: Ganesh Goudar <ganeshgr@chelsio.com>
> :::::: CC: David S. Miller <davem@davemloft.net>
>
> ---
> 0-DAY kernel test infrastructure Open Source Technology Center
> https://lists.01.org/pipermail/kbuild-all Intel Corporation
>
ciao.
--
~Randy
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2018-11-09 0:46 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-08 7:08 drivers/net/ethernet/chelsio/cxgb4/cxgb4_thermal.c:96: undefined reference to `thermal_zone_device_register' kbuild test robot
2018-11-09 0:46 ` Randy Dunlap
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).