函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:mark_buffer_dirty - mark a buffer_head as needing writeout*@bh: the buffer_head to mark dirty* mark_buffer_dirty() will set the dirty bit against the buffer, then set* its backing page dirty, then tag the page as dirty in the page cache* and then attach

函数原型:void mark_buffer_dirty(struct buffer_head *bh)

返回类型:void

参数:

类型参数名称
struct buffer_head *bh
1128  WARN_ON_ONCE(!Emit the buffer bitops functions. Note that there are also functions* of the form "mark_buffer_foo()". These are higher-level functions which* do something in addition to setting a b_state bit.)
1130  lock_dirty_buffer - mark a buffer dirty*@bh: buffer_head being dirtied* Called from mark_buffer_dirty().
1138  如果buffer_dirty(bh)则
1139  smp_mb()
1140  如果buffer_dirty(bh)则返回
1144  如果非test_set_buffer_dirty(bh)则
1145  page等于 the page this bh is mapped to
1146  struct address_space * mapping = NULL
1148  lock_page_memcg - lock a page->mem_cgroup binding*@page: the page* This function protects unlocked LRU pages from being moved to* another cgroup
1149  如果非TestSetPageDirty(page)则
1150  mapping等于page_mapping(page)
1154  lock_page_memcg - unlock a page->mem_cgroup binding*@page: the page
1155  如果mapping__mark_inode_dirty - internal function*@inode: inode to mark*@flags: what kind of dirty (i
调用者
名称描述
mark_buffer_dirty_inode
page_zero_new_buffersIf a page has any new buffers, zero them out here, and mark them uptodate* and dirty so they'll be written out (in order to prevent uninitialised* block data from leaking). And clear the new bit.
__block_write_begin_int
__block_commit_write
block_truncate_page