19 Jul, 2014

2 commits

  • It appears that the BayTrail-T class of hardware requires EFI in order
    to powerdown and reboot and no other reliable method exists.

    This quirk is generally applicable to all hardware that has the ACPI
    Hardware Reduced bit set, since usually ACPI would be the preferred
    method.

    Cc: Len Brown
    Cc: Mark Salter
    Cc: "Rafael J. Wysocki"
    Signed-off-by: Matt Fleming

    Matt Fleming
     
  • Implement efi_reboot(), which is really just a wrapper around the
    EfiResetSystem() EFI runtime service, but it does at least allow us to
    funnel all callers through a single location.

    It also simplifies the callsites since users no longer need to check to
    see whether EFI_RUNTIME_SERVICES are enabled.

    Cc: Tony Luck
    Tested-by: Mark Salter
    Signed-off-by: Matt Fleming

    Matt Fleming
     

07 May, 2014

1 commit

  • Certec BPC600 needs reboot=pci to actually reboot.

    Signed-off-by: Christian Gmeiner
    Cc: Matthew Garrett
    Cc: Li Aubrey
    Cc: Andrew Morton
    Cc: Dave Jones
    Cc: Fenghua Yu
    Cc: Linus Torvalds
    Link: http://lkml.kernel.org/r/1399446114-2147-1-git-send-email-christian.gmeiner@gmail.com
    Signed-off-by: Ingo Molnar

    Christian Gmeiner
     

16 Apr, 2014

1 commit

  • Steve reported a reboot hang and bisected it back to this commit:

    a4f1987e4c54 x86, reboot: Add EFI and CF9 reboot methods into the default list

    He heroically tested all reboot methods and found the following:

    reboot=t # triple fault ok
    reboot=k # keyboard ctrl FAIL
    reboot=b # BIOS ok
    reboot=a # ACPI FAIL
    reboot=e # EFI FAIL [system has no EFI]
    reboot=p # PCI 0xcf9 FAIL

    And I think it's pretty obvious that we should only try PCI 0xcf9 as a
    last resort - if at all.

    The other observation is that (on this box) we should never try
    the PCI reboot method, but close with either the 'triple fault'
    or the 'BIOS' (terminal!) reboot methods.

    Thirdly, CF9_COND is a total misnomer - it should be something like
    CF9_SAFE or CF9_CAREFUL, and 'CF9' should be 'CF9_FORCE' ...

    So this patch fixes the worst problems:

    - it orders the actual reboot logic to follow the reboot ordering
    pattern - it was in a pretty random order before for no good
    reason.

    - it fixes the CF9 misnomers and uses BOOT_CF9_FORCE and
    BOOT_CF9_SAFE flags to make the code more obvious.

    - it tries the BIOS reboot method before the PCI reboot method.
    (Since 'BIOS' is a terminal reboot method resulting in a hang
    if it does not work, this is essentially equivalent to removing
    the PCI reboot method from the default reboot chain.)

    - just for the miraculous possibility of terminal (resulting
    in hang) reboot methods of triple fault or BIOS returning
    without having done their job, there's an ordering between
    them as well.

    Reported-and-bisected-and-tested-by: Steven Rostedt
    Cc: Li Aubrey
    Cc: Linus Torvalds
    Cc: Matthew Garrett
    Link: http://lkml.kernel.org/r/20140404064120.GB11877@gmail.com
    Signed-off-by: Ingo Molnar

    Ingo Molnar
     

06 Mar, 2014

