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:xit_aio: called when the last user of mm goes away. At this point, there is* no way for any new requests to be submited or any of the io_* syscalls to be* called on the context.* There may be outstanding kiocbs, but free_ioctx() will explicitly wait on

Proto:void exit_aio(struct mm_struct *mm)

Type:void

Parameter:

TypeParameterName
struct mm_struct *mm
862  table = Dependency order vs. p above. (ioctx_table)
866  If Not table Then Return
869  atomic_set( & count, nr)
870  init_completion( & comp)
872  skipped = 0
873  When i < nr cycle
874  ctx = cu_dereference_protected() - fetch RCU pointer when updates prevented*@p: The pointer to read, prior to dereferencing*@c: The conditions under which the dereference will take place* Return the value of the specified RCU-protected pointer, but omit(table[i], true)
877  If Not ctx Then
878  skipped++
879  Continue
889  mmap_size = 0
890  kill_ioctx* Cancels all outstanding aio requests on an aio context. Used* when the processes owning a context have all exited to encourage* the rapid destruction of the kioctx.
893  If Not atomic_sub_and_test(skipped, & count) Then
895  wait_for_completion: - waits for completion of a task*@x: holds the state of this particular completion* This waits to be signaled for completion of a specific task. It is NOT* interruptible and there is no timeout.* See also similar routines (i
898  RCU_INIT_POINTER() - initialize an RCU protected pointer*@p: The pointer to be initialized.*@v: The value to initialized the pointer to.* Initialize an RCU-protected pointer in special cases where readers(ioctx_table, NULL)
899  kfree(table)