Remove unused code
The BUFFER_TRACE code was not in use and did not work as the HASHTABLE was removed.
This commit is contained in:
		@ -24,24 +24,10 @@
 | 
				
			|||||||
#include <maxscale/log.h>
 | 
					#include <maxscale/log.h>
 | 
				
			||||||
#include <maxscale/utils.h>
 | 
					#include <maxscale/utils.h>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#if defined (BUFFER_TRACE)
 | 
					 | 
				
			||||||
#include <maxscale/hashtable.h>
 | 
					 | 
				
			||||||
#include <execinfo.h>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
static HASHTABLE* buffer_hashtable = NULL;
 | 
					 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
static void             gwbuf_free_one(GWBUF* buf);
 | 
					static void             gwbuf_free_one(GWBUF* buf);
 | 
				
			||||||
static buffer_object_t* gwbuf_remove_buffer_object(GWBUF* buf,
 | 
					static buffer_object_t* gwbuf_remove_buffer_object(GWBUF* buf,
 | 
				
			||||||
                                                   buffer_object_t* bufobj);
 | 
					                                                   buffer_object_t* bufobj);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#if defined (BUFFER_TRACE)
 | 
					 | 
				
			||||||
static void gwbuf_add_to_hashtable(GWBUF* buf);
 | 
					 | 
				
			||||||
static int  bhashfn(void* key);
 | 
					 | 
				
			||||||
static int  bcmpfn(void* key1, void* key2);
 | 
					 | 
				
			||||||
