Re: [take24 3/6] kevent: poll/select() notifications.

Evgeniy Polyakov
2006-11-09T09:32:45Z

On Thu, Nov 09, 2006 at 10:08:44AM +0100, Eric Dumazet (dada1@cosmosbay.com) wrote:
> Here you test both KEVENT_SOCKET and KEVENT_PIPE
>
> > +#if defined CONFIG_KEVENT_SOCKET || defined CONFIG_KEVENT_PIPE
> > + kevent_storage_init(inode, &inode->st);
> > +#endif
> > }
> > return inode;
> > }
> >
> > void destroy_inode(struct inode *inode)
> > {
>
> but here you test only KEVENT_SOCKET
>
> > +#if defined CONFIG_KEVENT_SOCKET
> > + kevent_storage_fini(&inode->st);
> > +#endif

Indeed, it must be
#if defined CONFIG_KEVENT_SOCKET || defined CONFIG_KEVENT_PIPE

> > BUG_ON(inode_has_buffers(inode));
> > security_inode_free(inode);
> > if (inode->i_sb->s_op->destroy_inode)
> > diff --git a/include/linux/fs.h b/include/linux/fs.h
> > index 5baf3a1..c529723 100644
> > --- a/include/linux/fs.h
> > +++ b/include/linux/fs.h
> > @@ -276,6 +276,7 @@ #include <linux/prio_tree.h>
> > #include <linux/init.h>
> > #include <linux/sched.h>
> > #include <linux/mutex.h>
> > +#include <linux/kevent_storage.h>
> >
> > #include <asm/atomic.h>
> > #include <asm/semaphore.h>
> > @@ -586,6 +587,10 @@ #ifdef CONFIG_INOTIFY
> > struct mutex inotify_mutex; /* protects the watches list */
> > #endif
> >
>
> Here you include a kevent_storage only if KEVENT_SOCKET
>
> > +#ifdef CONFIG_KEVENT_SOCKET
> > + struct kevent_storage st;
> > +#endif
> > +

It must be
#if defined CONFIG_KEVENT_SOCKET || defined CONFIG_KEVENT_PIPE

--
Evgeniy Polyakov