Lines Matching refs:kn

174 static void	filt_pipedetach(struct knote *kn);
175 static void filt_pipedetach_notsup(struct knote *kn);
176 static int filt_pipenotsup(struct knote *kn, long hint);
177 static int filt_piperead(struct knote *kn, long hint);
178 static int filt_pipewrite(struct knote *kn, long hint);
1780 pipe_kqfilter(struct file *fp, struct knote *kn) in pipe_kqfilter() argument
1789 if ((kn->kn_filter == EVFILT_READ) && !(fp->f_flag & FREAD)) { in pipe_kqfilter()
1790 kn->kn_fop = &pipe_nfiltops; in pipe_kqfilter()
1793 if ((kn->kn_filter == EVFILT_WRITE) && !(fp->f_flag & FWRITE)) { in pipe_kqfilter()
1794 kn->kn_fop = &pipe_nfiltops; in pipe_kqfilter()
1799 switch (kn->kn_filter) { in pipe_kqfilter()
1801 kn->kn_fop = &pipe_rfiltops; in pipe_kqfilter()
1804 kn->kn_fop = &pipe_wfiltops; in pipe_kqfilter()
1815 return (vnops.fo_kqfilter(fp, kn)); in pipe_kqfilter()
1821 kn->kn_hook = cpipe; in pipe_kqfilter()
1822 knlist_add(&cpipe->pipe_sel.si_note, kn, 1); in pipe_kqfilter()
1828 filt_pipedetach(struct knote *kn) in filt_pipedetach() argument
1830 struct pipe *cpipe = kn->kn_hook; in filt_pipedetach()
1833 knlist_remove(&cpipe->pipe_sel.si_note, kn, 1); in filt_pipedetach()
1839 filt_piperead(struct knote *kn, long hint) in filt_piperead() argument
1841 struct file *fp = kn->kn_fp; in filt_piperead()
1842 struct pipe *rpipe = kn->kn_hook; in filt_piperead()
1845 kn->kn_data = rpipe->pipe_buffer.cnt; in filt_piperead()
1846 if (kn->kn_data == 0) in filt_piperead()
1847 kn->kn_data = rpipe->pipe_pages.cnt; in filt_piperead()
1852 kn->kn_flags |= EV_EOF; in filt_piperead()
1855 kn->kn_flags &= ~EV_EOF; in filt_piperead()
1856 return (kn->kn_data > 0); in filt_piperead()
1861 filt_pipewrite(struct knote *kn, long hint) in filt_pipewrite() argument
1863 struct pipe *wpipe = kn->kn_hook; in filt_pipewrite()
1874 kn->kn_data = 0; in filt_pipewrite()
1876 kn->kn_data = wpipe->pipe_buffer.size - in filt_pipewrite()
1879 kn->kn_data = PIPE_BUF; in filt_pipewrite()
1885 kn->kn_flags |= EV_EOF; in filt_pipewrite()
1888 kn->kn_flags &= ~EV_EOF; in filt_pipewrite()
1889 return (kn->kn_data >= PIPE_BUF); in filt_pipewrite()
1893 filt_pipedetach_notsup(struct knote *kn) in filt_pipedetach_notsup() argument
1899 filt_pipenotsup(struct knote *kn, long hint) in filt_pipenotsup() argument