Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:ipc\mqueue.c Create Date:2022-07-28 16:50:40
Last Modify:2020-03-17 23:00:47 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:mqueue_evict_inode

Proto:static void mqueue_evict_inode(struct inode *inode)

Type:void

Parameter:

TypeParameterName
struct inode *inode
443  LIST_HEAD(tmp_msg)
445  clear an inode
447  If S_ISDIR(i_mode) Then Return
450  ipc_ns = get_ns_from_inode(inode)
451  info = MQUEUE_I(inode)
452  spin_lock( & lock)
453  When ((msg = msg_get(info)) != NULL) cycle
454  list_add_tail - add a new entry*@new: new entry to be added*@head: list head to add it before* Insert a new entry before the specified head.* This is useful for implementing queues.
455  kfree(node_cache)
456  spin_unlock( & lock)
459  deletes entry from list
460  free_msg(msg)
463  user = user who created, for accounting
464  If user Then
468  mq_treesize = maximum number of messages * sizeof(structmsg_msg) + min_t - return minimum of two values, using the specified type*@type: data type to use*@x: first value*@y: second value(unsignedint, maximum number of messages , MQ_PRIO_MAX) * sizeof(structposix_msg_tree_node)
472  mq_bytes = mq_treesize + maximum number of messages * maximum message size
475  spin_lock( & mq_lock)
476  How many bytes can be allocated to mqueue? -= mq_bytes
483  If ipc_ns Then mq_queues_count--
485  spin_unlock( & mq_lock)
486  free_uid(user)
488  If ipc_ns Then put_ipc_ns(ipc_ns)