<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/acpi/apei, branch linux-3.1.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.1.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.1.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2011-08-11T19:42:09Z</updated>
<entry>
<title>ACPI APEI: Add Kconfig option IRQ_WORK for GHES</title>
<updated>2011-08-11T19:42:09Z</updated>
<author>
<name>Chen Gong</name>
</author>
<published>2011-08-10T02:46:22Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=03ba176a29dae5b4849f45c0b5c89b9d78baa2c6'/>
<id>urn:sha1:03ba176a29dae5b4849f45c0b5c89b9d78baa2c6</id>
<content type='text'>
IRQ_WORK is used by GHES, but it is selected by PERF_EVENT.
For now PERF_EVENT is selected by x86 by default, but
in concept, IRQ_WORK should be selected by GHES, not by others.

Signed-off-by: Chen Gong &lt;gong.chen@linux.intel.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
<entry>
<title>APEI: Fix WHEA _OSC call</title>
<updated>2011-08-11T16:18:38Z</updated>
<author>
<name>Matthew Garrett</name>
</author>
<published>2011-08-11T16:06:28Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b3b46d76d0fcbb1f737107cec1a1ee87bc5e5fd3'/>
<id>urn:sha1:b3b46d76d0fcbb1f737107cec1a1ee87bc5e5fd3</id>
<content type='text'>
Bit 0 of the support parameter to the OSC call should be set in order to
indicate that the OS supports the WHEA mechanism. Stuart Hayes tracked
an APEI issue on some Dell platforms down to this.

Reported-by: Stuart Hayes &lt;Stuart_Hayes@Dell.com&gt;
Signed-off-by: Matthew Garrett &lt;mjg@redhat.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'apei' into apei-release</title>
<updated>2011-08-03T15:30:42Z</updated>
<author>
<name>Len Brown</name>
</author>
<published>2011-08-03T15:30:42Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d0e323b47057f4492b8fa22345f38d80a469bf8d'/>
<id>urn:sha1:d0e323b47057f4492b8fa22345f38d80a469bf8d</id>
<content type='text'>
Some trivial conflicts due to other various merges
adding to the end of common lists sooner than this one.

	arch/ia64/Kconfig
	arch/powerpc/Kconfig
	arch/x86/Kconfig
	lib/Kconfig
	lib/Makefile

Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
<entry>
<title>ACPI, APEI, EINJ Param support is disabled by default</title>
<updated>2011-08-03T15:15:59Z</updated>
<author>
<name>Huang Ying</name>
</author>
<published>2011-07-20T08:09:29Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c3e6088e1036f8084bc7444b38437da136b7588b'/>
<id>urn:sha1:c3e6088e1036f8084bc7444b38437da136b7588b</id>
<content type='text'>
EINJ parameter support is only usable for some specific BIOS.
Originally, it is expected to have no harm for BIOS does not support
it.  But now, we found it will cause issue (memory overwriting) for
some BIOS.  So param support is disabled by default and only enabled
when newly added module parameter named "param_extension" is
explicitly specified.

Signed-off-by: Huang Ying &lt;ying.huang@intel.com&gt;
Cc: Matthew Garrett &lt;mjg@redhat.com&gt;
Acked-by: Don Zickus &lt;dzickus@redhat.com&gt;
Acked-by: Tony Luck &lt;tony.luck@intel.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
<entry>
<title>APEI GHES: 32-bit buildfix</title>
<updated>2011-08-03T15:15:59Z</updated>
<author>
<name>Len Brown</name>
</author>
<published>2011-08-02T22:00:21Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=70cb6e1da00db6c9212e6fd69bd96fd41c797077'/>
<id>urn:sha1:70cb6e1da00db6c9212e6fd69bd96fd41c797077</id>
<content type='text'>
drivers/acpi/apei/ghes.c:542: warning: integer overflow in expression
drivers/acpi/apei/ghes.c:619: warning: integer overflow in expression

