Merge branch 'linus' into perfcounters/core
Merge reason: merge almost-rc8 into perfcounters/core, which was -rc6 based - to pick up the latest upstream fixes. Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
@ -32,7 +32,7 @@ void *dma_direct_alloc_coherent(struct device *dev, size_t size,
|
||||
{
|
||||
void *ret;
|
||||
#ifdef CONFIG_NOT_COHERENT_CACHE
|
||||
ret = __dma_alloc_coherent(size, dma_handle, flag);
|
||||
ret = __dma_alloc_coherent(dev, size, dma_handle, flag);
|
||||
if (ret == NULL)
|
||||
return NULL;
|
||||
*dma_handle += get_dma_direct_offset(dev);
|
||||
|
@ -157,7 +157,7 @@ __ftrace_make_nop(struct module *mod,
|
||||
* 0xe8, 0x4c, 0x00, 0x28, ld r2,40(r12)
|
||||
*/
|
||||
|
||||
pr_debug("ip:%lx jumps to %lx r2: %lx", ip, tramp, mod->arch.toc);
|
||||
pr_devel("ip:%lx jumps to %lx r2: %lx", ip, tramp, mod->arch.toc);
|
||||
|
||||
/* Find where the trampoline jumps to */
|
||||
if (probe_kernel_read(jmp, (void *)tramp, sizeof(jmp))) {
|
||||
@ -165,7 +165,7 @@ __ftrace_make_nop(struct module *mod,
|
||||
return -EFAULT;
|
||||
}
|
||||
|
||||
pr_debug(" %08x %08x", jmp[0], jmp[1]);
|
||||
pr_devel(" %08x %08x", jmp[0], jmp[1]);
|
||||
|
||||
/* verify that this is what we expect it to be */
|
||||
if (((jmp[0] & 0xffff0000) != 0x3d820000) ||
|
||||
@ -181,18 +181,18 @@ __ftrace_make_nop(struct module *mod,
|
||||
offset = ((unsigned)((unsigned short)jmp[0]) << 16) +
|
||||
(int)((short)jmp[1]);
|
||||
|
||||
pr_debug(" %x ", offset);
|
||||
pr_devel(" %x ", offset);
|
||||
|
||||
/* get the address this jumps too */
|
||||
tramp = mod->arch.toc + offset + 32;
|
||||
pr_debug("toc: %lx", tramp);
|
||||
pr_devel("toc: %lx", tramp);
|
||||
|
||||
if (probe_kernel_read(jmp, (void *)tramp, 8)) {
|
||||
printk(KERN_ERR "Failed to read %lx\n", tramp);
|
||||
return -EFAULT;
|
||||
}
|
||||
|
||||
pr_debug(" %08x %08x\n", jmp[0], jmp[1]);
|
||||
pr_devel(" %08x %08x\n", jmp[0], jmp[1]);
|
||||
|
||||
ptr = ((unsigned long)jmp[0] << 32) + jmp[1];
|
||||
|
||||
@ -269,7 +269,7 @@ __ftrace_make_nop(struct module *mod,
|
||||
* 0x4e, 0x80, 0x04, 0x20 bctr
|
||||
*/
|
||||
|
||||
pr_debug("ip:%lx jumps to %lx", ip, tramp);
|
||||
pr_devel("ip:%lx jumps to %lx", ip, tramp);
|
||||
|
||||
/* Find where the trampoline jumps to */
|
||||
if (probe_kernel_read(jmp, (void *)tramp, sizeof(jmp))) {
|
||||
@ -277,7 +277,7 @@ __ftrace_make_nop(struct module *mod,
|
||||
return -EFAULT;
|
||||
}
|
||||
|
||||
pr_debug(" %08x %08x ", jmp[0], jmp[1]);
|
||||
pr_devel(" %08x %08x ", jmp[0], jmp[1]);
|
||||
|
||||
/* verify that this is what we expect it to be */
|
||||
if (((jmp[0] & 0xffff0000) != 0x3d600000) ||
|
||||
@ -293,7 +293,7 @@ __ftrace_make_nop(struct module *mod,
|
||||
if (tramp & 0x8000)
|
||||
tramp -= 0x10000;
|
||||
|
||||
pr_debug(" %lx ", tramp);
|
||||
pr_devel(" %lx ", tramp);
|
||||
|
||||
if (tramp != addr) {
|
||||
printk(KERN_ERR
|
||||
@ -402,7 +402,7 @@ __ftrace_make_call(struct dyn_ftrace *rec, unsigned long addr)
|
||||
/* ld r2,40(r1) */
|
||||
op[1] = 0xe8410028;
|
||||
|
||||
pr_debug("write to %lx\n", rec->ip);
|
||||
pr_devel("write to %lx\n", rec->ip);
|
||||
|
||||
if (probe_kernel_write((void *)ip, op, MCOUNT_INSN_SIZE * 2))
|
||||
return -EPERM;
|
||||
@ -442,7 +442,7 @@ __ftrace_make_call(struct dyn_ftrace *rec, unsigned long addr)
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
pr_debug("write to %lx\n", rec->ip);
|
||||
pr_devel("write to %lx\n", rec->ip);
|
||||
|
||||
if (probe_kernel_write((void *)ip, &op, MCOUNT_INSN_SIZE))
|
||||
return -EPERM;
|
||||
@ -594,7 +594,7 @@ void prepare_ftrace_return(unsigned long *parent, unsigned long self_addr)
|
||||
PPC_LONG "2b,4b\n"
|
||||
".previous"
|
||||
|
||||
: [old] "=r" (old), [faulted] "=r" (faulted)
|
||||
: [old] "=&r" (old), [faulted] "=r" (faulted)
|
||||
: [parent] "r" (parent), [return_hooker] "r" (return_hooker)
|
||||
: "memory"
|
||||
);
|
||||
|
@ -264,6 +264,7 @@ SECTIONS
|
||||
*(.data.page_aligned)
|
||||
}
|
||||
|
||||
. = ALIGN(L1_CACHE_BYTES);
|
||||
.data.cacheline_aligned : AT(ADDR(.data.cacheline_aligned) - LOAD_OFFSET) {
|
||||
*(.data.cacheline_aligned)
|
||||
}
|
||||
|
Reference in New Issue
Block a user