2 commits

  • Only CF9_COND is appropriate for inclusion in the default chain, not
    CF9; the latter will poke that register unconditionally, whereas
    CF9_COND will at least look for PCI configuration method #1 or #2
    first (a weak check, but better than nothing.)

    CF9 should be used for explicit system configuration (command line or
    DMI) only.

    Cc: Aubrey Li
    Cc: Matthew Garrett
    Link: http://lkml.kernel.org/r/53130A46.1010801@linux.intel.com
    Signed-off-by: H. Peter Anvin

    H. Peter Anvin
     
  • Reboot is the last service linux OS provides to the end user. We are
    supposed to make this function more robust than today. This patch adds
    all of the known reboot methods into the default attempt list. The
    machines requiring reboot=efi or reboot=p or reboot=bios get a chance
    to reboot automatically now.

    If there is a new reboot method emerged, we are supposed to add it to
    the default list as well, instead of adding the endless dmidecode entry.

    If one method required is in the default list in this patch but the
    machine reboot still hangs, that means some methods ahead of the
    required method cause the system hangs, then reboot the machine by
    passing reboot= arguments and submit the reboot dmidecode table quirk.

    We are supposed to remove the reboot dmidecode table from the kernel,
    but to be safe, we keep it. This patch prevents us from adding more.
    If you happened to have a machine listed in the reboot dmidecode
    table and this patch makes reboot work on your machine, please submit
    a patch to remove the quirk.

    The default reboot order with this patch is now:

    ACPI > KBD > ACPI > KBD > EFI > CF9_COND > BIOS

    Because BIOS and TRIPLE are mutually exclusive (either will either
    work or hang the machine) that method is not included.

    [ hpa: as with any changes to the reboot order, this patch will have
    to be monitored carefully for regressions. ]

    Signed-off-by: Aubrey Li
    Acked-by: Matthew Garrett
    Link: http://lkml.kernel.org/r/53130A46.1010801@linux.intel.com
    Signed-off-by: H. Peter Anvin

    Li, Aubrey
     

05 Dec, 2013

1 commit

  • Since erratum AVR31 in "Intel Atom Processor C2000 Product Family
    Specification Update" is now published, I added a justification
    comment for disabling IO APIC before Local APIC, as changed in commit:

    522e66464467 x86/apic: Disable I/O APIC before shutdown of the local APIC

    Signed-off-by: Fenghua Yu
    Link: http://lkml.kernel.org/r/1386202069-51515-1-git-send-email-fenghua.yu@intel.com
    Signed-off-by: H. Peter Anvin

    Fenghua Yu
     

12 Nov, 2013

