Revision d966564fcdc19e13eb6ba1fbe6b8101070339c3d authored by Linus Torvalds on 09 February 2017, 02:08:29 UTC, committed by Linus Torvalds on 09 February 2017, 02:08:29 UTC
This reverts commit 020eb3daaba2857b32c4cf4c82f503d6a00a67de. Gabriel C reports that it causes his machine to not boot, and we haven't tracked down the reason for it yet. Since the bug it fixes has been around for a longish time, we're better off reverting the fix for now. Gabriel says: "It hangs early and freezes with a lot RCU warnings. I bisected it down to : > Ruslan Ruslichenko (1): > x86/ioapic: Restore IO-APIC irq_chip retrigger callback Reverting this one fixes the problem for me.. The box is a PRIMERGY TX200 S5 , 2 socket , 2 x E5520 CPU(s) installed" and Ruslan and Thomas are currently stumped. Reported-and-bisected-by: Gabriel C <nix.or.die@gmail.com> Cc: Ruslan Ruslichenko <rruslich@cisco.com> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: stable@kernel.org # for the backport of the original commit Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
1 parent 3b802c9
memory-notifier-error-inject.c
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/memory.h>
#include "notifier-error-inject.h"
static int priority;
module_param(priority, int, 0);
MODULE_PARM_DESC(priority, "specify memory notifier priority");
static struct notifier_err_inject memory_notifier_err_inject = {
.actions = {
{ NOTIFIER_ERR_INJECT_ACTION(MEM_GOING_ONLINE) },
{ NOTIFIER_ERR_INJECT_ACTION(MEM_GOING_OFFLINE) },
{}
}
};
static struct dentry *dir;
static int err_inject_init(void)
{
int err;
dir = notifier_err_inject_init("memory", notifier_err_inject_dir,
&memory_notifier_err_inject, priority);
if (IS_ERR(dir))
return PTR_ERR(dir);
err = register_memory_notifier(&memory_notifier_err_inject.nb);
if (err)
debugfs_remove_recursive(dir);
return err;
}
static void err_inject_exit(void)
{
unregister_memory_notifier(&memory_notifier_err_inject.nb);
debugfs_remove_recursive(dir);
}
module_init(err_inject_init);
module_exit(err_inject_exit);
MODULE_DESCRIPTION("memory notifier error injection module");
MODULE_LICENSE("GPL");
MODULE_AUTHOR("Akinobu Mita <akinobu.mita@gmail.com>");
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...