diff options
Diffstat (limited to 'mm/slab.c')
| -rw-r--r-- | mm/slab.c | 26 |
1 files changed, 12 insertions, 14 deletions
| @@ -3565,8 +3565,8 @@ void *kmem_cache_alloc(struct kmem_cache *cachep, gfp_t flags) | |||
| 3565 | { | 3565 | { |
| 3566 | void *ret = __cache_alloc(cachep, flags, __builtin_return_address(0)); | 3566 | void *ret = __cache_alloc(cachep, flags, __builtin_return_address(0)); |
| 3567 | 3567 | ||
| 3568 | kmemtrace_mark_alloc(KMEMTRACE_TYPE_CACHE, _RET_IP_, ret, | 3568 | trace_kmem_cache_alloc(_RET_IP_, ret, |
| 3569 | obj_size(cachep), cachep->buffer_size, flags); | 3569 | obj_size(cachep), cachep->buffer_size, flags); |
| 3570 | 3570 | ||
| 3571 | return ret; | 3571 | return ret; |
| 3572 | } | 3572 | } |
| @@ -3627,9 +3627,9 @@ void *kmem_cache_alloc_node(struct kmem_cache *cachep, gfp_t flags, int nodeid) | |||
| 3627 | void *ret = __cache_alloc_node(cachep, flags, nodeid, | 3627 | void *ret = __cache_alloc_node(cachep, flags, nodeid, |
| 3628 | __builtin_return_address(0)); | 3628 | __builtin_return_address(0)); |
| 3629 | 3629 | ||
| 3630 | kmemtrace_mark_alloc_node(KMEMTRACE_TYPE_CACHE, _RET_IP_, ret, | 3630 | trace_kmem_cache_alloc_node(_RET_IP_, ret, |
| 3631 | obj_size(cachep), cachep->buffer_size, | 3631 | obj_size(cachep), cachep->buffer_size, |
| 3632 | flags, nodeid); | 3632 | flags, nodeid); |
| 3633 | 3633 | ||
| 3634 | return ret; | 3634 | return ret; |
| 3635 | } | 3635 | } |
| @@ -3657,9 +3657,8 @@ __do_kmalloc_node(size_t size, gfp_t flags, int node, void *caller) | |||
| 3657 | return cachep; | 3657 | return cachep; |
| 3658 | ret = kmem_cache_alloc_node_notrace(cachep, flags, node); | 3658 | ret = kmem_cache_alloc_node_notrace(cachep, flags, node); |
| 3659 | 3659 | ||
| 3660 | kmemtrace_mark_alloc_node(KMEMTRACE_TYPE_KMALLOC, | 3660 | trace_kmalloc_node((unsigned long) caller, ret, |
| 3661 | (unsigned long) caller, ret, | 3661 | size, cachep->buffer_size, flags, node); |
| 3662 | size, cachep->buffer_size, flags, node); | ||
| 3663 | 3662 | ||
| 3664 | return ret; | 3663 | return ret; |
| 3665 | } | 3664 | } |
| @@ -3709,9 +3708,8 @@ static __always_inline void *__do_kmalloc(size_t size, gfp_t flags, | |||
| 3709 | return cachep; | 3708 | return cachep; |
| 3710 | ret = __cache_alloc(cachep, flags, caller); | 3709 | ret = __cache_alloc(cachep, flags, caller); |
| 3711 | 3710 | ||
| 3712 | kmemtrace_mark_alloc(KMEMTRACE_TYPE_KMALLOC, | 3711 | trace_kmalloc((unsigned long) caller, ret, |
| 3713 | (unsigned long) caller, ret, | 3712 | size, cachep->buffer_size, flags); |
| 3714 | size, cachep->buffer_size, flags); | ||
| 3715 | 3713 | ||
| 3716 | return ret; | 3714 | return ret; |
| 3717 | } | 3715 | } |
| @@ -3757,7 +3755,7 @@ void kmem_cache_free(struct kmem_cache *cachep, void *objp) | |||
| 3757 | __cache_free(cachep, objp); | 3755 | __cache_free(cachep, objp); |
| 3758 | local_irq_restore(flags); | 3756 | local_irq_restore(flags); |
| 3759 | 3757 | ||
| 3760 | kmemtrace_mark_free(KMEMTRACE_TYPE_CACHE, _RET_IP_, objp); | 3758 | trace_kmem_cache_free(_RET_IP_, objp); |
| 3761 | } | 3759 | } |
| 3762 | EXPORT_SYMBOL(kmem_cache_free); | 3760 | EXPORT_SYMBOL(kmem_cache_free); |
| 3763 | 3761 | ||
| @@ -3775,6 +3773,8 @@ void kfree(const void *objp) | |||
| 3775 | struct kmem_cache *c; | 3773 | struct kmem_cache *c; |
| 3776 | unsigned long flags; | 3774 | unsigned long flags; |
| 3777 | 3775 | ||
| 3776 | trace_kfree(_RET_IP_, objp); | ||
| 3777 | |||
| 3778 | if (unlikely(ZERO_OR_NULL_PTR(objp))) | 3778 | if (unlikely(ZERO_OR_NULL_PTR(objp))) |
| 3779 | return; | 3779 | return; |
| 3780 | local_irq_save(flags); | 3780 | local_irq_save(flags); |
| @@ -3784,8 +3784,6 @@ void kfree(const void *objp) | |||
| 3784 | debug_check_no_obj_freed(objp, obj_size(c)); | 3784 | debug_check_no_obj_freed(objp, obj_size(c)); |
| 3785 | __cache_free(c, (void *)objp); | 3785 | __cache_free(c, (void *)objp); |
| 3786 | local_irq_restore(flags); | 3786 | local_irq_restore(flags); |
| 3787 | |||
| 3788 | kmemtrace_mark_free(KMEMTRACE_TYPE_KMALLOC, _RET_IP_, objp); | ||
| 3789 | } | 3787 | } |
| 3790 | EXPORT_SYMBOL(kfree); | 3788 | EXPORT_SYMBOL(kfree); |
| 3791 | 3789 | ||
