Re: linux-next: build failure after merge of the final tree (akpmtree related)

From: David Fries
Date: Fri Sep 14 2012 - 00:21:07 EST


On Thu, Sep 13, 2012 at 11:34:29PM +1000, Stephen Rothwell wrote:
> Hi David,
>
> On Thu, 13 Sep 2012 08:24:08 -0500 David Fries <david@xxxxxxxxx> wrote:
> >
> > On Thu, Sep 13, 2012 at 06:11:27PM +1000, Stephen Rothwell wrote:
> > > Hi all,
> > >
> > > After merging the final tree, today's linux-next build (sparc64 defconfig)
> > > failed like this:
> > >
> > > drivers/built-in.o: In function `rtc_hctosys':
> > > hctosys.c:(.init.text+0x4a98): undefined reference to `rtc_hctosys_ret'
> > > hctosys.c:(.init.text+0x4b54): undefined reference to `rtc_hctosys_ret'
> > > hctosys.c:(.init.text+0x4b58): undefined reference to `rtc_hctosys_ret'
> >
> > Can you post your .config? `grep RTC .config`
> > It would seem to me that drivers/rtc/hctosys.c is being compiled
> > without drivers/rtc/class.c which now holds the global variable, but
> > Kconfig says that RTC_HCTOSYS 'depends on RTC_CLASS = y'.
>
> Did you read the bit you quoted below?

Oops, sorry, I had just got out of bed and was trying to hurry to
work. The following version defines rtc_hctosys_ret in
CONFIG_RTC_HCTOSYS_DEVICE and CONFIG_PM is checked later.

> CONFIG_PM is not set, so that the
> part of class.c that contains the definition of rtc_hctosys_ret is not
> compiled ...
>
> > > Caused by commit "rtc_sysfs_show_hctosys(): display 0 if resume failed"
> > > from the akpm tree. rtc_hctosys_ret was moved into class.c but protected
> > > by defined(CONFIG_PM) && defined(CONFIG_RTC_HCTOSYS_DEVICE) and this
> > > build does not have CONFIG_PM set.