diff options
Diffstat (limited to 'arch/x86/kernel/cpu/mcheck/mce_amd.c')
| -rw-r--r-- | arch/x86/kernel/cpu/mcheck/mce_amd.c | 10 | 
1 files changed, 5 insertions, 5 deletions
diff --git a/arch/x86/kernel/cpu/mcheck/mce_amd.c b/arch/x86/kernel/cpu/mcheck/mce_amd.c index c4e916d7737..698b6ec12e0 100644 --- a/arch/x86/kernel/cpu/mcheck/mce_amd.c +++ b/arch/x86/kernel/cpu/mcheck/mce_amd.c @@ -576,12 +576,10 @@ static __cpuinit int threshold_create_bank(unsigned int cpu, unsigned int bank)  	int err = 0;  	if (shared_bank[bank]) { -  		nb = node_to_amd_nb(amd_get_nb_id(cpu)); -		WARN_ON(!nb);  		/* threshold descriptor already initialized on this node? */ -		if (nb->bank4) { +		if (nb && nb->bank4) {  			/* yes, use it */  			b = nb->bank4;  			err = kobject_add(b->kobj, &dev->kobj, name); @@ -615,8 +613,10 @@ static __cpuinit int threshold_create_bank(unsigned int cpu, unsigned int bank)  		atomic_set(&b->cpus, 1);  		/* nb is already initialized, see above */ -		WARN_ON(nb->bank4); -		nb->bank4 = b; +		if (nb) { +			WARN_ON(nb->bank4); +			nb->bank4 = b; +		}  	}  	err = allocate_threshold_blocks(cpu, bank, 0,  |