Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:mm\page-writeback.c Create Date:2022-07-28 14:11:13
Last Modify:2022-05-23 13:25:58 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:For address_spaces which do not use buffers. Just tag the page as dirty in* the xarray.* This is also used when a single buffer is being dirtied: we want to set the* page dirty in that case, but not all the buffers. This is a "bottom-up"

Proto:int __set_page_dirty_nobuffers(struct page *page)

Type:int

Parameter:

TypeParameterName
struct page *page
2467  lock_page_memcg(page)
2468  If Not TestSetPageDirty(page) Then
2469  mapping = page_mapping(page)
2472  If Not mapping Then
2474  Return 1
2477  xa_lock_irqsave( & i_pages, flags)
2478  BUG_ON(page_mapping(page) != mapping)
2479  WARN_ON_ONCE(!Private page markings that may be used by the filesystem that owns the page* for its own purposes.* - PG_private and PG_private_2 cause releasepage() and co to be invoked && !PageUptodate(page))
2480  Helper function for set_page_dirty family.* Caller must hold lock_page_memcg().* NOTE: This relies on being atomic wrt interrupts.
2481  __xa_set_mark() - Set this mark on this entry while locked.*@xa: XArray.*@index: Index of entry.*@mark: Mark number.* Attempting to set a mark on a %NULL entry does not succeed.* Context: Any context. Expects xa_lock to be held on entry.
2483  xa_unlock_irqrestore( & i_pages, flags)
2484  unlock_page_memcg(page)
2486  If host Then
2490  Return 1
2492  unlock_page_memcg(page)
2493  Return 0
Caller
NameDescribe
redirty_page_for_writepageWhen a writepage implementation decides that it doesn't want to write this* page for some reason, it should redirty the locked page via* redirty_page_for_writepage() and it should then unlock the page and return 0