30 #include <sys/types.h>
57 buf_LRU_try_free_flushed_blocks(
67 buf_LRU_buf_pool_running_out(
void);
75 #define BUF_LRU_OLD_MIN_LEN 512
78 #define BUF_LRU_FREE_SEARCH_LEN(b) (5 + 2 * BUF_READ_AHEAD_AREA(b))
87 buf_LRU_invalidate_tablespace(
94 buf_LRU_insert_zip_clean(
118 ibool* buf_pool_mutex_released);
127 buf_LRU_search_and_free_block(
146 buf_LRU_get_free_only(
156 buf_LRU_get_free_block(
166 buf_LRU_block_free_non_file_page(
184 buf_unzip_LRU_add_block(
193 buf_LRU_make_block_young(
200 buf_LRU_make_block_old(
208 buf_LRU_old_ratio_update(
220 buf_LRU_stat_update(
void);
227 buf_LRU_file_dump(
void);
234 buf_LRU_file_restore(
void);
237 #if defined UNIV_DEBUG || defined UNIV_BUF_DEBUG
243 buf_LRU_validate(
void);
246 #if defined UNIV_DEBUG_PRINT || defined UNIV_DEBUG || defined UNIV_BUF_DEBUG
260 #define BUF_LRU_OLD_RATIO_DIV 1024
264 #define BUF_LRU_OLD_RATIO_MAX BUF_LRU_OLD_RATIO_DIV
270 #define BUF_LRU_OLD_RATIO_MIN 51
272 #if BUF_LRU_OLD_RATIO_MIN >= BUF_LRU_OLD_RATIO_MAX
273 # error "BUF_LRU_OLD_RATIO_MIN >= BUF_LRU_OLD_RATIO_MAX"
275 #if BUF_LRU_OLD_RATIO_MAX > BUF_LRU_OLD_RATIO_DIV
276 # error "BUF_LRU_OLD_RATIO_MAX > BUF_LRU_OLD_RATIO_DIV"
281 extern uint buf_LRU_old_threshold_ms;
308 #define buf_LRU_stat_inc_io() buf_LRU_stat_cur.io++
311 #define buf_LRU_stat_inc_unzip() buf_LRU_stat_cur.unzip++
314 #include "buf0lru.ic"