Re: linux-next: build failure after merge of the driver-core tree

From: Stephen Rothwell
Date: Wed Jan 04 2012 - 18:49:06 EST


Hi Greg,

On Wed, 4 Jan 2012 15:07:20 -0800 Greg KH <greg@xxxxxxxxx> wrote:
>
> Ok, I'll take off the warn_unused_result flag for device_create_file for
> now, which should solve this, and your other build problems with the
> driver-core tree.

Yes, I think that is it.

> > drivers/base/cpu.c: In function 'cpu_is_hotpluggable':
> > drivers/base/cpu.c:272:9: error: implicit declaration of function 'get_cpu_sysdev' [-Werror=implicit-function-declaration]
> > drivers/base/cpu.c:272:27: warning: initialization makes pointer from integer without a cast [enabled by default]
> > drivers/base/cpu.c:273:16: error: 'struct cpu' has no member named 'sysdev'
> > drivers/base/cpu.c:273:16: warning: initialization from incompatible pointer type [enabled by default]
> > drivers/base/cpu.c:273:16: error: 'struct cpu' has no member named 'sysdev'
> > drivers/base/cpu.c:274:1: warning: control reaches end of non-void function [-Wreturn-type]
> >
> > Caused by the above commit interacting with commit 2987557f52b9
> > ("driver-core/cpu: Expose hotpluggability to the rest of the kernel")
> > from the tip tree. This is will fix up in the merge commit next time.
>
> Yeah, nothing I can do here about this, sorry.

Kay, Greg, any hints would be nice. The tip tree commit is adding this:

bool cpu_is_hotpluggable(unsigned cpu)
{
struct sys_device *dev = get_cpu_sysdev(cpu);
return dev && container_of(dev, struct cpu, sysdev)->hotpluggable;
}

and, of course, all the sys_device stuff has now gone ...

So is this correct?

bool cpu_is_hotpluggable(unsigned cpu)
{
struct device *dev = get_cpu_device(cpu);
return dev && container_of(dev, struct cpu, dev)->hotpluggable;
}
--
Cheers,
Stephen Rothwell sfr@xxxxxxxxxxxxxxxx
http://www.canb.auug.org.au/~sfr/

Attachment: pgp00000.pgp
Description: PGP signature