apr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Joe Orton <jor...@redhat.com>
Subject Re: [PATCH] pollset_poll() improvements
Date Thu, 12 Aug 2004 09:44:29 GMT
On Sat, Jul 24, 2004 at 07:46:24PM -0700, Paul Querna wrote:
> On Mon, 2004-07-19 at 09:05 +0100, Joe Orton wrote:
> > On Sun, Jul 18, 2004 at 02:41:07PM -0700, Paul Querna wrote:
> > >  #elif defined(HAVE_EPOLL)
> > >      ev.events = get_epoll_event(descriptor->reqevents);
> > > +    ev.data.fd = pollset->nelts;
> > 
> > Did you use data.fd for this rather than data.u32 for a particular
> > reason?  Looks like the latter is a more natural choice since ->nelts is
> > also a uint32 (and not an fd)?
> 
> Attached is a slightly updated patch uses data.u32(data.fd was just a
> normal int...). Also updated it to not set data.fd in the remove
> function, since its not needed.

Sorry, I've been away on holiday - and now a nitpick for the kqueue
changes in the patch:

>      if (descriptor->reqevents & APR_POLLIN) {
> -        EV_SET(&pollset->kevent, fd, EVFILT_READ, EV_ADD, 0, 0, NULL);
> +        EV_SET(&pollset->kevent, fd, EVFILT_READ, EV_ADD, 0, 0, 
> +            (void*)pollset->nelts);

this is bad practice, casting back from (void *) to int gives compiler
warnings on LP64 platforms.  Is there a cleaner alternative?  epoll
stuff looks good, I'll commit that.

Thanks Paul.

joe

Mime
View raw message