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 a0f3851..4d420de 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;
 }