1 commit

  • Pull x86 reboot changes from Ingo Molnar:
    "Misc changes - the only one with functional impact should be commit
    16c21ae5ca63 ("reboot: Allow specifying warm/cold reset for CF9 boot
    type") which extends cold/warm reboot handling to the 0xCF9 reboot
    method"

    * 'x86-reboot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/reboot: Correct pr_info() log message in the set_bios/pci/kbd_reboot()
    x86/reboot: Sort reboot DMI quirks by vendor
    x86/reboot: Remove the duplicate C6100 entry in the reboot quirks list
    reboot: Allow specifying warm/cold reset for CF9 boot type

    Linus Torvalds
     

07 Nov, 2013

1 commit

  • In reboot and crash path, when we shut down the local APIC, the I/O APIC is
    still active. This may cause issues because external interrupts
    can still come in and disturb the local APIC during shutdown process.

    To quiet external interrupts, disable I/O APIC before shutdown local APIC.

    Signed-off-by: Fenghua Yu
    Link: http://lkml.kernel.org/r/1382578212-4677-1-git-send-email-fenghua.yu@intel.com
    Cc:
    [ I suppose the 'issue' is a hang during shutdown. It's a fine change nevertheless. ]
    Signed-off-by: Ingo Molnar

    Fenghua Yu
     

25 Oct, 2013

1 commit

  • commit:

    c767a54ba065 x86/debug: Add KERN_ to bare printks, convert printks to pr_

    broke the log messages in the set_bios/pci/kbd_reboot() functions, by
    putting the reboot method string and quirk entry's ident string in the
    wrong order. This patch fixes it.

    Signed-off-by: Lan Tianyu
    Cc: holt@sgi.com
    Cc: davej@fedoraproject.org
    Cc: lenb@kernel.org
    Cc: rjw@rjwysocki.net
    Cc: awilliam@redhat.com
    Link: http://lkml.kernel.org/r/1382598693-29334-1-git-send-email-tianyu.lan@intel.com
    Signed-off-by: Ingo Molnar

    Lan Tianyu
     

06 Oct, 2013

1 commit


02 Oct, 2013

1 commit


27 Sep, 2013

2 commits


26 Sep, 2013

1 commit

  • In current implementation for reboot type CF9 and CF9_COND,
    warm and cold reset are not differentiated, and both are
    performed by writing 0x06 to port 0xCF9.

    This commit will differentiate warm and cold reset:

    For warm reset, write 0x06 to port 0xCF9;
    For cold reset, write 0x0E to port 0xCF9.

    [ hpa: This meaning of "cold" and "warm" reset is different from other
    reboot types use, where "warm" means "bypass BIOS POST". It is also
    not entirely clear that it actually solves any actual problem. However,
    it would seem fairly harmless to offer this additional option.

    Also note that we do not mask bit 3 in the "warm reset" case. This
    preserves the behavior on existing systems, including ones quirked
    to use CF9. It seems reasonable that on any system where the
    warm/cold distinction actually matters that bit 3 would be read as
    zero. ]

    From: Liu Chuansheng
    Signed-off-by: Li Fei
    Link: http://lkml.kernel.org/r/1377072837.24556.2.camel@fli24-HP-Compaq-8100-Elite-CMT-PC
    Signed-off-by: H. Peter Anvin
    Signed-off-by: Ingo Molnar

    Li Fei
     

25 Sep, 2013

1 commit


23 Sep, 2013

1 commit


10 Jul, 2013

2 commits

  • Merge together the unicore32, arm, and x86 reboot= command line
    parameter handling.

    Signed-off-by: Robin Holt
    Cc: H. Peter Anvin
    Cc: Russell King
    Cc: Guan Xuetao
    Cc: Russ Anderson
    Cc: Robin Holt
    Acked-by: Ingo Molnar
    Acked-by: Guan Xuetao
    Acked-by: Russell King
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Robin Holt
     
  • Prepare for the moving the parsing of reboot= to the generic kernel code
    by making reboot_mode into a more generic form.

    Signed-off-by: Robin Holt
    Cc: H. Peter Anvin
    Cc: Miguel Boton
    Cc: Russ Anderson
    Cc: Robin Holt
    Cc: Russell King
    Cc: Guan Xuetao
    Acked-by: Ingo Molnar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Robin Holt
     

31 Jan, 2013

1 commit

  • Originally 'efi_enabled' indicated whether a kernel was booted from
    EFI firmware. Over time its semantics have changed, and it now
    indicates whether or not we are booted on an EFI machine with
    bit-native firmware, e.g. 64-bit kernel with 64-bit firmware.

    The immediate motivation for this patch is the bug report at,

    https://bugs.launchpad.net/ubuntu-cdimage/+bug/1040557

    which details how running a platform driver on an EFI machine that is
    designed to run under BIOS can cause the machine to become
    bricked. Also, the following report,

    https://bugzilla.kernel.org/show_bug.cgi?id=47121

    details how running said driver can also cause Machine Check
    Exceptions. Drivers need a new means of detecting whether they're
    running on an EFI machine, as sadly the expression,

    if (!efi_enabled)

    hasn't been a sufficient condition for quite some time.

    Users actually want to query 'efi_enabled' for different reasons -
    what they really want access to is the list of available EFI
    facilities.

    For instance, the x86 reboot code needs to know whether it can invoke
    the ResetSystem() function provided by the EFI runtime services, while
    the ACPI OSL code wants to know whether the EFI config tables were
    mapped successfully. There are also checks in some of the platform
    driver code to simply see if they're running on an EFI machine (which
    would make it a bad idea to do BIOS-y things).

    This patch is a prereq for the samsung-laptop fix patch.

    Cc: David Airlie
    Cc: Corentin Chary
    Cc: Matthew Garrett
    Cc: Dave Jiang
    Cc: Olof Johansson
    Cc: Peter Jones
    Cc: Colin Ian King
    Cc: Steve Langasek
    Cc: Tony Luck
    Cc: Konrad Rzeszutek Wilk
    Cc: Rafael J. Wysocki
    Cc:
    Signed-off-by: Matt Fleming
    Signed-off-by: H. Peter Anvin

    Matt Fleming
     

04 Oct, 2012

1 commit

  • Remove the quirk for the SBC FITPC. It seems ot have been
    required when the default was kbd reboot, but no longer required
    now that the default is acpi reboot. Furthermore, BIOS reboot no
    longer works for this board as of 2.6.39 or any of the 3.x
    kernels.

    Signed-off-by: David Hooper
    Signed-off-by: Alan Cox
    Link: http://lkml.kernel.org/r/20121002142635.17403.59959.stgit@localhost.localdomain
    Signed-off-by: Ingo Molnar

    David Hooper
     

23 Jul, 2012

2 commits

  • Pull x86/reboot changes from Ingo Molnar:
    "Now that the revampted x86 real-mode trampoline code is upstream and
    seems to be working well, we can extend the 64-bit reboot code to be
    as capable as the 32-bit one."

    * 'x86-reboot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86-64, reboot: Be more paranoid in 64-bit reboot=bios
    x86, reboot: Drop redundant write of reboot_mode
    x86-64, reboot: Allow reboot=bios and reboot-cpu override on x86-64

    Linus Torvalds
     
  • Pull debug-for-linus git tree from Ingo Molnar.

    Fix up trivial conflict in arch/x86/kernel/cpu/perf_event_intel.c due to
    a printk() having changed to a pr_info() differently in the two branches.

    * 'x86-debug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86: Move call to print_modules() out of show_regs()
    x86/mm: Mark free_initrd_mem() as __init
    x86/microcode: Mark microcode_id[] as __initconst
    x86/nmi: Clean up register_nmi_handler() usage
    x86: Save cr2 in NMI in case NMIs take a page fault (for i386)
    x86: Remove cmpxchg from i386 NMI nesting code
    x86: Save cr2 in NMI in case NMIs take a page fault
    x86/debug: Add KERN_ to bare printks, convert printks to pr_

    Linus Torvalds
     

30 Jun, 2012

1 commit


21 Jun, 2012

1 commit

  • We write reboot_mode to BIOS location 0x472 in
    native_machine_emergency_restart() (reboot.c:542) already, there is no
    need to then write it again in machine_real_restart().

    This means nothing gets written there for MRR_APM, but the APM call is
    a poweroff call and doesn't use this memory location.

    Link: http://lkml.kernel.org/n/tip-3i0pfh44c1e3jv5lab0cf7sc@git.kernel.org
    Signed-off-by: H. Peter Anvin

    H. Peter Anvin
     

20 Jun, 2012

1 commit


18 Jun, 2012

1 commit


06 Jun, 2012

2 commits

  • When rebooting our 24 CPU Westmere servers with 3.4-rc6, we
    always see this warning msg:

    Restarting system.
    machine restart
    ------------[ cut here ]------------
    WARNING: at arch/x86/kernel/smp.c:125
    native_smp_send_reschedule+0x74/0xa7() Hardware name: X8DTN
    Modules linked in: igb [last unloaded: scsi_wait_scan]
    Pid: 1, comm: systemd-shutdow Not tainted 3.4.0-rc6+ #22
    Call Trace:
    [] warn_slowpath_common+0x7e/0x96
    [] warn_slowpath_null+0x15/0x17
    [] native_smp_send_reschedule+0x74/0xa7
    [] trigger_load_balance+0x279/0x2a6
    [] scheduler_tick+0xe0/0xe9
    [] update_process_times+0x60/0x70
    [] tick_sched_timer+0x68/0x92
    [] __run_hrtimer+0xb3/0x13c
    [] ? tick_nohz_handler+0xd0/0xd0
    [] hrtimer_interrupt+0xdb/0x198
    [] smp_apic_timer_interrupt+0x81/0x94
    [] apic_timer_interrupt+0x67/0x70
    [] ? default_send_IPI_mask_allbutself_phys+0xb4/0xc4
    [] physflat_send_IPI_allbutself+0x12/0x14
    [] native_nmi_stop_other_cpus+0x8a/0xd6
    [] native_machine_shutdown+0x50/0x67
    [] machine_shutdown+0xa/0xc
    [] native_machine_restart+0x20/0x32
    [] machine_restart+0xa/0xc
    [] kernel_restart+0x47/0x4c
    [] sys_reboot+0x13e/0x17c
    [] ? _raw_spin_unlock_bh+0x10/0x12
    [] ? bdi_queue_work+0xcf/0xd8
    [] ? __bdi_start_writeback+0xae/0xb7
    [] ? iterate_supers+0xa3/0xb7
    [] system_call_fastpath+0x16/0x1b
    ---[ end trace 320af5cb1cb60c5b ]---

    The root cause seems to be the
    default_send_IPI_mask_allbutself_phys() takes quite some time (I
    measured it could be several ms) to complete sending NMIs to all
    the other 23 CPUs, and for HZ=250/1000 system, the time is long
    enough for a timer interrupt to happen, which will in turn
    trigger to kick load balance to a stopped CPU and cause this
    warning in native_smp_send_reschedule().

    So disabling the local irq before stop_other_cpu() can fix this
    problem (tested 25 times reboot ok), and it is fine as there
    should be nobody caring the timer interrupt in such reboot
    stage.

    The latest 3.4 kernel slightly changes this behavior by sending
    REBOOT_VECTOR first and only send NMI_VECTOR if the REBOOT_VCTOR
    fails, and this patch is still needed to prevent the problem.

    Signed-off-by: Feng Tang
    Acked-by: Don Zickus
    Cc: Peter Zijlstra
    Link: http://lkml.kernel.org/r/20120530231541.4c13433a@feng-i7
    Signed-off-by: Ingo Molnar

    Feng Tang
     
  • Use a more current logging style:

    - Bare printks should have a KERN_ for consistency's sake
    - Add pr_fmt where appropriate
    - Neaten some macro definitions
    - Convert some Ok output to OK
    - Use "%s: ", __func__ in pr_fmt for summit
    - Convert some printks to pr_

    Message output is not identical in all cases.

    Signed-off-by: Joe Perches
    Cc: levinsasha928@gmail.com
    Link: http://lkml.kernel.org/r/1337655007.24226.10.camel@joe2Laptop
    [ merged two similar patches, tidied up the changelog ]
    Signed-off-by: Ingo Molnar

    Joe Perches
     

05 Jun, 2012

1 commit


30 May, 2012

1 commit

  • Pull x86 trampoline rework from H. Peter Anvin:
    "This code reworks all the "trampoline"/"realmode" code (various bits
    that need to live in the first megabyte of memory, most but not all of
    which runs in real mode at some point) in the kernel into a single
    object. The main reason for doing this is that it eliminates the last
    place in the kernel where we needed pages to be mapped RWX. This code
    separates all that code into proper R/RW/RX pages."

    Fix up conflicts in arch/x86/kernel/Makefile (mca removed next to reboot
    code), and arch/x86/kernel/reboot.c (reboot code moved around in one
    branch, modified in this one), and arch/x86/tools/relocs.c (mostly same
    code came in earlier due to working around the ld bugs just before the
    3.4 release).

    Also remove stale x86-relocs entry from scripts/.gitignore as per Peter
    Anvin.

    * commit '61f5446169046c217a5479517edac3a890c3bee7': (36 commits)
    x86, realmode: Move end signature into header.S
    x86, relocs: When printing an error, say relative or absolute
    x86, relocs: More relocations which may end up as absolute
    x86, relocs: Workaround for binutils 2.22.52.0.1 section bug
    xen-acpi-processor: Add missing #include
    acpi, bgrd: Add missing to drivers/acpi/bgrt.c
    x86, realmode: Change EFER to a single u64 field
    x86, realmode: Move kernel/realmode.c to realmode/init.c
    x86, realmode: Move not-common bits out of trampoline_common.S
    x86, realmode: Mask out EFER.LMA when saving trampoline EFER
    x86, realmode: Fix no cache bits test in reboot_32.S
    x86, realmode: Make sure all generated files are listed in targets
    x86, realmode: build fix: remove duplicate build
    x86, realmode: read cr4 and EFER from kernel for 64-bit trampoline
    x86, realmode: fixes compilation issue in tboot.c
    x86, realmode: move relocs from scripts/ to arch/x86/tools
    x86, realmode: header for trampoline code
    x86, realmode: flattened rm hierachy
    x86, realmode: don't copy real_mode_header
    x86, realmode: fix 64-bit wakeup sequence
    ...

    Linus Torvalds
     

