Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:fs\eventpoll.c Create Date:2022-07-28 20:19:08
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:ep_send_events_proc

Proto:static __poll_t ep_send_events_proc(struct eventpoll *ep, struct list_head *head, void *priv)

Type:__poll_t

Parameter:

TypeParameterName
struct eventpoll *ep
struct list_head *head
void *priv
1683  esed = priv
1686  __user * uevent = events
1690  init_poll_funcptr( & pt, NULL)
1691  res = 0
1698  lockdep_assert_held( & * This mutex is used to ensure that files are not removed * while epoll is using them. This is held during the event * collection loop, the file cleanup path, the epoll file exit * code and the ctl operations.)
1701  If res >= maxevents Then Break
1713  ws = all only when ep->mtx is held
1714  If ws Then
1715  If active Then __pm_stay_awake( wakeup_source used when ep_scan_ready_list is running )
1717  __pm_relax(ws)
1720  list_del_init - deletes entry from list and reinitialize it.*@entry: the element to delete from the list.
1728  revents = Differs from ep_eventpoll_poll() in that internal callers already have* the ep->mtx so we need to start from depth=1, such that mutex_lock_nested()* is correctly annotated.
1729  If Not revents Then Continue
1732  If Write a simple value into user space, with less checking(revents, & events) || Write a simple value into user space, with less checking(data, & data) Then
1734  list_add - add a new entry*@new: new entry to be added*@head: list head to add it after* Insert a new entry after the specified head.* This is good for implementing stacks.
1735  all only when ep->mtx is held
1736  If Not res Then res = -EFAULT
1738  Return 0
1740  res++
1741  uevent++
1742  If events & Set the One Shot behaviour for the target file descriptor Then events &= Epoll private bits inside the event mask
1744  Else if Not (events & Set the Edge Triggered behaviour for the target file descriptor ) Then
1756  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.
1757  all only when ep->mtx is held
1761  Return 0