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 __attribute__((nonnull));
124 buf_LRU_search_and_free_block(
143 buf_LRU_get_free_only(
156 __attribute__((nonnull,warn_unused_result));
162 buf_LRU_block_free_non_file_page(
180 buf_unzip_LRU_add_block(
189 buf_LRU_make_block_young(
196 buf_LRU_make_block_old(
204 buf_LRU_old_ratio_update(
216 buf_LRU_stat_update(
void);
223 buf_LRU_file_dump(
void);
230 buf_LRU_file_restore(
void);
233 #if defined UNIV_DEBUG || defined UNIV_BUF_DEBUG
239 buf_LRU_validate(
void);
242 #if defined UNIV_DEBUG_PRINT || defined UNIV_DEBUG || defined UNIV_BUF_DEBUG
256 #define BUF_LRU_OLD_RATIO_DIV 1024
260 #define BUF_LRU_OLD_RATIO_MAX BUF_LRU_OLD_RATIO_DIV
266 #define BUF_LRU_OLD_RATIO_MIN 51
268 #if BUF_LRU_OLD_RATIO_MIN >= BUF_LRU_OLD_RATIO_MAX
269 # error "BUF_LRU_OLD_RATIO_MIN >= BUF_LRU_OLD_RATIO_MAX"
271 #if BUF_LRU_OLD_RATIO_MAX > BUF_LRU_OLD_RATIO_DIV
272 # error "BUF_LRU_OLD_RATIO_MAX > BUF_LRU_OLD_RATIO_DIV"
277 extern uint buf_LRU_old_threshold_ms;
304 #define buf_LRU_stat_inc_io() buf_LRU_stat_cur.io++
307 #define buf_LRU_stat_inc_unzip() buf_LRU_stat_cur.unzip++
310 #include "buf0lru.ic"