The patch titled paravirt: i386: Get paravirt ops to compile has been removed from the -mm tree. Its filename was paravirt-i386-get-paravirt-ops-to-compile.patch This patch was dropped because it was folded into paravirt-i386-patch-inline-replacements-for.patch ------------------------------------------------------ Subject: paravirt: i386: Get paravirt ops to compile TBD should be folded into the original patches Signed-off-by: Andi Kleen <ak@xxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxx> --- include/asm-i386/desc.h | 6 +++--- include/asm-i386/paravirt.h | 16 ++++++++++------ include/asm-i386/processor.h | 2 ++ include/asm-i386/spinlock.h | 14 ++++++++------ 4 files changed, 23 insertions(+), 15 deletions(-) diff -puN include/asm-i386/desc.h~paravirt-i386-get-paravirt-ops-to-compile include/asm-i386/desc.h --- a/include/asm-i386/desc.h~paravirt-i386-get-paravirt-ops-to-compile +++ a/include/asm-i386/desc.h @@ -92,6 +92,9 @@ static inline void write_dt_entry(void * #define write_gdt_entry(dt, entry, a, b) write_dt_entry(dt, entry, a, b) #define write_idt_entry(dt, entry, a, b) write_dt_entry(dt, entry, a, b) +#define set_ldt native_set_ldt +#endif /* CONFIG_PARAVIRT */ + static inline void _set_gate(int gate, unsigned int type, void *addr, unsigned short seg) { __u32 a, b; @@ -108,9 +111,6 @@ static inline void __set_tss_desc(unsign write_gdt_entry(get_cpu_gdt_table(cpu), entry, a, b); } -#define set_ldt native_set_ldt -#endif /* CONFIG_PARAVIRT */ - static inline fastcall void native_set_ldt(const void *addr, unsigned int entries) { diff -puN include/asm-i386/paravirt.h~paravirt-i386-get-paravirt-ops-to-compile include/asm-i386/paravirt.h --- a/include/asm-i386/paravirt.h~paravirt-i386-get-paravirt-ops-to-compile +++ a/include/asm-i386/paravirt.h @@ -454,16 +454,20 @@ static inline unsigned long __raw_local_ return f; } -#define CLI_STRING paravirt_alt("pushl %ecx; pushl %edx;" \ - "call *paravirt_ops+PARAVIRT_irq_disable;" \ - "popl %edx; popl %ecx", \ +#define CLI_STRING paravirt_alt("pushl %%ecx; pushl %%edx;" \ + "call *paravirt_ops+%c[irq_disable];" \ + "popl %%edx; popl %%ecx", \ PARAVIRT_IRQ_DISABLE, CLBR_EAX) -#define STI_STRING paravirt_alt("pushl %ecx; pushl %edx;" \ - "call *paravirt_ops+PARAVIRT_irq_enable;" \ - "popl %edx; popl %ecx", \ +#define STI_STRING paravirt_alt("pushl %%ecx; pushl %%edx;" \ + "call *paravirt_ops+%c[irq_enable];" \ + "popl %%edx; popl %%ecx", \ PARAVIRT_IRQ_ENABLE, CLBR_EAX) #define CLI_STI_CLOBBERS , "%eax" +#define CLI_STI_INPUT_ARGS \ + , \ + [irq_disable] "i" (offsetof(struct paravirt_ops, irq_disable)), \ + [irq_enable] "i" (offsetof(struct paravirt_ops, irq_enable)) #else /* __ASSEMBLY__ */ diff -puN include/asm-i386/processor.h~paravirt-i386-get-paravirt-ops-to-compile include/asm-i386/processor.h --- a/include/asm-i386/processor.h~paravirt-i386-get-paravirt-ops-to-compile +++ a/include/asm-i386/processor.h @@ -515,6 +515,7 @@ static inline void load_esp0(struct tss_ wrmsr(MSR_IA32_SYSENTER_CS, thread->sysenter_cs, 0); } } +#endif #define start_thread(regs, new_eip, new_esp) do { \ __asm__("movl %0,%%fs": :"r" (0)); \ @@ -528,6 +529,7 @@ static inline void load_esp0(struct tss_ regs->esp = new_esp; \ } while (0) +#ifndef CONFIG_PARAVIRT /* * These special macros can be used to get or set a debugging register */ diff -puN include/asm-i386/spinlock.h~paravirt-i386-get-paravirt-ops-to-compile include/asm-i386/spinlock.h --- a/include/asm-i386/spinlock.h~paravirt-i386-get-paravirt-ops-to-compile +++ a/include/asm-i386/spinlock.h @@ -13,6 +13,7 @@ #define CLI_STRING "cli" #define STI_STRING "sti" #define CLI_STI_CLOBBERS +#define CLI_STI_INPUT_ARGS #endif /* CONFIG_PARAVIRT */ /* @@ -58,26 +59,27 @@ static inline void __raw_spin_lock_flags { asm volatile( "\n1:\t" - LOCK_PREFIX " ; decb %0\n\t" + LOCK_PREFIX " ; decb %[slock]\n\t" "jns 5f\n" "2:\t" - "testl $0x200, %1\n\t" + "testl $0x200, %[flags]\n\t" "jz 4f\n\t" STI_STRING "\n" "3:\t" "rep;nop\n\t" - "cmpb $0, %0\n\t" + "cmpb $0, %[slock]\n\t" "jle 3b\n\t" CLI_STRING "\n\t" "jmp 1b\n" "4:\t" "rep;nop\n\t" - "cmpb $0, %0\n\t" + "cmpb $0, %[slock]\n\t" "jg 1b\n\t" "jmp 4b\n" "5:\n\t" - : "+m" (lock->slock) - : "r" (flags) + : [slock] "+m" (lock->slock) + : [flags] "r" (flags) + CLI_STI_INPUT_ARGS : "memory" CLI_STI_CLOBBERS); } #endif _ Patches currently in -mm which might be from ak@xxxxxxx are origin.patch x86_64-mm-i386-reloc-data-4k-aligned.patch htirq-refactor-so-we-only-have-one-function-that-writes-to-the-chip.patch htirq-allow-buggy-drivers-of-buggy-hardware-to-write-the-registers.patch fix-x86_64-mm-pda-current.patch fix-x86_64-mm-i386-reloc-cleanup-align.patch fix-x86_64-mm-i386-reloc-kallsyms.patch x86-tif_notsc-and-seccomp-prctl.patch paravirt-i386-header-and-stubs-for-paravirtualisation.patch paravirt-i386-patch-inline-replacements-for.patch paravirt-i386-get-paravirt-ops-to-compile.patch paravirt-i386-more-generic-paravirtualization.patch paravirt-i386-allow-selected-bug-checks-to-be.patch paravirt-i386-allow-disabling-legacy-power.patch paravirt-i386-add-apic-accessors-to-paravirt-ops.patch paravirt-i386-add-mmu-virtualization-to.patch prep-for-paravirt-be-careful-about-touching-bios.patch paravirtualization-header-and-stubs-for-fix.patch paravirtualization-header-and-stubs-for-headers_check-fix.patch paravirtualization-patch-inline-replacements-for-fix-2.patch paravirtualization-patch-inline-replacements-for-fix-3.patch paravirtualization-more-generic-paravirtualization-warning-fix.patch fix-config_paravirt.patch i386-mm-substitute-__va-lookup-with-pfn_to_kaddr.patch i386-extend-bzimage-protocol-for-relocatable-protected-mode-kernel.patch x86_64-update-mmconfig-resource-insertion-to-check-against-e820-map.patch i386-convert-more-absolute-symbols-to-section-relative.patch deal-with-cases-of-zone_dma-meaning-the-first-zone.patch introduce-config_zone_dma.patch optional-zone_dma-in-the-vm.patch swsusp-support-i386-systems-with-pae-or-without-pse.patch kbuild-dont-put-temp-files-in-the-source-tree.patch kbuild-dont-put-temp-files-in-the-source-tree-fix.patch pci-i386-style-cleanups.patch remove-kernel-syscalls-x86_64-fix.patch termios-enable-new-style-termios-ioctls-on-x86-64.patch - To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html