diff options
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 @@ | |||
| 17 | #include <linux/moduleparam.h> | 17 | #include <linux/moduleparam.h> | 
| 18 | #include <linux/marker.h> | 18 | #include <linux/marker.h> | 
| 19 | #include <linux/tracepoint.h> | 19 | #include <linux/tracepoint.h> | 
| 20 | #include <asm/local.h> | ||
| 21 | 20 | ||
| 21 | #include <asm/local.h> | ||
| 22 | #include <asm/module.h> | 22 | #include <asm/module.h> | 
| 23 | 23 | ||
| 24 | #include <trace/events/module.h> | ||
| 25 | |||
| 24 | /* Not Yet Implemented */ | 26 | /* Not Yet Implemented */ | 
| 25 | #define MODULE_SUPPORTED_DEVICE(name) | 27 | #define MODULE_SUPPORTED_DEVICE(name) | 
| 26 | 28 | ||
| @@ -462,7 +464,10 @@ static inline local_t *__module_ref_addr(struct module *mod, int cpu) | |||
| 462 | static inline void __module_get(struct module *module) | 464 | static inline void __module_get(struct module *module) | 
| 463 | { | 465 | { | 
| 464 | if (module) { | 466 | if (module) { | 
| 465 | local_inc(__module_ref_addr(module, get_cpu())); | 467 | unsigned int cpu = get_cpu(); | 
| 468 | local_inc(__module_ref_addr(module, cpu)); | ||
| 469 | trace_module_get(module, _THIS_IP_, | ||
| 470 | local_read(__module_ref_addr(module, cpu))); | ||
| 466 | put_cpu(); | 471 | put_cpu(); | 
| 467 | } | 472 | } | 
| 468 | } | 473 | } | 
| @@ -473,8 +478,11 @@ static inline int try_module_get(struct module *module) | |||
| 473 | 478 | ||
| 474 | if (module) { | 479 | if (module) { | 
| 475 | unsigned int cpu = get_cpu(); | 480 | unsigned int cpu = get_cpu(); | 
| 476 | if (likely(module_is_live(module))) | 481 | if (likely(module_is_live(module))) { | 
| 477 | local_inc(__module_ref_addr(module, cpu)); | 482 | local_inc(__module_ref_addr(module, cpu)); | 
| 483 | trace_module_get(module, _THIS_IP_, | ||
| 484 | local_read(__module_ref_addr(module, cpu))); | ||
| 485 | } | ||
| 478 | else | 486 | else | 
| 479 | ret = 0; | 487 | ret = 0; | 
| 480 | put_cpu(); | 488 | put_cpu(); | 
