mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2024-12-19 10:14:41 +00:00
DEBUG: pools: make pool_check_pattern() take a pointer to the pool
This will be useful to report detailed bug traces.
This commit is contained in:
parent
e92e96b00f
commit
f6bee5a50b
@ -132,7 +132,7 @@ void pool_evict_from_local_cache(struct pool_head *pool, int full);
|
||||
void pool_evict_from_local_caches(void);
|
||||
void pool_put_to_cache(struct pool_head *pool, void *ptr, const void *caller);
|
||||
void pool_fill_pattern(struct pool_cache_head *pch, struct pool_cache_item *item, uint size);
|
||||
void pool_check_pattern(struct pool_cache_head *pch, struct pool_cache_item *item, uint size, const void *caller);
|
||||
void pool_check_pattern(struct pool_cache_head *pch, struct pool_head *pool, struct pool_cache_item *item, const void *caller);
|
||||
void pool_refill_local_from_shared(struct pool_head *pool, struct pool_cache_head *pch);
|
||||
void pool_put_to_shared_cache(struct pool_head *pool, struct pool_item *item);
|
||||
|
||||
@ -252,7 +252,7 @@ static inline void *pool_get_from_cache(struct pool_head *pool, const void *call
|
||||
item = LIST_PREV(&ph->list, typeof(item), by_pool);
|
||||
|
||||
if (pool_debugging & POOL_DBG_INTEGRITY)
|
||||
pool_check_pattern(ph, item, pool->size, caller);
|
||||
pool_check_pattern(ph, pool, item, caller);
|
||||
}
|
||||
|
||||
BUG_ON(&item->by_pool == &ph->list);
|
||||
|
@ -481,9 +481,10 @@ void pool_fill_pattern(struct pool_cache_head *pch, struct pool_cache_item *item
|
||||
* must have been previously initialized using pool_fill_pattern(). If any
|
||||
* corruption is detected, the function provokes an immediate crash.
|
||||
*/
|
||||
void pool_check_pattern(struct pool_cache_head *pch, struct pool_cache_item *item, uint size, const void *caller)
|
||||
void pool_check_pattern(struct pool_cache_head *pch, struct pool_head *pool, struct pool_cache_item *item, const void *caller)
|
||||
{
|
||||
const ulong *ptr = (const ulong *)item;
|
||||
uint size = pool->size;
|
||||
uint ofs;
|
||||
ulong u;
|
||||
|
||||
@ -526,7 +527,7 @@ static void pool_evict_last_items(struct pool_head *pool, struct pool_cache_head
|
||||
item = LIST_PREV(&ph->list, typeof(item), by_pool);
|
||||
BUG_ON(&item->by_pool == &ph->list);
|
||||
if (unlikely(pool_debugging & POOL_DBG_INTEGRITY))
|
||||
pool_check_pattern(ph, item, pool->size, caller);
|
||||
pool_check_pattern(ph, pool, item, caller);
|
||||
LIST_DELETE(&item->by_pool);
|
||||
LIST_DELETE(&item->by_lru);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user