public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Borislav Petkov <borislav.petkov@amd.com>
To: "H. Peter Anvin" <hpa@zytor.com>
Cc: Pavel Machek <pavel@ucw.cz>, Doug Thompson <norsk5@yahoo.com>,
	Ingo Molnar <mingo@elte.hu>, Thomas Gleixner <tglx@linutronix.de>,
	x86 <x86@kernel.org>, LKML <linux-kernel@vger.kernel.org>
Subject: Re: [RFC] amd64_edac: syndromes loading
Date: Thu, 5 Nov 2009 14:27:58 +0100	[thread overview]
Message-ID: <20091105132758.GC17984@aftab> (raw)
In-Reply-To: <4AEE0CAA.4070403@zytor.com>

Hi,

sorry for the delay, I had to talk to the hardware guys about those
tables.

On Mon, Nov 02, 2009 at 07:33:14AM +0900, H. Peter Anvin wrote:
> >>Alternatively, we could make the syndromes builtin thus removing the
> >>requirement to go to userspace for the loading. For that we'll need
> >>two new .c files in drivers/edac/ which represent the x4 and x8 tables
> >>respectively:
> >>
> >>unsigned short x8_raw_data[] = {
> >>         0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
> >>         0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
> >>         0x0000, 0x0100, 0x0001, 0x0101, 0x01B8, 0x015C, 0x012E, 0x01C6, 0x0163,
> >>         0x01FD, 0x0189, 0x019D, 0xB801, 0x5C01, 0x2E01, 0xC601, 0x6301, 0xFD01,
> >>         0x8901, 0x9D01, 0x0200, 0x0002, 0x0202, 0x0201, 0x02B8, 0x025C, 0x02FD,
> >>	....
> >>
> >>The drawback with these is that they'll always be builtin, enlarging
> >>kernel code by 10-15K although only one of them is in use.
> >
> >I believe that 15K is reasonable price to pay for not having to
> >install another 'firmware' file.
> 
> a) aren't these computable somehow?  If so, it's probably easier to
> include the algorithm in the kernel rather than a table.

That's a no-go since it would involve IP disclosure.

> b) "I believe that 15K is reasonable price to pay for not having to
> install another 'firmware' file."  I think that's a tradeoff a lot
> of people would *not* choose to make.  This is of course why we have
> (or at least, should have) to either compile in firmware blobs or
> not.

The good news is they've come up with a modified algorithm which will
require a smaller table, roughly 1/4th the size of the current 10K one.
Now, on a second thought and IMHO, we should simply add another .c file
instantiating those two x4 and x8 tables statically and linking them
into the edac code. This way you

1) don't have the additional complexity of adding firmware handling code
and thus don't add a dependency on the firmware API

2) don't have to actually carry two firmware images with the kernel

See, the natural use case for those tables are big machines which do not
care about 4K memory wasted in ECC decoding tables when the recovery
from the missed early warnings of a failing DIMM module is much more
expensive.

Hmm... ?

-- 
Regards/Gruss,
Boris.

Operating | Advanced Micro Devices GmbH
  System  | Karl-Hammerschmidt-Str. 34, 85609 Dornach b. München, Germany
 Research | Geschäftsführer: Andrew Bowd, Thomas M. McCoy, Giuliano Meroni
  Center  | Sitz: Dornach, Gemeinde Aschheim, Landkreis München
  (OSRC)  | Registergericht München, HRB Nr. 43632


  reply	other threads:[~2009-11-05 13:28 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-10-28 16:35 [RFC] amd64_edac: syndromes loading Borislav Petkov
2009-10-28 16:37 ` [PATCH 1/2] amd64_edac: load syndrome table through firmware API Borislav Petkov
2009-10-28 16:38 ` [PATCH 2/2] amd64_edac: syndromes housekeeping Borislav Petkov
2009-10-28 17:15 ` [RFC] amd64_edac: syndromes loading Doug Thompson
2009-10-28 17:28   ` Borislav Petkov
2009-11-01 21:13     ` Pavel Machek
2009-11-01 22:33       ` H. Peter Anvin
2009-11-05 13:27         ` Borislav Petkov [this message]
2009-11-05 21:15           ` Doug Thompson
2009-11-05 22:17           ` Pavel Machek
2009-11-06 13:20             ` Borislav Petkov
2009-11-12 18:40               ` Borislav Petkov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20091105132758.GC17984@aftab \
    --to=borislav.petkov@amd.com \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=norsk5@yahoo.com \
    --cc=pavel@ucw.cz \
    --cc=tglx@linutronix.de \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox