*参照元 [#ga15d683] #backlinks *説明 [#g38af4c5] -パス: [[linux-4.4.1/fs/select.c]] -FIXME: これは何? --説明 **引数 [#jd896dc9] -struct file *filp -- --[[linux-4.4.1/file]] -wait_queue_head_t *wait_address -- --[[linux-4.4.1/wait_queue_head_t]] -poll_table *p -- --[[linux-4.4.1/poll_table]] **返り値 [#r5f1c912] -なし **参考 [#b4febdb2] *実装 [#g921faec] /* Add a new entry */ static void __pollwait(struct file *filp, wait_queue_head_t *wait_address, poll_table *p) { struct poll_wqueues *pwq = container_of(p, struct poll_wqueues, pt); struct poll_table_entry *entry = poll_get_entry(pwq); - --[[linux-4.4.1/poll_wqueues]] --[[linux-4.4.1/container_of()]] --[[linux-4.4.1/poll_table_entry]] --[[linux-4.4.1/poll_get_entry()]] if (!entry) return; entry->filp = get_file(filp); entry->wait_address = wait_address; entry->key = p->_key; init_waitqueue_func_entry(&entry->wait, pollwake); entry->wait.private = pwq; add_wait_queue(wait_address, &entry->wait); - --[[linux-4.4.1/get_file()]] --[[linux-4.4.1/init_waitqueue_func_entry()]] --[[linux-4.4.1/pollwake()]] --[[linux-4.4.1/add_wait_queue()]] } *コメント [#u93f1e3d]