Lines Matching refs:item

38     epoll_item_t *item = (epoll_item_t *)arg;  in lwip_epoll_notify()  local
44 pdev = item->epoll; in lwip_epoll_notify()
50 item->revents = revent; in lwip_epoll_notify()
51 if ((revent & (~EP_PRIVATE_BITS)) & item->event.events) { in lwip_epoll_notify()
52 if (item->rdy == 0) { in lwip_epoll_notify()
53 dlist_add(&item->link_node, &pdev->ready_list); in lwip_epoll_notify()
54 item->rdy = 1; in lwip_epoll_notify()
58 if (item->rdy == 1) { in lwip_epoll_notify()
59 dlist_del(&item->link_node); in lwip_epoll_notify()
60 item->rdy = 0; in lwip_epoll_notify()
70 epoll_item_t *item = (epoll_item_t *)arg; in vfs_epoll_notify() local
76 pdev = item->epoll; in vfs_epoll_notify()
82 if (poll2epoll(pfd->revents) & item->event.events) { in vfs_epoll_notify()
83 item->revents = poll2epoll(pfd->revents); in vfs_epoll_notify()
84 if (item->rdy == 0) { in vfs_epoll_notify()
85 dlist_add(&item->link_node, &pdev->ready_list); in vfs_epoll_notify()
86 item->rdy = 1; in vfs_epoll_notify()
93 static int epoll_add_event_cb(epoll_item_t *item) in epoll_add_event_cb() argument
97 if (item->fd < aos_vfs_fd_offset_get()) { in epoll_add_event_cb()
99 ret = lwip_set_epoll_callback(item->fd, lwip_epoll_notify, item); in epoll_add_event_cb()
105 ret = aos_do_pollfd(item->fd, true, vfs_epoll_notify, &item->compat_evt, item); in epoll_add_event_cb()
227 static int epoll_set_item(epoll_item_t *item, epoll_dev_t *dev, epoll_ctl_data_t *data) in epoll_set_item() argument
232 item->fd = data->fd; in epoll_set_item()
233 item->rdy = 0; in epoll_set_item()
234 memcpy(&item->event, data->event, sizeof(struct epoll_event)); in epoll_set_item()
235 item->epoll = dev; in epoll_set_item()
237 item->compat_evt.fd = data->fd; in epoll_set_item()
238 item->compat_evt.events = (uint16_t) data->event->events; in epoll_set_item()
244 epoll_item_t *item = NULL; in epoll_control() local
249 item = rbr_find(&pdev->rb_tree, data->fd); in epoll_control()
250 if (item != NULL) { in epoll_control()
255 item = malloc(sizeof(epoll_item_t)); in epoll_control()
256 if (item == NULL) { in epoll_control()
260 memset(item, 0, sizeof(epoll_item_t)); in epoll_control()
261 if (epoll_set_item(item, pdev, data) < 0) { in epoll_control()
263 free(item); in epoll_control()
266 ret = rbt_insert(&pdev->rb_tree, item); in epoll_control()
269 free(item); in epoll_control()
273 ret = epoll_add_event_cb(item); in epoll_control()
303 item = rbr_find(&pdev->rb_tree, data->fd); in epoll_control()
304 if (item == NULL) { in epoll_control()
310 memcpy(&item->event, data->event, sizeof(struct epoll_event)); in epoll_control()