lkml.org 
[lkml]   [2015]   [Apr]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFC PATCH 5/5] GHES: Make NMI handler have a single reader
On Wed, 1 Apr 2015, Borislav Petkov wrote:

> > > From: Jiri Kosina <jkosina@suse.cz>
> > >
> > > Since GHES sources are global, we theoretically need only a single CPU
> > > reading them per NMI instead of a thundering herd of CPUs waiting on a
> > > spinlock in NMI context for no reason at all.
> >
> > I originally wasn't 100% sure whether GHES sources are global (i.e. if it
> > really doesn't matter which CPU is reading the registers), but looking at
> > the code more it actually seems that this is really the right thing to do.
> >
> > Rationale: ghes_ioremap_pfn_nmi() always ioremaps() (exclusively) the page
> > with the registers, performs apei_read() (which is ghes-source specific,
> > but not CPU-specific) and unmaps the page again.
> >
> > There is nothing that would make this CPU-specific. Adding Huang Ying (the
> > original author of the code) to confirm this. Huang?
> >
> > > Do that.
> >
> > I think this should indeed be pushed forward. It fixes horrible spinlock
> > contention on systems which are under NMI storm (such as when perf is
> > active) unrelated to GHES.
>
> Right, so I tested injecting an error without your patch and same
> behavior. So it all points at global sources AFAICT. It would be cool,
> though, if someone who knows the fw confirms unambiguously.

Three weeks have passed, therefore I find this an appropriate time for a
friendly ping :)

Rafael? Naoya? Huang?

This fixes a contention spinlock problem in NMI observed on a real HW, so
it would be really nice to have it fixed.

Thanks,

--
Jiri Kosina
SUSE Labs


\
 
 \ /
  Last update: 2015-04-23 11:21    [W:0.223 / U:0.112 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site