Lines Matching refs:kn

173 static void	filt_pipedetach(struct knote *kn);
174 static void filt_pipedetach_notsup(struct knote *kn);
175 static int filt_pipenotsup(struct knote *kn, long hint);
176 static int filt_piperead(struct knote *kn, long hint);
177 static int filt_pipewrite(struct knote *kn, long hint);
178 static int filt_pipedump(struct proc *p, struct knote *kn,
1784 pipe_kqfilter(struct file *fp, struct knote *kn) in pipe_kqfilter() argument
1793 if ((kn->kn_filter == EVFILT_READ) && !(fp->f_flag & FREAD)) { in pipe_kqfilter()
1794 kn->kn_fop = &pipe_nfiltops; in pipe_kqfilter()
1797 if ((kn->kn_filter == EVFILT_WRITE) && !(fp->f_flag & FWRITE)) { in pipe_kqfilter()
1798 kn->kn_fop = &pipe_nfiltops; in pipe_kqfilter()
1803 switch (kn->kn_filter) { in pipe_kqfilter()
1805 kn->kn_fop = &pipe_rfiltops; in pipe_kqfilter()
1808 kn->kn_fop = &pipe_wfiltops; in pipe_kqfilter()
1819 return (vnops.fo_kqfilter(fp, kn)); in pipe_kqfilter()
1825 kn->kn_hook = cpipe; in pipe_kqfilter()
1826 knlist_add(&cpipe->pipe_sel.si_note, kn, 1); in pipe_kqfilter()
1832 filt_pipedetach(struct knote *kn) in filt_pipedetach() argument
1834 struct pipe *cpipe = kn->kn_hook; in filt_pipedetach()
1837 knlist_remove(&cpipe->pipe_sel.si_note, kn, 1); in filt_pipedetach()
1843 filt_piperead(struct knote *kn, long hint) in filt_piperead() argument
1845 struct file *fp = kn->kn_fp; in filt_piperead()
1846 struct pipe *rpipe = kn->kn_hook; in filt_piperead()
1849 kn->kn_data = rpipe->pipe_buffer.cnt; in filt_piperead()
1850 if (kn->kn_data == 0) in filt_piperead()
1851 kn->kn_data = rpipe->pipe_pages.cnt; in filt_piperead()
1856 kn->kn_flags |= EV_EOF; in filt_piperead()
1859 kn->kn_flags &= ~EV_EOF; in filt_piperead()
1860 return (kn->kn_data > 0); in filt_piperead()
1865 filt_pipewrite(struct knote *kn, long hint) in filt_pipewrite() argument
1867 struct pipe *wpipe = kn->kn_hook; in filt_pipewrite()
1878 kn->kn_data = 0; in filt_pipewrite()
1880 kn->kn_data = wpipe->pipe_buffer.size - in filt_pipewrite()
1883 kn->kn_data = PIPE_BUF; in filt_pipewrite()
1889 kn->kn_flags |= EV_EOF; in filt_pipewrite()
1892 kn->kn_flags &= ~EV_EOF; in filt_pipewrite()
1893 return (kn->kn_data >= PIPE_BUF); in filt_pipewrite()
1897 filt_pipedetach_notsup(struct knote *kn) in filt_pipedetach_notsup() argument
1903 filt_pipenotsup(struct knote *kn, long hint) in filt_pipenotsup() argument
1910 filt_pipedump(struct proc *p, struct knote *kn, in filt_pipedump() argument
1913 struct pipe *pipe = kn->kn_hook; in filt_pipedump()