Merge branches 'x86-alternatives-for-linus', 'x86-fpu-for-linus', 'x86-hwmon-for...
Linus Torvalds [Thu, 6 Jan 2011 19:11:50 +0000 (11:11 -0800)]
* 'x86-alternatives-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  x86, suspend: Avoid unnecessary smp alternatives switch during suspend/resume

* 'x86-fpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  x86-64, asm: Use fxsaveq/fxrestorq in more places

* 'x86-hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  x86, hwmon: Add core threshold notification to therm_throt.c

* 'x86-paravirt-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  x86, paravirt: Use native_halt on a halt, not native_safe_halt

* 'core-locking-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  locking, lockdep: Convert sprintf_symbol to %pS

* 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  irq: Better struct irqaction layout

1  2  3  4  5  6  7 
arch/x86/include/asm/alternative.h
arch/x86/include/asm/msr-index.h
arch/x86/kernel/alternative.c
arch/x86/kernel/smpboot.c
kernel/cpu.c

Simple merge
       #define MSR_AMD64_IBSDCLINAD             0xc0011038
       #define MSR_AMD64_IBSDCPHYSAD            0xc0011039
       #define MSR_AMD64_IBSCTL         0xc001103a
  +    #define MSR_AMD64_IBSBRTARGET            0xc001103b
  +    
 ++++++/* Fam 15h MSRs */
 ++++++#define MSR_F15H_PERF_CTL                0xc0010200
 ++++++#define MSR_F15H_PERF_CTR                0xc0010201
 + ++++
       /* Fam 10h MSRs */
       #define MSR_FAM10H_MMIO_CONF_BASE        0xc0010058
       #define FAM10H_MMIO_CONF_ENABLE          (1<<0)
@@@@@@@@ -653,33 -643,13 -642,9 -642,13 -642,13 -642,13 -642,13 +654,33 @@@@@@@@ void *__kprobes text_poke_smp(void *add
        return addr;
       }
       
 ++++++/**
 ++++++ * text_poke_smp_batch - Update instructions on a live kernel on SMP
 ++++++ * @params: an array of text_poke parameters
 ++++++ * @n: the number of elements in params.
 ++++++ *
 ++++++ * Modify multi-byte instruction by using stop_machine() on SMP. Since the
 ++++++ * stop_machine() is heavy task, it is better to aggregate text_poke requests
 ++++++ * and do it once if possible.
 ++++++ *
 ++++++ * Note: Must be called under get_online_cpus() and text_mutex.
 ++++++ */
 ++++++void __kprobes text_poke_smp_batch(struct text_poke_param *params, int n)
 ++++++{
 ++++++ struct text_poke_params tpp = {.params = params, .nparams = n};
 ++++++
 ++++++ atomic_set(&stop_machine_first, 1);
 ++++++ wrote_text = 0;
 ++++++ stop_machine(stop_machine_text_poke, (void *)&tpp, NULL);
 ++++++}
 ++++++
       #if defined(CONFIG_DYNAMIC_FTRACE) || defined(HAVE_JUMP_LABEL)
       
  -    unsigned char ideal_nop5[IDEAL_NOP_SIZE_5];
  +    #ifdef CONFIG_X86_64
  +    unsigned char ideal_nop5[5] = { 0x66, 0x66, 0x66, 0x66, 0x90 };
  +    #else
  +    unsigned char ideal_nop5[5] = { 0x3e, 0x8d, 0x74, 0x26, 0x00 };
  +    #endif
       
       void __init arch_init_ideal_nop5(void)
       {
Simple merge
diff --cc kernel/cpu.c
Simple merge