lkml.org 
[lkml]   [2019]   [Nov]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: linuxnext-2019119 edac warns (was Re: edac KASAN warning in experimental arm64 allmodconfig boot)
Date
On 21.11.19 15:23:42, John Garry wrote:
> On 21/11/2019 14:23, Robert Richter wrote:
> > On 21.11.19 12:34:22, John Garry wrote:

> > > [ 22.046666] EDAC MC: bug in low-level driver: attempt to assign
> > > [ 22.046666] duplicate mc_idx 0 in add_mc_to_global_list()
> > > [ 22.058311] ghes_edac: Can't register at EDAC core
> > > [ 22.065402] EDAC MC: bug in low-level driver: attempt to assign
> > > [ 22.065402] duplicate mc_idx 0 in add_mc_to_global_list()
> > > [ 22.077080] ghes_edac: Can't register at EDAC core
> > > [ 22.084140] EDAC MC: bug in low-level driver: attempt to assign
> > > [ 22.084140] duplicate mc_idx 0 in add_mc_to_global_list()
> > > [ 22.095789] ghes_edac: Can't register at EDAC core
> > > [ 22.102873] EDAC MC: bug in low-level driver: attempt to assign
> > > [ 22.102873] duplicate mc_idx 0 in add_mc_to_global_list()
> > > [ 22.115442] ghes_edac: Can't register at EDAC core
> > > [ 22.122536] EDAC MC: bug in low-level driver: attempt to assign
> > > [ 22.122536] duplicate mc_idx 0 in add_mc_to_global_list()
> > > [ 22.134344] ghes_edac: Can't register at EDAC core
> > > [ 22.141441] EDAC MC: bug in low-level driver: attempt to assign
> > > [ 22.141441] duplicate mc_idx 0 in add_mc_to_global_list()
> > > [ 22.153089] ghes_edac: Can't register at EDAC core
> > > [ 22.160161] EDAC MC: bug in low-level driver: attempt to assign
> > > [ 22.160161] duplicate mc_idx 0 in add_mc_to_global_list()
> > > [ 22.171810] ghes_edac: Can't register at EDAC core
> >
> > What I am more concerned is this here. In total this implies 8 ghes
> > users that all try to register a (single-instance) ghes mc device. For
> > non-x86 only one instance is allowed (see ghes_edac_register(), idx =
> > 0).

I also looked into this: With refcount_inc_checked() enabled, the
refcount is *not* increased from 0 to 1. Under the hood only
refcount_inc_not_zero() is called instead of refcount_inc(). So the
refcount is still zero after an edac mc device was registered. Instead
of sharing the edac mc device, the driver tries to allocate another mc
device for each GHESv2 entry in the HEST table. This causes the
'duplicate mc_idx' message. Also, it is ok to have multiple GHESv2
entries (your system seems to have 8 entries), e.g. to serve different
kind of errors in the system.

Thanks,

-Robert

\
 
 \ /
  Last update: 2019-11-22 12:30    [W:0.127 / U:0.464 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site