Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:fs\aio.c Create Date:2022-07-28 20:21:14
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:put_reqs_available

Proto:static void put_reqs_available(struct kioctx *ctx, unsigned nr)

Type:void

Parameter:

TypeParameterName
struct kioctx *ctx
unsignednr
907  local_irq_save(flags)
908  kcpu = this_cpu_ptr(cpu)
909  reqs_available += nr
911  When reqs_available >= * For percpu reqs_available, number of slots we move to/from global * counter at a time: * 2 cycle
912  reqs_available -= * For percpu reqs_available, number of slots we move to/from global * counter at a time:
913  atomic_add(* For percpu reqs_available, number of slots we move to/from global * counter at a time:, & * This counts the number of available slots in the ringbuffer, * so we avoid overflowing it: it's decremented (if positive) * when allocating a kiocb and incremented when the resulting * io_event is pulled off the ringbuffer. * We batch accesses to it with)
916  local_irq_restore(flags)
Caller
NameDescribe
refill_reqs_availablell_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
io_submit_one