Function report |
Source Code:ipc\mqueue.c |
Create Date:2022-07-28 16:51:30 |
| Last Modify:2020-03-17 23:00:47 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:do_mq_timedsend
Proto:static int do_mq_timedsend(mqd_t mqdes, const char __user *u_msg_ptr, size_t msg_len, unsigned int msg_prio, struct timespec64 *ts)
Type:int
Parameter:
| Type | Parameter | Name |
|---|---|---|
| mqd_t | mqdes | |
| const char __user * | u_msg_ptr | |
| size_t | msg_len | |
| unsigned int | msg_prio | |
| struct timespec64 * | ts |
| 974 | struct posix_msg_tree_node * new_leaf = NULL |
| 975 | ret = 0 |
| 978 | If Value for the false possibility is greater at compile time(msg_prio >= (unsignedlong)MQ_PRIO_MAX) Then Return -EINVAL |
| 981 | If ts Then |
| 986 | audit_mq_sendrecv(mqdes, msg_len, msg_prio, ts) |
| 994 | inode = file_inode(file) |
| 1000 | audit_file(file) |
| 1002 | If Value for the false possibility is greater at compile time(!(f_mode & le is open for writing )) Then |
| 1019 | message text size = msg_len |
| 1027 | If Not node_cache Then new_leaf = Allocation memory |
| 1032 | If Not node_cache && new_leaf Then |
| 1037 | Else |
| 1041 | If number of messages currently queued == maximum number of messages Then |
| 1042 | If f_flags & O_NONBLOCK Then |
| 1044 | Else |
| 1055 | Else |
| 1057 | If receiver Then |
| 1059 | Else |
| 1062 | If ret Then Go to out_unlock |
| 1066 | i_atime = i_mtime = i_ctime = current_time(inode) |
| 1069 | out_unlock : |
| 1070 | spin_unlock( & lock) |
| 1072 | out_free : |
| 1075 | out_fput : |
| 1077 | out : |
| 1078 | Return ret |
| Name | Describe |
|---|---|
| SYSCALL_DEFINE5 |
| Source code conversion tool public plug-in interface | X |
|---|---|
| Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |