Commit ea2ca36b authored by Aravind Gopalakrishnan's avatar Aravind Gopalakrishnan Committed by Ingo Molnar

x86/mce/AMD: Document some functionality

In an attempt to aid in understanding of what the threshold_block
structure holds, provide comments to describe the members here. Also,
trim comments around threshold_restart_bank() and update copyright info.

No functional change is introduced.
Signed-off-by: default avatarAravind Gopalakrishnan <Aravind.Gopalakrishnan@amd.com>
[ Shorten comments. ]
Signed-off-by: default avatarBorislav Petkov <bp@suse.de>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Tony Luck <tony.luck@intel.com>
Cc: linux-edac <linux-edac@vger.kernel.org>
Link: http://lkml.kernel.org/r/1457021458-2522-6-git-send-email-Aravind.Gopalakrishnan@amd.comSigned-off-by: default avatarIngo Molnar <mingo@kernel.org>
parent 2cd3b5f9
...@@ -27,15 +27,23 @@ struct amd_l3_cache { ...@@ -27,15 +27,23 @@ struct amd_l3_cache {
}; };
struct threshold_block { struct threshold_block {
unsigned int block; unsigned int block; /* Number within bank */
unsigned int bank; unsigned int bank; /* MCA bank the block belongs to */
unsigned int cpu; unsigned int cpu; /* CPU which controls MCA bank */
u32 address; u32 address; /* MSR address for the block */
u16 interrupt_enable; u16 interrupt_enable; /* Enable/Disable APIC interrupt */
bool interrupt_capable; bool interrupt_capable; /* Bank can generate an interrupt. */
u16 threshold_limit;
struct kobject kobj; u16 threshold_limit; /*
struct list_head miscj; * Value upon which threshold
* interrupt is generated.
*/
struct kobject kobj; /* sysfs object */
struct list_head miscj; /*
* List of threshold blocks
* within a bank.
*/
}; };
struct threshold_bank { struct threshold_bank {
......
/* /*
* (c) 2005-2015 Advanced Micro Devices, Inc. * (c) 2005-2016 Advanced Micro Devices, Inc.
* Your use of this code is subject to the terms and conditions of the * Your use of this code is subject to the terms and conditions of the
* GNU general public license version 2. See "COPYING" or * GNU general public license version 2. See "COPYING" or
* http://www.gnu.org/licenses/gpl.html * http://www.gnu.org/licenses/gpl.html
...@@ -201,10 +201,7 @@ static int lvt_off_valid(struct threshold_block *b, int apic, u32 lo, u32 hi) ...@@ -201,10 +201,7 @@ static int lvt_off_valid(struct threshold_block *b, int apic, u32 lo, u32 hi)
return 1; return 1;
}; };
/* /* Reprogram MCx_MISC MSR behind this threshold bank. */
* Called via smp_call_function_single(), must be called with correct
* cpu affinity.
*/
static void threshold_restart_bank(void *_tr) static void threshold_restart_bank(void *_tr)
{ {
struct thresh_restart *tr = _tr; struct thresh_restart *tr = _tr;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment