x86: fix microcode driver newly spewing warnings
authorDmitry Adamushko <dmitry.adamushko@gmail.com>
Wed, 15 Apr 2009 14:51:48 +0000 (16:51 +0200)
committerIngo Molnar <mingo@elte.hu>
Thu, 16 Apr 2009 23:11:20 +0000 (01:11 +0200)
Jeff Garzik reported this WARN_ON() noise:

> Kernel: 2.6.30-rc1-00306-g8371f87
> Hardware: ICH10 x86-64
>
> This is a regression from 2.6.29.  Microcode spews the following WARNING
> multiple times during boot:
>
> ------------[ cut here ]------------
> WARNING: at fs/sysfs/group.c:138 sysfs_remove_group+0xeb/0xf0()
> Hardware name:         sysfs group ffffffffa0209700 not found for
>  kobject 'cpu0'

Keep sysfs files around for cpus even when we failed to locate
microcode for them at the moment of module loading. The appropriate
microcode firmware can become available later on.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
arch/x86/kernel/microcode_core.c

index a0f3851ef310dcb3e8d419e8a9788b51b3ace3c8..4d420de9ac61653f9e7fd0fb8ec89ab63213ce52 100644 (file)
@@ -391,8 +391,6 @@ static int mc_sysdev_add(struct sys_device *sys_dev)
                return err;
 
        err = microcode_init_cpu(cpu);
-       if (err)
-               sysfs_remove_group(&sys_dev->kobj, &mc_attr_group);
 
        return err;
 }