#380652 Provide runtime selectable comm plugin framework

#380652#5
Date:
2006-07-31 15:54:07 UTC
From:
To:
On my kernel (2.4.28), starting the updated squid results in a crash
with the following logged in the syslog:

Jul 31 11:30:58 tea (squid): comm_select_init: epoll_create(): (38) Function not implemented

Running squid directly shows the following:

# su proxy -c '/usr/sbin/squid -N'
FATAL: comm_select_init: epoll_create(): (38) Function not implemented

Squid Cache (Version 2.6.STABLE1): Terminated abnormally.
CPU Usage: 0.130 seconds = 0.110 user + 0.020 sys
Maximum Resident Size: 0 KB
Page faults with physical i/o: 578

Running it directly and under strace shows the following:

# su proxy -c 'strace /usr/sbin/squid -N'
[stuff deleted]
open("/var/run/squid.pid", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
getrlimit(RLIMIT_CORE, {rlim_cur=0, rlim_max=RLIM_INFINITY}) = 0
setrlimit(RLIMIT_CORE, {rlim_cur=RLIM_INFINITY, rlim_max=RLIM_INFINITY}) = 0
getrlimit(RLIMIT_NOFILE, {rlim_cur=1024, rlim_max=1024}) = 0
setrlimit(RLIMIT_NOFILE, {rlim_cur=1024, rlim_max=1024}) = 0
getrlimit(RLIMIT_DATA, {rlim_cur=RLIM_INFINITY, rlim_max=RLIM_INFINITY}) = 0
mmap2(NULL, 217088, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x32f000
epoll_create(1024)                      = -1 ENOSYS (Function not implemented)
time([1154361075])                      = 1154361075
open("/etc/localtime", O_RDONLY)        = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=1252, ...}) = 0
fstat64(3, {st_mode=S_IFREG|0644, st_size=1252, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x128000
read(3, "TZif\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\4\0\0\0\4\0"..., 4096) = 1252
close(3)                                = 0
munmap(0x128000, 4096)                  = 0
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1252, ...}) = 0
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1252, ...}) = 0
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1252, ...}) = 0
socket(PF_FILE, SOCK_DGRAM, 0)          = 3
fcntl64(3, F_SETFD, FD_CLOEXEC)         = 0
connect(3, {sa_family=AF_FILE, path="/dev/log"}, 16) = 0
send(3, "<9>Jul 31 11:51:15 squid: comm_s"..., 90, MSG_NOSIGNAL) = 90
write(2, "FATAL: comm_select_init: epoll_c"..., 72FATAL: comm_select_init: epoll_create(): (38) Function not implemented

) = 72
write(2, "Squid Cache (Version 2.6.STABLE1"..., 58Squid Cache (Version 2.6.STABLE1): Terminated abnormally.
) = 58
getrusage(RUSAGE_SELF, {ru_utime={0, 110000}, ru_stime={0, 20000}, ...}) = 0
write(2, "CPU Usage: 0.130 seconds = 0.110"..., 50CPU Usage: 0.130 seconds = 0.110 user + 0.020 sys
) = 50
write(2, "Maximum Resident Size: 0 KB\n", 28Maximum Resident Size: 0 KB
) = 28
write(2, "Page faults with physical i/o: 3"..., 35Page faults with physical i/o: 306
) = 35
rt_sigprocmask(SIG_UNBLOCK, [ABRT], NULL, 8) = 0
kill(9438, SIGABRT)                     = 0
--- SIGABRT (Aborted) @ 0 (0) ---
+++ killed by SIGABRT +++
Process 9438 detached
#

#380652#10
Date:
2006-07-31 23:37:57 UTC
From:
To:
severity 380652 important
retitle 380652 squid 2.6 needs epoll() support which is not in kernel
2.4.x
retitle 377697 squid 2.6 compiled with epoll() support does not start
with kernel <= 2.6.x
merge 380652 377697
thanks

Hi Ambrose,
squid 2.6.STABLE is compiled with epoll() support turned on by
default. The epoll() functions are supported only in kernels 2.6.x.

Since etch will ship with 2.6 as default and 2.4 will not be
supported anymore, squid will carry a notice in README.Debian stating
that kernels previous than 2.6.x are not supported anymore.

This bug was also already opened as 377697. I'm merging your reported
with the previous one. Please check the bug reports before opening a
new bug, next time.

Regards,

#380652#21
Date:
2006-08-01 15:19:06 UTC
From:
To:
Hi,

I did check but did not notice this other bug. Perhaps it was Monday
or maybe I just didn't spend enough time to check.

Regards,

#380652#26
Date:
2007-04-10 14:09:28 UTC
From:
To:
severity 377697 wishlist
severity 380652 wishlist
retitle 377697 Provide runtime selectable comm plugin framework
retitle 380652 Provide runtime selectable comm plugin framework
forward 377697 http://www.squid-cache.org/bugs/show_bug.cgi?id=1739
forward 380652 http://www.squid-cache.org/bugs/show_bug.cgi?id=1739
thanks

Hi,
Etch has been released with a notice in the Release Notes that kernel
2.6 is required to run Squid. Since Debian doesn't support < 2.6
anymore, these bugs are being converted to wishlist bug for a new
comm framework allowing for selectable plugins and forwarded to the
upstream bug record.

A major rework of the storage framework is going on upstream, se
expect this process to take a long time.

Regards,