Make winbind use epoll where available

Volker Lendecke Volker.Lendecke at SerNet.DE
Thu Jan 17 13:10:36 MST 2013


On Thu, Jan 17, 2013 at 12:57:10PM -0500, Ira Cooper wrote:
> On Thu, Jan 17, 2013 at 12:52 PM, Jeremy Allison <jra at samba.org> wrote:
> 
> > On Thu, Jan 17, 2013 at 04:57:26PM +0100, Volker Lendecke wrote:
> > > Hi!
> > >
> > > Attached find a patchset to make winbind use the standard
> > > tevent_context_init function which uses epoll where
> > > available. Before this winbind would always do poll. Ran a
> > > successful private autobuild.
> > >
> > > One customer test brought winbind from 100% CPU over minutes
> > > down to barely being seen in "top" for obvious reasons.
> > >
> > > Comments?
> >
> > Is it worth making samba, smbd and nmbd also do this ?
> 
> 
> I see poll and the smbd poll setup functions in my profiling with DTrace
> already.
> 
> I'm not sure on the percentages.  I can find that out.  Also I'm not sure
> how much I'd get converting to a Solaris "port" based mechanism.  But it
> should be similar to epoll.

I was thinking more of a libevent backend to tevent. This
way we catch both Solaris and the BSDs with their kqueue.

Does anybody here have practical experience with libevent?
How much of a performance penalty do we pay compared to the
direct syscalls?

Thanks,

Volker

-- 
SerNet GmbH, Bahnhofsallee 1b, 37081 Göttingen
phone: +49-551-370000-0, fax: +49-551-370000-9
AG Göttingen, HRB 2816, GF: Dr. Johannes Loxen
http://www.sernet.de, mailto:kontakt at sernet.de


More information about the samba-technical mailing list