Note to self what needs fixing (both potentially serious issues and merely better asserts) in 5.5:
- buf_flush_or_remove_pages: add mutex_own LRU list mutex
- buf_flush_page_and_try_neighbors: BUF_BLOCK_REMOVE_HASH => LRU
mutex held
- buf_LRU_free_from_common_LRU_list must have an LRU mutex, check
its caller too
- buf_page_get_zip must check for BUF_BLOCK_REMOVE_HASH before
calling buf_LRU_free_block
- buf_pool_watch_is_sentinel: assert that either page mutex is
locked, or that page hash is S or X latched.
- buf_read_ahead_random must latch page hash.
- buf_page_get_block: assert page hash latched.
Note to self what needs fixing (both potentially serious issues and merely better asserts) in 5.5: or_remove_ pages: add mutex_own LRU list mutex page_and_ try_neighbors: BUF_BLOCK_ REMOVE_ HASH => LRU free_from_ common_ LRU_list must have an LRU mutex, check REMOVE_ HASH before watch_is_ sentinel: assert that either page mutex is ahead_random must latch page hash.
- buf_flush_
- buf_flush_
mutex held
- buf_LRU_
its caller too
- buf_page_get_zip must check for BUF_BLOCK_
calling buf_LRU_free_block
- buf_pool_
locked, or that page hash is S or X latched.
- buf_read_
- buf_page_get_block: assert page hash latched.