The issue arises from two instances where a pin operation occurs: one during allocate_page and another within init_empty_page. However, there seems to be only a single unpin operation via record_page_handle.cleanup(). This discrepancy leads to a situation where cannot flush the page because the pincount remains at 1, suggesting that the page is still in use. This could only be a source of frustration for those who checks the pincount during page eviction.
The issue arises from two instances where a pin operation occurs: one during allocate_page and another within init_empty_page. However, there seems to be only a single unpin operation via record_page_handle.cleanup(). This discrepancy leads to a situation where cannot flush the page because the pincount remains at 1, suggesting that the page is still in use. This could only be a source of frustration for those who checks the pincount during page eviction.
该问题是由发生 pin 操作的两个实例引起的:一个是在 allocate_page 期间,另一个是在 init_empty_page 期间。 然而,似乎只有一个通过 record_page_handle.cleanup() 的unpin操作。 这会导致无法刷新页面的情况,因为 pincount 仍为 1,表明该页面仍在使用中。 这可能只会让那些在页面驱逐期间检查 pincount 的人感到困扰。