Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:lib\test_xarray.c Create Date:2022-07-28 06:33:59
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:check_move_small

Proto:static noinline void check_move_small(struct xarray *xa, unsigned long idx)

Type:void

Parameter:

TypeParameterName
struct xarray *xa
unsigned longidx
1186  XA_STATE() - Declare an XArray operation state.*@name: Name of this operation state (usually xas).*@array: Array to operate on.*@index: Initial index of interest.* Declare and initialise an xa_state on the stack.(xas, xa, 0)
1189  xa_store_index(xa, 0, GFP_KERNEL)
1190  xa_store_index(xa, idx, GFP_KERNEL)
1192  _read_lock() - mark the beginning of an RCU read-side critical section* When synchronize_rcu() is invoked on one CPU while other CPUs* are within RCU read-side critical sections, then the* synchronize_rcu() is guaranteed to block until after all the other
1193  When i < idx * 4 cycle
1194  entry = xas_next() - Move state to next index.*@xas: XArray operation state.* If the @xas was in an error state, it will remain in an error state* and this function will return %NULL. If the @xas has never been walked,
1195  If i <= idx Then XA_BUG_ON(xa, xa_node == XAS_RESTART)
1197  XA_BUG_ON(xa, xa_index != i)
1198  If i == 0 || i == idx Then XA_BUG_ON(xa, entry != xa_mk_index(i))
1200  Else XA_BUG_ON(xa, entry != NULL)
1203  xas_next() - Move state to next index.*@xas: XArray operation state.* If the @xas was in an error state, it will remain in an error state* and this function will return %NULL. If the @xas has never been walked,
1204  XA_BUG_ON(xa, xa_index != i)
1206  Do
1207  entry = xas_prev() - Move iterator to previous index.*@xas: XArray operation state.* If the @xas was in an error state, it will remain in an error state* and this function will return %NULL. If the @xas has never been walked,
1208  i--
1209  If i <= idx Then XA_BUG_ON(xa, xa_node == XAS_RESTART)
1211  XA_BUG_ON(xa, xa_index != i)
1212  If i == 0 || i == idx Then XA_BUG_ON(xa, entry != xa_mk_index(i))
1214  Else XA_BUG_ON(xa, entry != NULL)
1216  When i > 0 cycle
1218  xas_set() - Set up XArray operation state for a different index
1219  XA_BUG_ON(xa, xas_next() - Move state to next index.*@xas: XArray operation state.* If the @xas was in an error state, it will remain in an error state* and this function will return %NULL. If the @xas has never been walked, != NULL)
1220  XA_BUG_ON(xa, xa_index != ULONG_MAX)
1221  XA_BUG_ON(xa, xas_next() - Move state to next index.*@xas: XArray operation state.* If the @xas was in an error state, it will remain in an error state* and this function will return %NULL. If the @xas has never been walked, != xa_mk_value() - Create an XArray entry from an integer.*@v: Value to store in XArray.* Context: Any context.* Return: An entry suitable for storing in the XArray.)
1222  XA_BUG_ON(xa, xa_index != 0)
1223  XA_BUG_ON(xa, xas_prev() - Move iterator to previous index.*@xas: XArray operation state.* If the @xas was in an error state, it will remain in an error state* and this function will return %NULL. If the @xas has never been walked, != NULL)
1224  XA_BUG_ON(xa, xa_index != ULONG_MAX)
1225  _read_unlock() - marks the end of an RCU read-side critical section.* In most situations, rcu_read_unlock() is immune from deadlock.* However, in kernels built with CONFIG_RCU_BOOST, rcu_read_unlock()
1227  xa_erase_index(xa, 0)
1228  xa_erase_index(xa, idx)
1229  XA_BUG_ON(xa, !xa_empty() - Determine if an array has any present entries.*@xa: XArray.* Context: Any context.* Return: %true if the array contains only NULL pointers.)
Caller
NameDescribe
check_move