/* Forward declaration. */
struct vlib_main_t;
+#define VLIB_BUFFER_POOL_PER_THREAD_CACHE_SZ 512
+
typedef struct
{
CLIB_CACHE_LINE_ALIGN_MARK (cacheline0);
- u32 *cached_buffers;
- u32 n_alloc;
+ u32 cached_buffers[VLIB_BUFFER_POOL_PER_THREAD_CACHE_SZ];
+ u32 n_cached;
} vlib_buffer_pool_thread_t;
+
typedef struct
{
CLIB_CACHE_LINE_ALIGN_MARK (cacheline0);
u32 physmem_map_index;
u32 data_size;
u32 n_buffers;
+ u32 n_avail;
u32 *buffers;
u8 *name;
clib_spinlock_t lock;