netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Randy Dunlap <rdunlap@infradead.org>
To: kbuild test robot <lkp@intel.com>, Arnd Bergmann <arnd@arndb.de>
Cc: kbuild-all@01.org, linux-kernel@vger.kernel.org,
	Ganesh Goudar <ganeshgr@chelsio.com>,
	David Miller <davem@davemloft.net>,
	"netdev@vger.kernel.org" <netdev@vger.kernel.org>
Subject: Re: drivers/net/ethernet/chelsio/cxgb4/cxgb4_thermal.c:96: undefined reference to `thermal_zone_device_register'
Date: Thu, 8 Nov 2018 16:46:52 -0800	[thread overview]
Message-ID: <83b7b294-4aa5-2e66-35de-df96cefc86fe@infradead.org> (raw)
In-Reply-To: <201811081531.m0SEgZ58%fengguang.wu@intel.com>

[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  			      &param, &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

           reply	other threads:[~2018-11-09  0:46 UTC|newest]

Thread overview: expand[flat|nested]  mbox.gz  Atom feed
 [parent not found: <201811081531.m0SEgZ58%fengguang.wu@intel.com>]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=83b7b294-4aa5-2e66-35de-df96cefc86fe@infradead.org \
    --to=rdunlap@infradead.org \
    --cc=arnd@arndb.de \
    --cc=davem@davemloft.net \
    --cc=ganeshgr@chelsio.com \
    --cc=kbuild-all@01.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lkp@intel.com \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).