Messages in this thread | | | Date | Mon, 27 Sep 2010 11:00:56 +0200 | From | Robert Richter <> | Subject | Re: [PATCH -v2 3/7] x86, NMI, Rename memory parity error to PCI SERR error |
| |
On 27.09.10 04:39:20, Huang Ying wrote: > On Mon, 2010-09-27 at 16:01 +0800, Robert Richter wrote: > > On 26.09.10 20:57:02, Huang Ying wrote: > > > memory parity error is only valid for IBM PC-AT, newer machine use 7 > > > bit (0x80) of 0x61 port for PCI SERR. While memory error is usually > > > reported via MCE. So corresponding function name and kernel log string > > > is changed. > > > > > > But on some machines, PCI SERR line is still used to report memory > > > errors. This is used by EDAC, so corresponding EDAC call is reserved. > > > > > > > > > v2: > > > > > > - EDAC call in pci_serr_error is reserved. > > > > > > Signed-off-by: Huang Ying <ying.huang@intel.com> > > > --- > > > arch/x86/include/asm/mach_traps.h | 6 +++--- > > > arch/x86/kernel/traps.c | 21 ++++++++++----------- > > > 2 files changed, 13 insertions(+), 14 deletions(-) > > > > > > --- a/arch/x86/include/asm/mach_traps.h > > > +++ b/arch/x86/include/asm/mach_traps.h > > > @@ -9,11 +9,11 @@ > > > > > > #define NMI_REASON_PORT 0x61 > > > > > > -#define NMI_REASON_MEMPAR 0x80 > > > +#define NMI_REASON_SERR 0x80 > > > #define NMI_REASON_IOCHK 0x40 > > > -#define NMI_REASON_MASK (NMI_REASON_MEMPAR | NMI_REASON_IOCHK) > > > +#define NMI_REASON_MASK (NMI_REASON_SERR | NMI_REASON_IOCHK) > > > > > > -#define NMI_REASON_CLEAR_MEMPAR 0x04 > > > +#define NMI_REASON_CLEAR_SERR 0x04 > > > > I already commented on this, patch #1 and #3 are basically the same in > > most parts which should be merged. What remains then in this patch is > > the modified printk() and the comment. Both could be added to #1 too > > which is then some sort of code cleanup patch. > > Don thinks it is Ok to keep 2 patches.
I don't like reviewing new changes which are thrown away with the next patch. I review things twice and it is much harder to see what really changed then. Also we should have a clean history.
And with git it is fairly easy to join patches.
> > > > #define NMI_REASON_CLEAR_IOCHK 0x08 > > > #define NMI_REASON_CLEAR_MASK 0x0f > > > > > > --- a/arch/x86/kernel/traps.c > > > +++ b/arch/x86/kernel/traps.c > > > @@ -301,15 +301,14 @@ gp_in_kernel: > > > } > > > > > > static notrace __kprobes void > > > -mem_parity_error(unsigned char reason, struct pt_regs *regs) > > > +pci_serr_error(unsigned char reason, struct pt_regs *regs) > > > { > > > - printk(KERN_EMERG > > > - "Uhhuh. NMI received for unknown reason %02x on CPU %d.\n", > > > - reason, smp_processor_id()); > > > - > > > - printk(KERN_EMERG > > > - "You have some hardware problem, likely on the PCI bus.\n"); > > > + printk(KERN_EMERG "NMI: PCI system error (SERR).\n"); > > > > You should keep reporting the cpu id to identify the affected node and > > also the reason. > > Ok. I will add CPU ID in message. Because we know the reason, I don't > think we need the reason in message.
You only know that bit 7 is set, not the rest. As this is an error message we should provide as much information as possible.
-Robert
-- Advanced Micro Devices, Inc. Operating System Research Center
| |