• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/linux/linux-2.6/mm/

Lines Matching refs:objp

414  * 0		: objp
435 static unsigned long long *dbg_redzone1(struct kmem_cache *cachep, void *objp)
438 return (unsigned long long*) (objp + obj_offset(cachep) -
442 static unsigned long long *dbg_redzone2(struct kmem_cache *cachep, void *objp)
446 return (unsigned long long *)(objp + cachep->buffer_size -
449 return (unsigned long long *) (objp + cachep->buffer_size -
453 static void **dbg_userword(struct kmem_cache *cachep, void *objp)
456 return (void **)(objp + cachep->buffer_size - BYTES_PER_WORD);
463 #define dbg_redzone1(cachep, objp) ({BUG(); (unsigned long long *)NULL;})
464 #define dbg_redzone2(cachep, objp) ({BUG(); (unsigned long long *)NULL;})
465 #define dbg_userword(cachep, objp) ({BUG(); (void **)NULL;})
924 static inline int cache_free_alien(struct kmem_cache *cachep, void *objp)
1037 static inline int cache_free_alien(struct kmem_cache *cachep, void *objp)
1039 struct slab *slabp = virt_to_slab(objp);
1063 alien->entry[alien->avail++] = objp;
1067 free_block(cachep, &objp, 1, nodeid);
1830 static void print_objinfo(struct kmem_cache *cachep, void *objp, int lines)
1837 *dbg_redzone1(cachep, objp),
1838 *dbg_redzone2(cachep, objp));
1843 *dbg_userword(cachep, objp));
1845 (unsigned long)*dbg_userword(cachep, objp));
1848 realobj = (char *)objp + obj_offset(cachep);
1859 static void check_poison_obj(struct kmem_cache *cachep, void *objp)
1865 realobj = (char *)objp + obj_offset(cachep);
1880 print_objinfo(cachep, objp, 0);
1899 struct slab *slabp = virt_to_slab(objp);
1902 objnr = obj_to_index(cachep, slabp, objp);
1904 objp = index_to_obj(cachep, slabp, objnr - 1);
1905 realobj = (char *)objp + obj_offset(cachep);
1908 print_objinfo(cachep, objp, 2);
1911 objp = index_to_obj(cachep, slabp, objnr + 1);
1912 realobj = (char *)objp + obj_offset(cachep);
1915 print_objinfo(cachep, objp, 2);
1926 void *objp = index_to_obj(cachep, slabp, i);
1932 kernel_map_pages(virt_to_page(objp),
1935 check_poison_obj(cachep, objp);
1937 check_poison_obj(cachep, objp);
1941 if (*dbg_redzone1(cachep, objp) != RED_INACTIVE)
1944 if (*dbg_redzone2(cachep, objp) != RED_INACTIVE)
2643 static struct slab *alloc_slabmgmt(struct kmem_cache *cachep, void *objp,
2664 slabp = objp + colour_off;
2669 slabp->s_mem = objp + colour_off;
2686 void *objp = index_to_obj(cachep, slabp, i);
2690 poison_obj(cachep, objp, POISON_FREE);
2692 *dbg_userword(cachep, objp) = NULL;
2695 *dbg_redzone1(cachep, objp) = RED_INACTIVE;
2696 *dbg_redzone2(cachep, objp) = RED_INACTIVE;
2704 cachep->ctor(objp + obj_offset(cachep));
2707 if (*dbg_redzone2(cachep, objp) != RED_INACTIVE)
2710 if (*dbg_redzone1(cachep, objp) != RED_INACTIVE)
2716 kernel_map_pages(virt_to_page(objp),
2720 cachep->ctor(objp);
2740 void *objp = index_to_obj(cachep, slabp, slabp->free);
2751 return objp;
2755 void *objp, int nodeid)
2757 unsigned int objnr = obj_to_index(cachep, slabp, objp);
2765 "'%s', objp %p\n", cachep->name, objp);
2803 gfp_t flags, int nodeid, void *objp)
2846 if (!objp)
2847 objp = kmem_getpages(cachep, local_flags, nodeid);
2848 if (!objp)
2852 slabp = alloc_slabmgmt(cachep, objp, offset,
2857 slab_map_pages(cachep, slabp, objp);
2873 kmem_freepages(cachep, objp);
2887 static void kfree_debugcheck(const void *objp)
2889 if (!virt_addr_valid(objp)) {
2891 (unsigned long)objp);
2918 static void *cache_free_debugcheck(struct kmem_cache *cachep, void *objp,
2925 BUG_ON(virt_to_cache(objp) != cachep);
2927 objp -= obj_offset(cachep);
2928 kfree_debugcheck(objp);
2929 page = virt_to_head_page(objp);
2934 verify_redzone_free(cachep, objp);
2935 *dbg_redzone1(cachep, objp) = RED_INACTIVE;
2936 *dbg_redzone2(cachep, objp) = RED_INACTIVE;
2939 *dbg_userword(cachep, objp) = caller;
2941 objnr = obj_to_index(cachep, slabp, objp);
2944 BUG_ON(objp != index_to_obj(cachep, slabp, objnr));
2952 store_stackinfo(cachep, objp, (unsigned long)caller);
2953 kernel_map_pages(virt_to_page(objp),
2956 poison_obj(cachep, objp, POISON_FREE);
2959 poison_obj(cachep, objp, POISON_FREE);
2962 return objp;
2994 #define cache_free_debugcheck(x,objp,z) (objp)
3102 gfp_t flags, void *objp, void *caller)
3104 if (!objp)
3105 return objp;
3109 kernel_map_pages(virt_to_page(objp),
3112 check_poison_obj(cachep, objp);
3114 check_poison_obj(cachep, objp);
3116 poison_obj(cachep, objp, POISON_INUSE);
3119 *dbg_userword(cachep, objp) = caller;
3122 if (*dbg_redzone1(cachep, objp) != RED_INACTIVE ||
3123 *dbg_redzone2(cachep, objp) != RED_INACTIVE) {
3128 objp, *dbg_redzone1(cachep, objp),
3129 *dbg_redzone2(cachep, objp));
3131 *dbg_redzone1(cachep, objp) = RED_ACTIVE;
3132 *dbg_redzone2(cachep, objp) = RED_ACTIVE;
3139 slabp = page_get_slab(virt_to_head_page(objp));
3140 objnr = (unsigned)(objp - slabp->s_mem) / cachep->buffer_size;
3144 objp += obj_offset(cachep);
3146 cachep->ctor(objp);
3148 if ((u32)objp & (ARCH_SLAB_MINALIGN-1)) {
3150 objp, ARCH_SLAB_MINALIGN);
3153 return objp;
3156 #define cache_alloc_debugcheck_after(a,b,objp,d) (objp)
3169 void *objp;
3178 objp = ac->entry[--ac->avail];
3181 objp = cache_alloc_refill(cachep, flags);
3193 if (objp)
3195 return objp;
3436 void *objp;
3439 objp = alternate_node_alloc(cache, flags);
3440 if (objp)
3443 objp = ____cache_alloc(cache, flags);
3449 if (!objp)
3450 objp = ____cache_alloc_node(cache, flags, numa_mem_id());
3453 return objp;
3469 void *objp;
3480 objp = __do_cache_alloc(cachep, flags);
3482 objp = cache_alloc_debugcheck_after(cachep, flags, objp, caller);
3483 kmemleak_alloc_recursive(objp, obj_size(cachep), 1, cachep->flags,
3485 prefetchw(objp);
3487 if (likely(objp))
3488 kmemcheck_slab_alloc(cachep, flags, objp, obj_size(cachep));
3490 if (unlikely((flags & __GFP_ZERO) && objp))
3491 memset(objp, 0, obj_size(cachep));
3493 return objp;
3506 void *objp = objpp[i];
3509 slabp = virt_to_slab(objp);
3514 slab_put_obj(cachep, slabp, objp, node);
3598 static inline void __cache_free(struct kmem_cache *cachep, void *objp)
3603 kmemleak_free_recursive(objp, cachep->flags);
3604 objp = cache_free_debugcheck(cachep, objp, __builtin_return_address(0));
3606 kmemcheck_slab_free(cachep, objp, obj_size(cachep));
3615 if (nr_online_nodes > 1 && cache_free_alien(cachep, objp))
3620 ac->entry[ac->avail++] = objp;
3625 ac->entry[ac->avail++] = objp;
3804 * @objp: The previously allocated object.
3809 void kmem_cache_free(struct kmem_cache *cachep, void *objp)
3814 debug_check_no_locks_freed(objp, obj_size(cachep));
3816 debug_check_no_obj_freed(objp, obj_size(cachep));
3817 __cache_free(cachep, objp);
3820 trace_kmem_cache_free(_RET_IP_, objp);
3826 * @objp: pointer returned by kmalloc.
3828 * If @objp is NULL, no operation is performed.
3833 void kfree(const void *objp)
3838 trace_kfree(_RET_IP_, objp);
3840 if (unlikely(ZERO_OR_NULL_PTR(objp)))
3843 kfree_debugcheck(objp);
3844 c = virt_to_cache(objp);
3845 debug_check_no_locks_freed(objp, obj_size(c));
3846 debug_check_no_obj_freed(objp, obj_size(c));
3847 __cache_free(c, (void *)objp);
4564 * @objp: Pointer to the object
4570 * The caller must guarantee that objp points to a valid object previously
4574 size_t ksize(const void *objp)
4576 BUG_ON(!objp);
4577 if (unlikely(objp == ZERO_SIZE_PTR))
4580 return obj_size(virt_to_cache(objp));