Skip to content

Commit

Permalink
perf/core: introduced stub APIs for exported APIs
Browse files Browse the repository at this point in the history
Introduced stub APIs for exported APIs so that we can build
independent module without any error if CONFIG_PERF_EVENT
feature is disabled in kernel.

drivers/platform/tegra/uncore_pmu/tegra23x_perf_uncore.c:
In function _scf_pmu_device_probe_:
drivers/platform/tegra/uncore_pmu/tegra23x_perf_uncore.c:596:    8:
error: implicit declaration of function _perf_pmu_register_
[-Werror=implicit-function-declaration]
  err = perf_pmu_register(&uncore_pmu->pmu, uncore_pmu->pmu.name,
531       |        ^~~~~~~~~~~~~~~~~
drivers/platform/tegra/uncore_pmu/tegra23x_perf_uncore.c: In
function _scf_pmu_device_remove_:
drivers/platform/tegra/uncore_pmu/tegra23x_perf_uncore.c:611:    2:
error: implicit declaration of function _perf_pmu_unregister_; did you
mean _device_unregister_? [-Werror=implicit-function-declaration]
  611 |  perf_pmu_unregister(&uncore_pmu->pmu);
      |  ^~~~~~~~~~~~~~~~~~~
      |  device_unregister
cc1: some warnings being treated as errors
scripts/Makefile.build:297: recipe for target
'drivers/platform/tegra/uncore_pmu/tegra23x_perf_uncore.o' failed
make[7]: *** [drivers/platform/tegra/
uncore_pmu/tegra23x_perf_uncore.o] Error 1

Signed-off-by: Manish Bhardwaj <bhardwajmanish18@gmail.com>
  • Loading branch information
1991MANISH authored and intel-lab-lkp committed Mar 5, 2023
1 parent c828441 commit 2636181
Showing 1 changed file with 36 additions and 0 deletions.
36 changes: 36 additions & 0 deletions include/linux/perf_event.h
Expand Up @@ -1679,6 +1679,42 @@ extern int perf_event_account_interrupt(struct perf_event *event);
extern int perf_event_period(struct perf_event *event, u64 value);
extern u64 perf_event_pause(struct perf_event *event, bool reset);
#else /* !CONFIG_PERF_EVENTS: */
static void perf_event_addr_filters_sync(struct perf_event *event) { }
static u64 perf_event_read_value(struct perf_event *event,
u64 *enabled, u64 *running)
{
return 0;
}
static void perf_event_update_userpage(struct perf_event *event) { }
static void perf_register_guest_info_callbacks(struct perf_guest_info_callbacks *cbs) { }
static void perf_unregister_guest_info_callbacks(struct perf_guest_info_callbacks *cbs) { }
static void perf_report_aux_output_id(struct perf_event *event, u64 hw_id) { }
static void perf_tp_event(u16 event_type, u64 count, void *record,
int entry_size, struct pt_regs *regs,
struct hlist_head *head, int rctx,
struct task_struct *task)
{
}
static int perf_pmu_register(struct pmu *pmu, const char *name, int type)
{
return -1;
}
extern void perf_pmu_unregister(struct pmu *pmu) { }
static struct perf_event *
perf_event_create_kernel_counter(struct perf_event_attr *attr,
int cpu,
struct task_struct *task,
perf_overflow_handler_t callback,
void *context)
{
return NULL;
}
static void perf_pmu_migrate_context(struct pmu *pmu, int src_cpu, int dst_cpu) { }
static ssize_t perf_event_sysfs_show(struct device *dev, struct device_attribute *attr,
char *page)
{
return -1;
}
static inline void *
perf_aux_output_begin(struct perf_output_handle *handle,
struct perf_event *event) { return NULL; }
Expand Down

0 comments on commit 2636181

Please sign in to comment.