···2020#include <linux/cpu.h>2121#include <asm/cpu.h>2222#include <linux/notifier.h>2323+#include <linux/jiffies.h>2324#include <asm/therm_throt.h>24252526/* How long to wait between reporting thermal events */
···2121 etc voltage & frequency control is not supported!2222*/2323#include <linux/module.h>2424+#include <linux/sched.h>2425#include <linux/init.h>2526#include <linux/slab.h>2627#include <linux/jiffies.h>
···45454646#ifdef __KERNEL__4747#include <asm/processor.h>4848-#include <asm/compat.h>49485049/*5150 * This is used to ensure we don't load something for the wrong architecture.
···66 * Rewritten by Richard Henderson <rth@tamu.edu> Dec 199677 * Rewritten again by Rusty Russell, 200288 */99-#include <linux/sched.h>109#include <linux/spinlock.h>1110#include <linux/list.h>1211#include <linux/stat.h>···410411 return ret;411412}412413413413-static inline void module_put(struct module *module)414414-{415415- if (module) {416416- unsigned int cpu = get_cpu();417417- local_dec(&module->ref[cpu].count);418418- /* Maybe they're waiting for us to drop reference? */419419- if (unlikely(!module_is_live(module)))420420- wake_up_process(module->waiter);421421- put_cpu();422422- }423423-}414414+extern void module_put(struct module *module);424415425416#else /*!CONFIG_MODULE_UNLOAD*/426417static inline int try_module_get(struct module *module)