mirror of https://gitee.com/openkylin/linux.git
arch: xtensa: Remove CONFIG_OPROFILE support
The "oprofile" user-space tools don't use the kernel OPROFILE support any more, and haven't in a long time. User-space has been converted to the perf interfaces. Remove the old oprofile's architecture specific support. Suggested-by: Christoph Hellwig <hch@infradead.org> Suggested-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> Acked-by: Robert Richter <rric@kernel.org> Acked-by: Max Filippov <jcmvbkbc@gmail.com> Acked-by: William Cohen <wcohen@redhat.com> Acked-by: Al Viro <viro@zeniv.linux.org.uk> Acked-by: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:
parent
a6a0683b71
commit
a848bf1d9e
|
@ -32,7 +32,6 @@ config XTENSA
|
|||
select HAVE_FUTEX_CMPXCHG if !MMU
|
||||
select HAVE_HW_BREAKPOINT if PERF_EVENTS
|
||||
select HAVE_IRQ_TIME_ACCOUNTING
|
||||
select HAVE_OPROFILE
|
||||
select HAVE_PCI
|
||||
select HAVE_PERF_EVENTS
|
||||
select HAVE_STACKPROTECTOR
|
||||
|
|
|
@ -83,7 +83,6 @@ core-y += $(buildvar) $(buildplf)
|
|||
core-y += arch/xtensa/boot/dts/
|
||||
|
||||
libs-y += arch/xtensa/lib/ $(LIBGCC)
|
||||
drivers-$(CONFIG_OPROFILE) += arch/xtensa/oprofile/
|
||||
|
||||
boot := arch/xtensa/boot
|
||||
|
||||
|
|
|
@ -18,7 +18,6 @@ CONFIG_BLK_DEV_INITRD=y
|
|||
CONFIG_EXPERT=y
|
||||
CONFIG_KALLSYMS_ALL=y
|
||||
CONFIG_PROFILING=y
|
||||
CONFIG_OPROFILE=y
|
||||
CONFIG_MODULES=y
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
CONFIG_XTENSA_VARIANT_CUSTOM=y
|
||||
|
|
|
@ -18,7 +18,6 @@ CONFIG_BLK_DEV_INITRD=y
|
|||
CONFIG_EXPERT=y
|
||||
CONFIG_KALLSYMS_ALL=y
|
||||
CONFIG_PROFILING=y
|
||||
CONFIG_OPROFILE=y
|
||||
CONFIG_MODULES=y
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
CONFIG_XTENSA_VARIANT_DC233C=y
|
||||
|
|
|
@ -18,7 +18,6 @@ CONFIG_BLK_DEV_INITRD=y
|
|||
CONFIG_EXPERT=y
|
||||
CONFIG_KALLSYMS_ALL=y
|
||||
CONFIG_PROFILING=y
|
||||
CONFIG_OPROFILE=y
|
||||
CONFIG_MODULES=y
|
||||
CONFIG_MODULE_UNLOAD=y
|
||||
CONFIG_XTENSA_VARIANT_CUSTOM=y
|
||||
|
|
|
@ -31,7 +31,6 @@ CONFIG_CMDLINE="earlycon=uart8250,mmio32native,0xfd050020,115200n8 console=ttyS0
|
|||
CONFIG_USE_OF=y
|
||||
CONFIG_BUILTIN_DTB_SOURCE="kc705"
|
||||
# CONFIG_PARSE_BOOTPARAM is not set
|
||||
CONFIG_OPROFILE=y
|
||||
# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
|
||||
# CONFIG_COMPACTION is not set
|
||||
CONFIG_NET=y
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
#include <asm/traps.h>
|
||||
#include <linux/uaccess.h>
|
||||
|
||||
#if IS_ENABLED(CONFIG_OPROFILE) || IS_ENABLED(CONFIG_PERF_EVENTS)
|
||||
#if IS_ENABLED(CONFIG_PERF_EVENTS)
|
||||
|
||||
/* Address of common_exception_return, used to check the
|
||||
* transition from kernel to user space.
|
||||
|
|
|
@ -1,10 +0,0 @@
|
|||
# SPDX-License-Identifier: GPL-2.0
|
||||
obj-$(CONFIG_OPROFILE) += oprofile.o
|
||||
|
||||
DRIVER_OBJS = $(addprefix ../../../drivers/oprofile/, \
|
||||
oprof.o cpu_buffer.o buffer_sync.o \
|
||||
event_buffer.o oprofile_files.o \
|
||||
oprofilefs.o oprofile_stats.o \
|
||||
timer_int.o )
|
||||
|
||||
oprofile-y := $(DRIVER_OBJS) init.o backtrace.o
|
|
@ -1,27 +0,0 @@
|
|||
/**
|
||||
* @file backtrace.c
|
||||
*
|
||||
* @remark Copyright 2008 Tensilica Inc.
|
||||
* Copyright (C) 2015 Cadence Design Systems Inc.
|
||||
* @remark Read the file COPYING
|
||||
*
|
||||
*/
|
||||
|
||||
#include <linux/oprofile.h>
|
||||
#include <asm/ptrace.h>
|
||||
#include <asm/stacktrace.h>
|
||||
|
||||
static int xtensa_backtrace_cb(struct stackframe *frame, void *data)
|
||||
{
|
||||
oprofile_add_trace(frame->pc);
|
||||
return 0;
|
||||
}
|
||||
|
||||
void xtensa_backtrace(struct pt_regs * const regs, unsigned int depth)
|
||||
{
|
||||
if (user_mode(regs))
|
||||
xtensa_backtrace_user(regs, depth, xtensa_backtrace_cb, NULL);
|
||||
else
|
||||
xtensa_backtrace_kernel(regs, depth, xtensa_backtrace_cb,
|
||||
xtensa_backtrace_cb, NULL);
|
||||
}
|
|
@ -1,26 +0,0 @@
|
|||
/**
|
||||
* @file init.c
|
||||
*
|
||||
* @remark Copyright 2008 Tensilica Inc.
|
||||
* @remark Read the file COPYING
|
||||
*
|
||||
*/
|
||||
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/oprofile.h>
|
||||
#include <linux/errno.h>
|
||||
#include <linux/init.h>
|
||||
|
||||
|
||||
extern void xtensa_backtrace(struct pt_regs *const regs, unsigned int depth);
|
||||
|
||||
int __init oprofile_arch_init(struct oprofile_operations *ops)
|
||||
{
|
||||
ops->backtrace = xtensa_backtrace;
|
||||
return -ENODEV;
|
||||
}
|
||||
|
||||
|
||||
void oprofile_arch_exit(void)
|
||||
{
|
||||
}
|
Loading…
Reference in New Issue