Commit 1d9d8639c063 ("perf,x86: fix kernel crash with PEBS/BTS after suspend/resume") introduces a link failure since perf_restore_debug_store() is only defined for CONFIG_CPU_SUP_INTEL: arch/x86/power/built-in.o: In function `restore_processor_state': (.text+0x45c): undefined reference to `perf_restore_debug_store' Fix it by defining the dummy function appropriately.
Unified · Split
| @@ -758,7 +758,6 @@ extern void perf_event_enable(struct perf_event *event); · 757 unmodified lines | |||
| 758 | extern void perf_event_disable(struct perf_event *event); | 758 | extern void perf_event_disable(struct perf_event *event); |
| 759 | extern int __perf_event_disable(void *info); | 759 | extern int __perf_event_disable(void *info); |
| 760 | extern void perf_event_task_tick(void); | 760 | extern void perf_event_task_tick(void); |
| 761 | extern void perf_restore_debug_store(void); | ||
| 762 | #else | 761 | #else |
| 763 | static inline void | 762 | static inline void |
| 764 | perf_event_task_sched_in(struct task_struct *prev, | 763 | perf_event_task_sched_in(struct task_struct *prev, |
| @@ -798,6 +797,11 @@ static inline void perf_event_enable(struct perf_event *event) { } · 33 unmodified lines | |||
| 798 | static inline void perf_event_disable(struct perf_event *event) { } | 797 | static inline void perf_event_disable(struct perf_event *event) { } |
| 799 | static inline int __perf_event_disable(void *info) { return -1; } | 798 | static inline int __perf_event_disable(void *info) { return -1; } |
| 800 | static inline void perf_event_task_tick(void) { } | 799 | static inline void perf_event_task_tick(void) { } |
| 800 | #endif | ||
| 801 | |||
| 802 | #if defined(CONFIG_PERF_EVENTS) && defined(CONFIG_CPU_SUP_INTEL) | ||
| 803 | extern void perf_restore_debug_store(void); | ||
| 804 | #else | ||
| 801 | static inline void perf_restore_debug_store(void) { } | 805 | static inline void perf_restore_debug_store(void) { } |
| 802 | #endif | 806 | #endif |
| 803 | 807 | ||