Commit cf3f3355 authored by Linus Torvalds's avatar Linus Torvalds

Merge branch 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

* 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  x86: Use "do { } while(0)" for empty lock_cmos()/unlock_cmos() macros
  x86: Use "do { } while(0)" for empty flush_tlb_fix_spurious_fault() macro
  x86, CPU: Drop superfluous get_cpu_cap() prototype
  arch/x86/mm/pageattr.c: Quiet sparse noise; local functions should be static
  arch/x86/kernel/ptrace.c: Quiet sparse noise
  x86: Use kmemdup() in copy_thread(), rather than duplicating its implementation
  x86: Replace the EVT_TO_HPET_DEV() macro with an inline function
parents 69734b64 1affc46c
...@@ -81,8 +81,8 @@ static inline unsigned char current_lock_cmos_reg(void) ...@@ -81,8 +81,8 @@ static inline unsigned char current_lock_cmos_reg(void)
#else #else
#define lock_cmos_prefix(reg) do {} while (0) #define lock_cmos_prefix(reg) do {} while (0)
#define lock_cmos_suffix(reg) do {} while (0) #define lock_cmos_suffix(reg) do {} while (0)
#define lock_cmos(reg) #define lock_cmos(reg) do { } while (0)
#define unlock_cmos() #define unlock_cmos() do { } while (0)
#define do_i_have_lock_cmos() 0 #define do_i_have_lock_cmos() 0
#define current_lock_cmos_reg() 0 #define current_lock_cmos_reg() 0
#endif #endif
......
...@@ -703,7 +703,7 @@ static inline void ptep_set_wrprotect(struct mm_struct *mm, ...@@ -703,7 +703,7 @@ static inline void ptep_set_wrprotect(struct mm_struct *mm,
pte_update(mm, addr, ptep); pte_update(mm, addr, ptep);
} }
#define flush_tlb_fix_spurious_fault(vma, address) #define flush_tlb_fix_spurious_fault(vma, address) do { } while (0)
#define mk_pmd(page, pgprot) pfn_pmd(page_to_pfn(page), (pgprot)) #define mk_pmd(page, pgprot) pfn_pmd(page_to_pfn(page), (pgprot))
......
#ifndef ARCH_X86_CPU_H #ifndef ARCH_X86_CPU_H
#define ARCH_X86_CPU_H #define ARCH_X86_CPU_H
struct cpu_model_info { struct cpu_model_info {
...@@ -35,6 +34,4 @@ extern const struct cpu_dev *const __x86_cpu_dev_start[], ...@@ -35,6 +34,4 @@ extern const struct cpu_dev *const __x86_cpu_dev_start[],
extern void get_cpu_cap(struct cpuinfo_x86 *c); extern void get_cpu_cap(struct cpuinfo_x86 *c);
extern void cpu_detect_cache_sizes(struct cpuinfo_x86 *c); extern void cpu_detect_cache_sizes(struct cpuinfo_x86 *c);
extern void get_cpu_cap(struct cpuinfo_x86 *c); #endif /* ARCH_X86_CPU_H */
#endif
...@@ -32,8 +32,6 @@ ...@@ -32,8 +32,6 @@
#define HPET_MIN_CYCLES 128 #define HPET_MIN_CYCLES 128
#define HPET_MIN_PROG_DELTA (HPET_MIN_CYCLES + (HPET_MIN_CYCLES >> 1)) #define HPET_MIN_PROG_DELTA (HPET_MIN_CYCLES + (HPET_MIN_CYCLES >> 1))
#define EVT_TO_HPET_DEV(evt) container_of(evt, struct hpet_dev, evt)
/* /*
* HPET address is set in acpi/boot.c, when an ACPI entry exists * HPET address is set in acpi/boot.c, when an ACPI entry exists
*/ */
...@@ -55,6 +53,11 @@ struct hpet_dev { ...@@ -55,6 +53,11 @@ struct hpet_dev {
char name[10]; char name[10];
}; };
inline struct hpet_dev *EVT_TO_HPET_DEV(struct clock_event_device *evtdev)
{
return container_of(evtdev, struct hpet_dev, evt);
}
inline unsigned int hpet_readl(unsigned int a) inline unsigned int hpet_readl(unsigned int a)
{ {
return readl(hpet_virt_address + a); return readl(hpet_virt_address + a);
......
...@@ -299,13 +299,12 @@ int copy_thread(unsigned long clone_flags, unsigned long sp, ...@@ -299,13 +299,12 @@ int copy_thread(unsigned long clone_flags, unsigned long sp,
memset(p->thread.ptrace_bps, 0, sizeof(p->thread.ptrace_bps)); memset(p->thread.ptrace_bps, 0, sizeof(p->thread.ptrace_bps));
if (unlikely(test_tsk_thread_flag(me, TIF_IO_BITMAP))) { if (unlikely(test_tsk_thread_flag(me, TIF_IO_BITMAP))) {
p->thread.io_bitmap_ptr = kmalloc(IO_BITMAP_BYTES, GFP_KERNEL); p->thread.io_bitmap_ptr = kmemdup(me->thread.io_bitmap_ptr,
IO_BITMAP_BYTES, GFP_KERNEL);
if (!p->thread.io_bitmap_ptr) { if (!p->thread.io_bitmap_ptr) {
p->thread.io_bitmap_max = 0; p->thread.io_bitmap_max = 0;
return -ENOMEM; return -ENOMEM;
} }
memcpy(p->thread.io_bitmap_ptr, me->thread.io_bitmap_ptr,
IO_BITMAP_BYTES);
set_tsk_thread_flag(p, TIF_IO_BITMAP); set_tsk_thread_flag(p, TIF_IO_BITMAP);
} }
......
...@@ -749,7 +749,8 @@ static int ptrace_set_breakpoint_addr(struct task_struct *tsk, int nr, ...@@ -749,7 +749,8 @@ static int ptrace_set_breakpoint_addr(struct task_struct *tsk, int nr,
/* /*
* Handle PTRACE_POKEUSR calls for the debug register area. * Handle PTRACE_POKEUSR calls for the debug register area.
*/ */
int ptrace_set_debugreg(struct task_struct *tsk, int n, unsigned long val) static int ptrace_set_debugreg(struct task_struct *tsk, int n,
unsigned long val)
{ {
struct thread_struct *thread = &(tsk->thread); struct thread_struct *thread = &(tsk->thread);
int rc = 0; int rc = 0;
......
...@@ -998,7 +998,7 @@ int set_memory_uc(unsigned long addr, int numpages) ...@@ -998,7 +998,7 @@ int set_memory_uc(unsigned long addr, int numpages)
} }
EXPORT_SYMBOL(set_memory_uc); EXPORT_SYMBOL(set_memory_uc);
int _set_memory_array(unsigned long *addr, int addrinarray, static int _set_memory_array(unsigned long *addr, int addrinarray,
unsigned long new_type) unsigned long new_type)
{ {
int i, j; int i, j;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment