Lines Matching defs:cached
80 kstat_named_t polllistmiss; /* failed to find a cached poll list */
81 kstat_named_t pollcachehit; /* list matched 100% w/ cached one */
82 kstat_named_t pollcachephit; /* list matched < 100% w/ cached one */
130 * (protected by the PHLOCK, cached array of plocks), and
132 * poll when a cached fd is closed. This is protected by uf_lock.
155 * close cleaning up the cached references to an open file
442 * will succeed even if fds is NULL. However, our cached
476 * Not first time polling. Select a cached poll list by
490 * list and previously cached one.
493 * of cached poll list and cache content.
507 * and NULL fds will not be cached (Then it is either
527 * We failed to find a matching cached poll fd list.
713 * free up all cached poll fds
733 * At this point, all fds cached by this lwp should be
1030 * Since the events field of cached list has illegal poll events filtered
1037 pcacheset_cmp(pollfd_t *current, pollfd_t *cached, pollfd_t *newlist, int n)
1045 prefetch_write_many((caddr_t)&cached[ix + 8]);
1047 if (current[ix].fd == cached[ix].fd) {
1057 if (current[ix].events == cached[ix].events) {
1062 if ((current[ix].fd < 0) && (cached[ix].fd < 0)) {
1072 * This routine returns a pointer to a cached poll fd entry, or NULL if it
1243 * we come here because an earlier close() on this cached poll fd.
1287 * If there is an error, the polled fd is not cached.
1349 * the entry is never used or cleared by removing a cached
1356 * A polled fd is considered cached. So there should be a fpollinfo
1487 * fd cached here has been closed. This is the first
1537 * For each polled fd, it's either in the bitmap or cached in
1576 * resolve the difference between the current poll list and a cached one.
1585 pollfd_t *cached;
1616 * cached one. Whenever a difference is found, resolve it.
1618 * cached list. But we may be setting up the newlist to be the
1619 * cached list for next poll.
1621 cached = pcsp->pcs_pollfd;
1629 offset = pcacheset_cmp(¤t[count], &cached[count], np,
1643 ASSERT((current[count].fd != cached[count].fd) ||
1644 (current[count].events != cached[count].events));
1662 if (cached[count].fd >= 0) {
1663 tmpfd = cached[count].fd;
1665 (uint_t)cached[count].events)) {
1670 * The first appearance in cached list
1672 * appear more than once in the cached
1674 * list and update the cached
1678 if (cached[i].fd == tmpfd) {
1693 cached[count].fd = -1;
1700 * add to the cached fd tbl and bitmap.
1707 cached[count].fd = -1;
1730 * entry in cached poll list
1734 * cached list is consistent
1759 cached[count].fd = current[count].fd;
1760 cached[count].events =
1794 * add to the cached fd tbl and bitmap.
1853 * 2. the fd is cached in the pcache (i.e. pd_php is set). So
1858 * make sure cross reference between cached poll lists and cached
2023 * the pd_events is union of all cached poll events
2032 * releasef after completely done with this cached
2085 * pollhead ptr cached and no other cached
2097 * if the fd can be cached now but not before,
2182 * field for the cached poll list/set.
2195 * invalidate this cache entry in the cached poll list
2243 * a close on this fd. Reset the cached fp ptr here.
2249 * set the event in cached poll lists to POLLCLOSED. This invalidate
2250 * the cached poll fd entry in that poll list, which will force a
2251 * removal of this cached entry in next poll(). The cleanup is done
2551 * Complete phase 2 of cached poll fd cleanup. Call pcache_clean_entry to mark
2641 * When a polled fd is cached in /dev/poll, its polldat will remain on the
2714 * The remove_list is called to cleanup a partially cached 'current' list or
2715 * to remove a partial list which is no longer cached. The flag value of 1
2825 * For every cached pollfd, its polldat struct should be consistent with
2891 * For each cached fd whose bit is not set in bitmap, its revents field in