static void gwbuf_remove_from_hashtable(GWBUF* buf);
 | 
					 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
 * Allocate a new gateway buffer structure of size bytes.
 | 
					 * Allocate a new gateway buffer structure of size bytes.
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
@ -91,12 +77,6 @@ retblock:
 | 
				
			|||||||
    {
 | 
					    {
 | 
				
			||||||
        MXS_ERROR("Memory allocation failed due to %s.", mxs_strerror(errno));
 | 
					        MXS_ERROR("Memory allocation failed due to %s.", mxs_strerror(errno));
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
#if defined (BUFFER_TRACE)
 | 
					 | 
				
			||||||
    else
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
        gwbuf_add_to_hashtable(rval);
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
    return rval;
 | 
					    return rval;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -118,97 +98,6 @@ GWBUF* gwbuf_alloc_and_load(unsigned int size, const void* data)
 | 
				
			|||||||
    return rval;
 | 
					    return rval;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#if defined (BUFFER_TRACE)
 | 
					 | 
				
			||||||
/**
 | 
					 | 
				
			||||||
 * Store a trace of buffer creation
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * @param buf The buffer to record
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
static void gwbuf_add_to_hashtable(GWBUF* buf)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
    void* array[16];
 | 
					 | 
				
			||||||
    size_t size, i, total;
 | 
					 | 
				
			||||||
    char** strings;
 | 
					 | 
				
			||||||
    char* tracetext;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    size = backtrace(array, 16);
 | 
					 | 
				
			||||||
    strings = backtrace_symbols(array, size);
 | 
					 | 
				
			||||||
    total = (2 * size) + 1;
 | 
					 | 
				
			||||||
    for (i = 0; i < size; i++)
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
        total += strlen(strings[i]);
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    tracetext = (char*)MXS_MALLOC(total);
 | 
					 | 
				
			||||||
    if (tracetext)
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
        char* ptr = tracetext;
 | 
					 | 
				
			||||||
        for (i = 0; i < size; i++)
 | 
					 | 
				
			||||||
        {
 | 
					 | 
				
			||||||
            sprintf(ptr, "\t%s\n", strings[i]);
 | 
					 | 
				
			||||||
            ptr += (strlen(strings[i]) + 2);
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
        free (strings);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        if (NULL == buffer_hashtable)
 | 
					 | 
				
			||||||
        {
 | 
					 | 
				
			||||||
            buffer_hashtable = hashtable_alloc(10000, bhashfn, bcmpfn);
 | 
					 | 
				
			||||||
            hashtable_memory_fns(buffer_hashtable, NULL, NULL, NULL, hashtable_item_free);
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
        hashtable_add(buffer_hashtable, buf, (void*)tracetext);
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/**
 | 
					 | 
				
			||||||
 * Hash a buffer (address) to an integer
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * @param key The pointer to the buffer
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
static int bhashfn(void* key)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
    return (int)((uintptr_t) key % INT_MAX);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/**
 | 
					 | 
				
			||||||
 * Compare two buffer keys (pointers)
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * @param key1 The pointer to the first buffer
 | 
					 | 
				
			||||||
 * @param key2 The pointer to the second buffer
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
static int bcmpfn(void* key1, void* key2)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
    return key1 == key2 ? 0 : 1;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/**
 | 
					 | 
				
			||||||
 * Remove a buffer from the store of buffer traces
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * @param buf The buffer to be removed
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
static void gwbuf_remove_from_hashtable(GWBUF* buf)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
    hashtable_delete(buffer_hashtable, buf);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/**
 | 
					 | 
				
			||||||
 * Print all buffer traces via a given print DCB
 | 
					 | 
				
			||||||
 *
 | 
					 | 
				
			||||||
 * @param pdcb  Print DCB for output
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
void dprintAllBuffers(void* pdcb)
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
    void* buf;
 | 
					 | 
				
			||||||
    char* backtrace;
 | 
					 | 
				
			||||||
    HASHITERATOR* buffers = hashtable_iterator(buffer_hashtable);
 | 
					 | 
				
			||||||
    while (NULL != (buf = hashtable_next(buffers)))
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
        dcb_printf((DCB*)pdcb, "Buffer: %p\n", (void*)buf);
 | 
					 | 
				
			||||||
        backtrace = hashtable_fetch(buffer_hashtable, buf);
 | 
					 | 
				
			||||||
        dcb_printf((DCB*)pdcb, "%s", backtrace);
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    hashtable_iterator_free(buffers);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
 * Free a list of gateway buffers
 | 
					 * Free a list of gateway buffers
 | 
				
			||||||
 *
 | 
					 *
 | 
				
			||||||
@ -265,9 +154,7 @@ static void gwbuf_free_one(GWBUF* buf)
 | 
				
			|||||||
        buf->hint = buf->hint->next;
 | 
					        buf->hint = buf->hint->next;
 | 
				
			||||||
        hint_free(h);
 | 
					        hint_free(h);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
#if defined (BUFFER_TRACE)
 | 
					
 | 
				
			||||||
    gwbuf_remove_from_hashtable(buf);
 | 
					 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
    MXS_FREE(buf);
 | 
					    MXS_FREE(buf);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -298,9 +185,7 @@ static GWBUF* gwbuf_clone_one(GWBUF* buf)
 | 
				
			|||||||
    rval->gwbuf_type = buf->gwbuf_type;
 | 
					    rval->gwbuf_type = buf->gwbuf_type;
 | 
				
			||||||
    rval->tail = rval;
 | 
					    rval->tail = rval;
 | 
				
			||||||
    rval->next = NULL;
 | 
					    rval->next = NULL;
 | 
				
			||||||
#if defined (BUFFER_TRACE)
 | 
					
 | 
				
			||||||
    gwbuf_add_to_hashtable(rval);
 | 
					 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
    return rval;
 | 
					    return rval;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -381,9 +266,7 @@ static GWBUF* gwbuf_clone_portion(GWBUF* buf,
 | 
				
			|||||||
    clonebuf->hint = NULL;
 | 
					    clonebuf->hint = NULL;
 | 
				
			||||||
    clonebuf->next = NULL;
 | 
					    clonebuf->next = NULL;
 | 
				
			||||||
    clonebuf->tail = clonebuf;
 | 
					    clonebuf->tail = clonebuf;
 | 
				
			||||||
#if defined (BUFFER_TRACE)
 | 
					
 | 
				
			||||||
    gwbuf_add_to_hashtable(clonebuf);
 | 
					 | 
				
			||||||
#endif
 | 
					 | 
				
			||||||
    return clonebuf;
 | 
					    return clonebuf;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user