Re: acpi_cpu_freq_init warning...

OGAWA Hirofumi
2008-05-06T07:13:28Z

Greg KH <gregkh@suse.de> writes:

> On Tue, May 06, 2008 at 03:29:55PM +0900, OGAWA Hirofumi wrote:
>> > calling acpi_cpufreq_init+0x0/0x68()
>> > sysdev: class cpu: driver (ffffffff80da0110) has already been
>> > registered to a class, something is wrong, but will forge on!
>> > ------------[ cut here ]------------
>> > WARNING: at drivers/base/sys.c:183 sysdev_driver_register+0x82/0x150()
>> > Modules linked in:
>> > Pid: 1, comm: swapper Not tainted
>> > 2.6.26-rc1-sched-devel.git-x86-latest.git-00485-g253148c-dirty #333
>>
>> I've seen this too. The following patch seems to work for me.
>> --
>> OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
>>
>>
>> [PATCH] Fix bogus warning in sysdev_driver_register()
>>
>> if ((drv->entry.next != drv->entry.prev) ||
>> (drv->entry.next != NULL)) {
>>
>> warns list_empty(&drv->entry).
>
> should we just call list_empty() here to make sure it is correct?

Unfortunately we can't. drv->entry is initialized by NULL like following.

static struct sysdev_driver cpufreq_sysdev_driver = {
.add = cpufreq_add_dev,
.remove = cpufreq_remove_dev,
.suspend = cpufreq_suspend,
.resume = cpufreq_resume,
};

I assumed this (for compatible) is an intent.
--
OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>