[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: checking for epoll / compiling kernel



Sam Watkins wrote:

On Wed, Nov 24, 2004 at 08:01:22AM -0800, Cole S. Ashcraft wrote:
1: Is there a way to check to see if I have epoll support (the epoll.h library exists, using sid and a 2.4.18 kernel)

from the epoll manpage:

epoll(4) is a new API introduced in Linux kernel 2.5.44.  Its interface
should be finalized in Linux kernel 2.5.66.
I have a different man page:
    epoll  is a variant of poll(2) that can be used either as Edge or Level
Triggered interface and scales well to large numbers of watched fds. Three system calls are provided to set up and control an epoll set:
      epoll_create(2), epoll_ctl(2), epoll_wait(2).
Is it the same epoll?

When i locate epoll (using locate), I get:
/usr/include/sys/epoll.h
/usr/share/man/man2/epoll_create.2.gz
/usr/share/man/man2/epoll_ctl.2.gz
/usr/share/man/man2/epoll_wait.2.gz
/usr/share/man/man4/epoll.4.gz

The results of locate on my Cobalt (the one using 2.4.18) are no different from the result on my 2.6.9 box (FC2)... hmm. I've also heard it said that libc implements epoll. Is that correct?


so 2.4.18 doesn't come with epoll support - apparently you'll need a 2.6 kernel
for this.  There's a patch for 2.4 at:

 http://www.xmailserver.org/linux-patches/nio-improve.html#patches

Is /dev/epoll different than epoll? My 2.6.9 system does not have a /dev/epoll device, but I know it has epoll support.

or maybe you mean how to check if the system has epoll support,
in a configure script?  as for that, write a little test program that
tries to use it I guess.

2: Can I compile a kernel on another machine? I'd like to use my fast machine to comile a kernel for my slow cobalt, but can I do this?

Yes.  You just need to choose an appropriate processor type in the kernel
config.  For the x86 architecture, 386 is a safe bet!

What's a "cobalt"?


Cobalt is a "thin blue server" appliance made by Sun a long time ago. I hated the Cobalt OS (also a linux, 2.2 kernel) so I put Debian on it. Now I'm trying to push the limits again and run Lotus Domino, which requires epoll.

Sam





Reply to: