summaryrefslogtreecommitdiffstats
path: root/x86-microcode-Fix-sysfs-warning-during-module-unload-on-unsupported-CPUs.patch
blob: d1cafc1623bb2e775478bf4082a14d77c6769ed1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
Path: news.gmane.org!not-for-mail
From: Borislav Petkov <borislav.petkov@amd.com>
Newsgroups: gmane.linux.kernel
Subject: [PATCH 1/2] x86, microcode: Fix sysfs warning during module unload
Date: Thu, 12 Apr 2012 18:30:38 +0200
Lines: 83
Approved: news@gmane.org
Message-ID: <20120412163038.GL24549@aftab>
References: <20120411163849.GE4794@alberich.amd.com>
 <20120411200601.GC12288@kroah.com>
 <20120411201053.GF18114@aftab>
 <20120412162351.GJ24549@aftab>
NNTP-Posting-Host: plane.gmane.org
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
X-Trace: dough.gmane.org 1334248312 13759 80.91.229.3 (12 Apr 2012 16:31:52 GMT)
X-Complaints-To: usenet@dough.gmane.org
NNTP-Posting-Date: Thu, 12 Apr 2012 16:31:52 +0000 (UTC)
Cc: Andreas Herrmann <andreas.herrmann3@amd.com>,
	Kay Sievers <kay.sievers@vrfy.org>,
	Dave Jones <davej@redhat.com>, <linux-kernel@vger.kernel.org>
To: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Original-X-From: linux-kernel-owner@vger.kernel.org Thu Apr 12 18:31:50 2012
Return-path: <linux-kernel-owner@vger.kernel.org>
Envelope-to: glk-linux-kernel-3@plane.gmane.org
Original-Received: from vger.kernel.org ([209.132.180.67])
	by plane.gmane.org with esmtp (Exim 4.69)
	(envelope-from <linux-kernel-owner@vger.kernel.org>)
	id 1SIMw1-0005nm-KE
	for glk-linux-kernel-3@plane.gmane.org; Thu, 12 Apr 2012 18:31:49 +0200
Original-Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand
	id S934534Ab2DLQbF (ORCPT <rfc822;glk-linux-kernel-3@m.gmane.org>);
	Thu, 12 Apr 2012 12:31:05 -0400
Original-Received: from db3ehsobe004.messaging.microsoft.com ([213.199.154.142]:35401
	"EHLO db3outboundpool.messaging.microsoft.com" rhost-flags-OK-OK-OK-OK)
	by vger.kernel.org with ESMTP id S934436Ab2DLQbD (ORCPT
	<rfc822;linux-kernel@vger.kernel.org>);
	Thu, 12 Apr 2012 12:31:03 -0400
Original-Received: from mail117-db3-R.bigfish.com (10.3.81.240) by
 DB3EHSOBE002.bigfish.com (10.3.84.22) with Microsoft SMTP Server id
 14.1.225.23; Thu, 12 Apr 2012 16:31:00 +0000
Original-Received: from mail117-db3 (localhost [127.0.0.1])	by
 mail117-db3-R.bigfish.com (Postfix) with ESMTP id BAA93180481;	Thu, 12 Apr
 2012 16:31:00 +0000 (UTC)
X-SpamScore: 1
X-BigFish: VPS1(zzzz1202hzz8275eh8275bh8275dha1495iz2dh668h839h944hd25hd2bh)
X-Forefront-Antispam-Report: CIP:163.181.249.109;KIP:(null);UIP:(null);IPV:NLI;H:ausb3twp02.amd.com;RD:none;EFVD:NLI
Original-Received: from mail117-db3 (localhost.localdomain [127.0.0.1]) by mail117-db3
 (MessageSwitch) id 133424825930391_28243; Thu, 12 Apr 2012 16:30:59 +0000
 (UTC)
Original-Received: from DB3EHSMHS006.bigfish.com (unknown [10.3.81.226])	by
 mail117-db3.bigfish.com (Postfix) with ESMTP id ED7022E004F;	Thu, 12 Apr 2012
 16:30:58 +0000 (UTC)
Original-Received: from ausb3twp02.amd.com (163.181.249.109) by
 DB3EHSMHS006.bigfish.com (10.3.87.106) with Microsoft SMTP Server id
 14.1.225.23; Thu, 12 Apr 2012 16:30:57 +0000
X-WSS-ID: 0M2DKJG-02-0NU-02
X-M-MSG: 
Original-Received: from sausexedgep01.amd.com (sausexedgep01-ext.amd.com
 [163.181.249.72])	(using TLSv1 with cipher AES128-SHA (128/128 bits))	(No
 client certificate requested)	by ausb3twp02.amd.com (Axway MailGate 3.8.1)
 with ESMTP id 21D3FC814C;	Thu, 12 Apr 2012 11:30:50 -0500 (CDT)
Original-Received: from SAUSEXDAG01.amd.com (163.181.55.1) by sausexedgep01.amd.com
 (163.181.36.54) with Microsoft SMTP Server (TLS) id 8.3.192.1; Thu, 12 Apr
 2012 11:31:09 -0500
