函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:aio_free_ring

函数原型:static void aio_free_ring(struct kioctx *ctx)

返回类型:void

参数:

类型参数名称
struct kioctx *ctx
308  put_aio_ring_file(ctx)
310 i小于nr_pages循环
312  pr_debug("pid(%d) [%d] page->count=%d\n", pid, i, page_count(ring_pages[i]))
314  page等于ring_pages[i]
315  如果非page则继续下一循环
317  ring_pages[i] = NULL
318  Perform a free_page(), also freeing any swap cache associated with* this page if it is the last user of the page.
321  如果ring_pagesring_pages不等于internal_pages
322  释放内存
323  ring_pages = NULL
调用者
名称描述
aio_setup_ring
free_ioctx_ioctx() should be RCU delayed to synchronize against the RCU* protected lookup_ioctx() and also needs process context to call* aio_free_ring(). Use rcu_work.
ioctx_allocx_alloc* Allocates and initializes an ioctx. Returns an ERR_PTR if it failed.