diff options
| author | Len Brown <len.brown@intel.com> | 2009-09-19 00:06:59 -0400 |
|---|---|---|
| committer | Len Brown <len.brown@intel.com> | 2009-09-19 00:06:59 -0400 |
| commit | 71fd68e7d234f6b7d8407c8f486764d24f8411f4 (patch) | |
| tree | 6dc2a4c356b4f454fc85d0c7cb019986f6f4993b /include/linux/module.h | |
| parent | 8ff0e082f0833d32c7523a6cd72b6cf6a2142ce8 (diff) | |
| parent | 78f28b7c555359c67c2a0d23f7436e915329421e (diff) | |
Merge branch 'linus' into release
Diffstat (limited to 'include/linux/module.h')
| -rw-r--r-- | include/linux/module.h | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/include/linux/module.h b/include/linux/module.h index 098bdb7bfacf..f8f92d015efe 100644 --- a/include/linux/module.h +++ b/include/linux/module.h @@ -17,10 +17,12 @@ #include <linux/moduleparam.h> #include <linux/marker.h> #include <linux/tracepoint.h> -#include <asm/local.h> +#include <asm/local.h> #include <asm/module.h> +#include <trace/events/module.h> + /* Not Yet Implemented */ #define MODULE_SUPPORTED_DEVICE(name) @@ -462,7 +464,10 @@ static inline local_t *__module_ref_addr(struct module *mod, int cpu) static inline void __module_get(struct module *module) { if (module) { - local_inc(__module_ref_addr(module, get_cpu())); + unsigned int cpu = get_cpu(); + local_inc(__module_ref_addr(module, cpu)); + trace_module_get(module, _THIS_IP_, + local_read(__module_ref_addr(module, cpu))); put_cpu(); } } @@ -473,8 +478,11 @@ static inline int try_module_get(struct module *module) if (module) { unsigned int cpu = get_cpu(); - if (likely(module_is_live(module))) + if (likely(module_is_live(module))) { local_inc(__module_ref_addr(module, cpu)); + trace_module_get(module, _THIS_IP_, + local_read(__module_ref_addr(module, cpu))); + } else ret = 0; put_cpu(); |