Original-Received: from storexhtp02.amd.com (172.24.4.4) by sausexdag01.amd.com
 (163.181.55.1) with Microsoft SMTP Server (TLS) id 14.1.323.3; Thu, 12 Apr
 2012 11:30:54 -0500
Original-Received: from gwo.osrc.amd.com (165.204.16.204) by storexhtp02.amd.com
 (172.24.4.4) with Microsoft SMTP Server id 8.3.213.0; Thu, 12 Apr 2012
 12:30:51 -0400
Original-Received: from aftab (aftab.osrc.amd.com [165.204.15.109])	by gwo.osrc.amd.com
 (Postfix) with ESMTP id 0D00D49C58B;	Thu, 12 Apr 2012 17:30:50 +0100 (BST)
Content-Disposition: inline
In-Reply-To: <20120412162351.GJ24549@aftab>
User-Agent: Mutt/1.5.21 (2010-09-15)
X-OriginatorOrg: amd.com
Original-Sender: linux-kernel-owner@vger.kernel.org
Precedence: bulk
List-ID: <linux-kernel.vger.kernel.org>
X-Mailing-List: linux-kernel@vger.kernel.org
Xref: news.gmane.org gmane.linux.kernel:1281049
Archived-At: <http://permalink.gmane.org/gmane.linux.kernel/1281049>

From: Andreas Herrmann <andreas.herrmann3@amd.com>
Date: Thu, 12 Apr 2012 16:48:01 +0200
Subject: [PATCH 1/2] x86, microcode: Fix sysfs warning during module unload on unsupported CPUs

Loading microcode driver on an unsupported CPU and subsequently
unloading the driver causes

 WARNING: at fs/sysfs/group.c:138 mc_device_remove+0x5f/0x70 [microcode]()
 Hardware name: 01972NG
 sysfs group ffffffffa00013d0 not found for kobject 'cpu0'
 Modules linked in: snd_hda_codec_hdmi snd_hda_codec_conexant snd_hda_intel btusb snd_hda_codec bluetooth thinkpad_acpi rfkill microcode(-) [last unloaded: cfg80211]
 Pid: 4560, comm: modprobe Not tainted 3.4.0-rc2-00002-g258f742 #5
 Call Trace:
  [<ffffffff8103113b>] ? warn_slowpath_common+0x7b/0xc0
  [<ffffffff81031235>] ? warn_slowpath_fmt+0x45/0x50
  [<ffffffff81120e74>] ? sysfs_remove_group+0x34/0x120
  [<ffffffffa00000ef>] ? mc_device_remove+0x5f/0x70 [microcode]
  [<ffffffff81331eb9>] ? subsys_interface_unregister+0x69/0xa0
  [<ffffffff81563526>] ? mutex_lock+0x16/0x40
  [<ffffffffa0000c3e>] ? microcode_exit+0x50/0x92 [microcode]
  [<ffffffff8107051d>] ? sys_delete_module+0x16d/0x260
  [<ffffffff810a0065>] ? wait_iff_congested+0x45/0x110
  [<ffffffff815656af>] ? page_fault+0x1f/0x30
  [<ffffffff81565ba2>] ? system_call_fastpath+0x16/0x1b

on recent kernels.

This is due to

  commit 8a25a2fd126c621f44f3aeaef80d51f00fc11639
  (cpu: convert 'cpu' and 'machinecheck' sysdev_class to a regular
  subsystem)

which renders

 commit 6c53cbfced048c421e4f72cb2183465f68fbc5e7
 (x86, microcode: Correct sysdev_add error path)

useless.

See http://marc.info/?l=linux-kernel&m=133416246406478

Avoid above warning by restoring the old driver behaviour before
commit 6c53cbfced048c421e4f72cb2183465f68fbc5e7 (x86, microcode:
Correct sysdev_add error path)

Cc: stable@vger.kernel.org
Cc: Tigran Aivazian <tigran@aivazian.fsnet.co.uk>
Cc: Borislav Petkov <borislav.petkov@amd.com>
Signed-off-by: Andreas Herrmann <andreas.herrmann3@amd.com>
---
 arch/x86/kernel/microcode_core.c |    4 +---
 1 files changed, 1 insertions(+), 3 deletions(-)

diff --git a/arch/x86/kernel/microcode_core.c b/arch/x86/kernel/microcode_core.c
index 87a0f86..d389e74 100644
--- a/arch/x86/kernel/microcode_core.c
+++ b/arch/x86/kernel/microcode_core.c
@@ -419,10 +419,8 @@ static int mc_device_add(struct device *dev, struct subsys_interface *sif)
 	if (err)
 		return err;
 
-	if (microcode_init_cpu(cpu) == UCODE_ERROR) {
-		sysfs_remove_group(&dev->kobj, &mc_attr_group);
+	if (microcode_init_cpu(cpu) == UCODE_ERROR)
 		return -EINVAL;
-	}
 
 	return err;
 }
-- 
1.7.8.4

-- 
Regards/Gruss,
Boris.

Advanced Micro Devices GmbH
Einsteinring 24, 85609 Dornach
GM: Alberto Bozzo
Reg: Dornach, Landkreis Muenchen
HRB Nr. 43632 WEEE Registernr: 129 19551