Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:lib\radix-tree.c Create Date:2022-07-28 06:12:59
Last Modify:2022-05-21 10:04:37 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:adix_tree_shrink - shrink radix tree to minimum height*@root radix tree root

Proto:static inline bool radix_tree_shrink(struct xarray *root)

Type:bool

Parameter:

TypeParameterName
struct xarray *root
480  bool shrunk = false
482  cycle
483  node = Dependency order vs. p above. (xa_head)
486  If Not radix_tree_is_internal_node(node) Then Break
488  node = entry_to_node(node)
494  If count != 1 Then Break
496  child = Dependency order vs. p above. (slots[0])
497  If Not child Then Break
505  If Not shift && is_idr(root) Then Break
508  If radix_tree_is_internal_node(child) Then NULL at top of tree = NULL
518  xa_head = child
519  If is_idr(root) && Not tag_get(node, The IDR API does not expose the tagging functionality of the radix tree* to users. Use tag 0 to track whether a node has free space below it., 0) Then root_tag_clear(root, The IDR API does not expose the tagging functionality of the radix tree* to users. Use tag 0 to track whether a node has free space below it.)
540  count = 0
541  If Not radix_tree_is_internal_node(child) Then
542  slots[0] = RADIX_TREE_RETRY
545  WARN_ON_ONCE(!list_empty - tests whether a list is empty*@head: the list to test.)
546  radix_tree_node_free(node)
547  shrunk = true
550  Return shrunk
Caller
NameDescribe
delete_node