kqueue implementation

Daniel Molina Wegener dmw at unete.cl
Wed May 23 01:42:55 UTC 2007


On Tuesday 22 May 2007 13:04:37 Suleiman Souhlal wrote:
> On May 21, 2007, at 6:48 AM, Daniel Molina Wegener wrote:
> > On Monday 21 May 2007 03:57:58 John-Mark Gurney wrote:
> >> Daniel Molina Wegener wrote this message on Sun, May 20,
> >> 2007
> >
> > at 18:31 -0400:
> >>>    I'm coding an application using the kqueue facility,
> >>> but I see that I can't handle open and read events. Is
> >>> planned to implement these handlings in the future?.
> >>> Also, which facility can I use to handle these kind of
> >>> events?
> >>
> >> I'm unsure what you mean by open and read events?  Do you
> >> mean getting an event when another process opens are file?
> >> or?  As for read, they work fine for sockets, as w/
> >> select, files are always ready to read even though they
> >> may block to read from disk...
> >
> > Hello,
> >
> > I mean vnode events, in the manual page I see NOTE_WRITE,
> > but I need NOTE_OPEN and NOTE_READ. Is there any chance to
> > get these kind of events?
>
> They should be easy to add.. All you would need to do for
> NOTE_OPEN would be to add a vop_open_post  hook to VOP_OPEN
> that calls VFS_KNOTE_LOCKED(..., NOTE_OPEN). Similarly for
> read.
>
> Take a look at how, for example, NOTE_CREATE is implemented
> (vop_create_post in sys/kern/vfs_subr.c) and how we add VOP
> hooks (sys/kern/vnode_if.src).
>
> Why do you need these?

  I'm working on a log file monitor, with programable tasks on
certain events.

>
> -- Suleiman
>
> [SNIP]


Regards,
-- 
 .O. | Daniel Molina Wegener   | C/C++ Developer
 ..O | dmw [at] unete [dot] cl | FOSS Coding Adict
 OOO | BSD & Linux User        | Standards Rocks!



More information about the freebsd-hackers mailing list