09 May, 2012

2 commits


07 Feb, 2012

2 commits

  • This commit simply cleans up the style used in this file to fall
    in line with what's specified in CodingStyle. Mostly comment
    changes, with a single removal of unneeded braces.

    Note that the comments for all the DMI quirks in
    reboot_dmi_table now all line up consistently using tabs instead
    of spaces.

    Signed-off-by: Michael D Labriola
    Link: http://lkml.kernel.org/n/tip-lde9yy7qsomh0sdqevn7xp56@git.kernel.org
    [ Fixed a few small details. ]
    Signed-off-by: Ingo Molnar

    Michael D Labriola
     
  • This commit reduces the X86_32 reboot_dmi_table and the X86_64
    pci_reboot_dmi_table into a single table with a single set of
    functions (e.g., only 1 call to core_initcall).

    The table entries that use set_bios_reboot are grouped together
    inside a #define CONFIG_X86_32 block.

    Note that there's a single entry that uses set_kbd_reboot, which
    used to be available only on X86_32. This commit moves that
    entry outside the X86_32 block because it seems it never should
    have been in there. There's multiple places in reboot.c that
    assume KBD is valid regardless of X86_32/X86_64.

    Signed-off-by: Michael D Labriola
    Cc: Matthew Garrett
    Link: http://lkml.kernel.org/n/tip-lv3aliubas2l3aenq8v3uklk@git.kernel.org
    Signed-off-by: Ingo Molnar

    Michael D Labriola
     

