函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:ll_reqs_available* Updates the reqs_available reference counts used for tracking the* number of free slots in the completion ring. This can be called* from aio_complete() (to optimistically update reqs_available) or

函数原型:static void refill_reqs_available(struct kioctx *ctx, unsigned head, unsigned tail)

返回类型:void

参数:

类型参数名称
struct kioctx *ctx
unsignedhead
unsignedtail
962  head取模等于 Size of ringbuffer, in units of struct io_event
963  如果head小于等于tailevents_in_ring等于tailhead
965  否则events_in_ring等于 Size of ringbuffer, in units of struct io_event headtail
968  completed等于completed_events
969  如果events_in_ring小于completedcompleted减等于events_in_ring
971  否则completed等于0
974  如果非completed则返回
977  completed_events减等于completed
978  put_reqs_available(ctx, completed)
调用者
名称描述
user_refill_reqs_availableser_refill_reqs_available* Called to refill reqs_available when aio_get_req() encounters an* out of space in the completion ring.
aio_completeaio_complete* Called when the io request on the given iocb is complete.