函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:fs\eventpoll.c Create Date:2022-07-29 10:50:58
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:Modify the interest event mask by dropping an event if the new mask* has a match in the current file status. Must be called with "mtx" held.

函数原型:static int ep_modify(struct eventpoll *ep, struct epitem *epi, const struct epoll_event *event)

返回类型:int

参数:

类型参数名称
struct eventpoll *ep
struct epitem *epi
const struct epoll_event *event
1611  pwake等于0
1614  lockdep_assert_irqs_enabled()
1616  init_poll_funcptr( & pt, NULL)
1623  events等于events
1624  data等于data
1625  如果events按位与Request the handling of system wakeup events so as to prevent system suspends* from happening while those events are being processed
1626  如果非ep_has_wakeup_source(epi)则ep_create_wakeup_source(epi)
1628  否则如果ep_has_wakeup_source(epi)则
1629  are code path, only used when EPOLL_CTL_MOD removes a wakeup source
1650  smp_mb()
1658  如果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.
1659  write_lock_irq( & Lock which protects rdllist and ovflist )
1670  write_unlock_irq( & Lock which protects rdllist and ovflist )
1674  如果pwakeep_poll_safewake( & Wait queue used by file->poll() )
1677  返回:0
调用者
名称描述
SYSCALL_DEFINE4The following function implements the controller interface for* the eventpoll file that enables the insertion/removal/change of* file descriptors inside the interest set.