30 Jan, 2012

2 commits

  • This commit removes the reboot quirk originally added by commit
    e19e074 ("x86: Fix reboot problem on VersaLogic Menlow boards").

    Testing with a VersaLogic Ocelot (VL-EPMs-21a rev 1.00 w/ BIOS
    6.5.102) revealed the following regarding the reboot hang
    problem:

    - v2.6.37 reboot=bios was needed.

    - v2.6.38-rc1: behavior changed, reboot=acpi is needed,
    reboot=kbd and reboot=bios results in system hang.

    - v2.6.38: VersaLogic patch (e19e074 "x86: Fix reboot problem on
    VersaLogic Menlow boards") was applied prior to v2.6.38-rc7. This
    patch sets a quirk for VersaLogic Menlow boards that forces the use
    of reboot=bios, which doesn't work anymore.

    - v3.2: It seems that commit 660e34c ("x86: Reorder reboot method
    preferences") changed the default reboot method to acpi prior to
    v3.0-rc1, which means the default behavior is appropriate for the
    Ocelot. No VersaLogic quirk is required.

    The Ocelot board used for testing can successfully reboot w/out
    having to pass any reboot= arguments for all 3 current versions
    of the BIOS.

    Signed-off-by: Michael D Labriola
    Cc: Matthew Garrett
    Cc: Michael D Labriola
    Cc: Kushal Koolwal
    Cc: Linus Torvalds
    Link: http://lkml.kernel.org/r/87vcnub9hu.fsf@gmail.com
    Signed-off-by: Ingo Molnar

    Michael D Labriola
     
  • Skip DMI checks for vendor specific reboot quirks if the user
    passed in a reboot= arg on the command line - we should never
    override user choices.

    Signed-off-by: Michael D Labriola
    Cc: Alan Cox
    Cc: Michael D Labriola
    Cc: Matthew Garrett
    Cc: Linus Torvalds
    Link: http://lkml.kernel.org/r/87wr8ab9od.fsf@gmail.com
    Signed-off-by: Ingo Molnar

    Michael D Labriola
     

05 Dec, 2011

2 commits

  • Looks like on some Acer Aspire 1s with older bioses, reboot via bios
    fails. It works on my machine, (with BIOS version 0.3310) but
    not on some others (BIOS version 0.3309).

    There's a log of problems at:

    https://bbs.archlinux.org/viewtopic.php?id=124136

    This patch adds a different callback to the reboot quirk table,
    to allow rebooting via keybaord controller.

    Reported-by: Uroš Vampl
    Tested-by: Vasily Khoruzhick
    Signed-off-by: Peter Chubb
    Cc: Don Zickus
    Cc: Peter Zijlstra
    Cc: stable@kernel.org
    Link: http://lkml.kernel.org/r/1323093233-9481-1-git-send-email-anarsoul@gmail.com
    Signed-off-by: Ingo Molnar

    Peter Chubb
     
  • Dell OptiPlex 990 is known to require PCI reboot, so add it to
    the reboot blacklist in pci_reboot_dmi_table[].

    Signed-off-by: Rafael J. Wysocki
    Link: http://lkml.kernel.org/r/201111160019.51303.rjw@sisk.pl
    Signed-off-by: Ingo Molnar

    Rafael J. Wysocki
     

10 Oct, 2011

1 commit

  • Just convert all the files that have an nmi handler to the new routines.
    Most of it is straight forward conversion. A couple of places needed some
    tweaking like kgdb which separates the debug notifier from the nmi handler
    and mce removes a call to notify_die.

    [Thanks to Ying for finding out the history behind that mce call

    https://lkml.org/lkml/2010/5/27/114

    And Boris responding that he would like to remove that call because of it

    https://lkml.org/lkml/2011/9/21/163]

    The things that get converted are the registeration/unregistration routines
    and the nmi handler itself has its args changed along with code removal
    to check which list it is on (most are on one NMI list except for kgdb
    which has both an NMI routine and an NMI Unknown routine).

    Signed-off-by: Don Zickus
    Signed-off-by: Peter Zijlstra
    Acked-by: Corey Minyard
    Cc: Jason Wessel
    Cc: Andi Kleen
    Cc: Robert Richter
    Cc: Huang Ying
    Cc: Corey Minyard
    Cc: Jack Steiner
    Link: http://lkml.kernel.org/r/1317409584-23662-4-git-send-email-dzickus@redhat.com
    Signed-off-by: Ingo Molnar

    Don Zickus