ghes.c:(.text+0x46289): undefined reference to `__udivdi3'
  in function ghes_estatus_cache_add().

Reported-by: Randy Dunlap &lt;rdunlap@xenotime.net&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
<entry>
<title>ACPI, APEI, GHES: Add hardware memory error recovery support</title>
<updated>2011-08-03T15:15:58Z</updated>
<author>
<name>Huang Ying</name>
</author>
<published>2011-07-13T05:14:28Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ba61ca4aab47441f1c6cec28a9a6aa0489fd1df3'/>
<id>urn:sha1:ba61ca4aab47441f1c6cec28a9a6aa0489fd1df3</id>
<content type='text'>
memory_failure_queue() is called when recoverable memory errors are
notified by firmware to do the recovery work.

Signed-off-by: Huang Ying &lt;ying.huang@intel.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
<entry>
<title>ACPI, APEI, GHES, Error records content based throttle</title>
<updated>2011-08-03T15:15:57Z</updated>
<author>
<name>Huang Ying</name>
</author>
<published>2011-07-13T05:14:26Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=152cef40a808d3034e383465b3f7d6783613e458'/>
<id>urn:sha1:152cef40a808d3034e383465b3f7d6783613e458</id>
<content type='text'>
printk is used by GHES to report hardware errors.  Ratelimit is
enforced on the printk to avoid too many hardware error reports in
kernel log.  Because there may be thousands or even millions of
corrected hardware errors during system running.

Currently, a simple scheme is used.  That is, the total number of
hardware error reporting is ratelimited.  This may cause some issues
in practice.

For example, there are two kinds of hardware errors occurred in
system.  One is corrected memory error, because the fault memory
address is accessed frequently, there may be hundreds error report
per-second.  The other is corrected PCIe AER error, it will be
reported once per-second.  Because they share one ratelimit control
structure, it is highly possible that only memory error is reported.

To avoid the above issue, an error record content based throttle
algorithm is implemented in the patch.  Where after the first
successful reporting, all error records that are same are throttled for
some time, to let other kinds of error records have the opportunity to
be reported.

In above example, the memory errors will be throttled for some time,
after being printked.  Then the PCIe AER error will be printked
successfully.

Signed-off-by: Huang Ying &lt;ying.huang@intel.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
<entry>
<title>ACPI, APEI, GHES, printk support for recoverable error via NMI</title>
<updated>2011-08-03T15:15:57Z</updated>
<author>
<name>Huang Ying</name>
</author>
<published>2011-07-13T05:14:25Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=67eb2e99076708cc790019a6a08ca3e0ae130a3a'/>
<id>urn:sha1:67eb2e99076708cc790019a6a08ca3e0ae130a3a</id>
<content type='text'>
Some APEI GHES recoverable errors are reported via NMI, but printk is
not safe in NMI context.

To solve the issue, a lock-less memory allocator is used to allocate
memory in NMI handler, save the error record into the allocated
memory, put the error record into a lock-less list.  On the other
hand, an irq_work is used to delay the operation from NMI context to
IRQ context.  The irq_work IRQ handler will remove nodes from
lock-less list, printk the error record and do some further processing
include recovery operation, then free the memory.

Signed-off-by: Huang Ying &lt;ying.huang@intel.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
<entry>
<title>pstore: Make "part" unsigned</title>
<updated>2011-07-22T23:14:29Z</updated>
<author>
<name>Matthew Garrett</name>
</author>
<published>2011-07-21T20:57:54Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b94fdd077eef5e6cab56836bf62695b497946716'/>
<id>urn:sha1:b94fdd077eef5e6cab56836bf62695b497946716</id>
<content type='text'>
We'll never have a negative part, so just make this an unsigned int.

Signed-off-by: Matthew Garrett &lt;mjg@redhat.com&gt;
Signed-off-by: Tony Luck &lt;tony.luck@intel.com&gt;
</content>
</entry>
<entry>
<title>pstore: Add extra context for writes and erases</title>
<updated>2011-07-22T23:14:20Z</updated>
<author>
<name>Matthew Garrett</name>
</author>
<published>2011-07-21T20:57:53Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=56280682ceeef74b692b3e21d1872049eea7c887'/>
<id>urn:sha1:56280682ceeef74b692b3e21d1872049eea7c887</id>
<content type='text'>
EFI only provides small amounts of individual storage, and conventionally
puts metadata in the storage variable name. Rather than add a metadata
header to the (already limited) variable storage, it's easier for us to
modify pstore to pass all the information we need to construct a unique
variable name to the appropriate functions.

Signed-off-by: Matthew Garrett &lt;mjg@redhat.com&gt;
Signed-off-by: Tony Luck &lt;tony.luck@intel.com&gt;
</content>
</entry>
</feed>
