函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:fs\buffer.c Create Date:2022-07-29 10:45:06
Last Modify:2020-03-18 10:38:29 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:Returns if the page has dirty or writeback buffers. If all the buffers* are unlocked and clean then the PageDirty information is stale. If* any of the pages are locked, it is assumed they are locked for IO.

函数原型:void buffer_check_dirty_writeback(struct page *page, bool *dirty, bool *writeback)

返回类型:void

参数:

类型参数名称
struct page *page
bool *dirty
bool *writeback
90  * dirty = false
91  * writeback = false
93  BUG_ON(!PageLocked(page))
95  如果非page_has_buffers(page)则返回
98  如果Only test-and-set exist for PG_writeback. The unconditional operators are* risky: they bypass page accounting.则 * writeback = true
101  head等于If we *know* page->private refers to buffer_heads (page)
102  bh等于head
103  循环
104  如果buffer_locked(bh)则 * writeback = true
107  如果buffer_dirty(bh)则 * dirty = true
110  bh等于 circular list of page's buffers
111 bh不等于head循环