After world-upgrading to 3.1.6-r1 squid segfaults reliably on certain http requests, i.e. iTunes Store on two seperate machines Kernel messages: Sep 15 10:05:20 router kernel: squid[26680]: segfault at b7268fa8 ip 080fc6c3 sp bfce28d0 error 6 in squid[8048000+215000] Sep 15 10:05:26 router kernel: squid[27267]: segfault at b7217fa8 ip 080fc6c3 sp bfb218f0 error 6 in squid[8048000+215000] Sep 15 10:05:30 router kernel: squid[27272]: segfault at b7206fa8 ip 080fc6c3 sp bfd0f9e0 error 6 in squid[8048000+215000] Sep 15 10:05:46 router kernel: squid[27275]: segfault at b71d6fa8 ip 080fc6c3 sp bfc4d060 error 6 in squid[8048000+215000] Sep 15 10:05:56 router kernel: squid[27278]: segfault at b7209fa8 ip 080fc6c3 sp bfdff750 error 6 in squid[8048000+215000] Sep 15 10:06:33 router kernel: squid[27281]: segfault at b7296fa8 ip 080fc6c3 sp bfeb0a10 error 6 in squid[8048000+215000] Sep 15 10:06:39 router kernel: squid[27284]: segfault at b722dfa8 ip 080fc6c3 sp bfccbfd0 error 6 in squid[8048000+215000] Sep 15 10:07:07 router kernel: squid[27287]: segfault at b7217fa8 ip 080fc6c3 sp bfcfa380 error 6 in squid[8048000+215000]
emerge --info Portage 2.1.8.3 (default/linux/x86/10.0, gcc-4.4.3, glibc-2.11.2-r0, 2.6.31-gentoo-r10 i686) ================================================================= System uname: Linux-2.6.31-gentoo-r10-i686-AMD_Athlon-tm-_Processor-with-gentoo-1.12.13 Timestamp of tree: Fri, 10 Sep 2010 06:45:01 +0000 app-shells/bash: 4.1_p7 dev-lang/python: 2.6.5-r3, 3.1.2-r4 sys-apps/baselayout: 1.12.13 sys-apps/sandbox: 1.6-r2 sys-devel/autoconf: 2.65 sys-devel/automake: 1.10.1, 1.11.1 sys-devel/binutils: 2.20.1-r1 sys-devel/gcc: 4.4.3-r2 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.2.6b sys-devel/make: 3.81-r2 virtual/os-headers: 2.6.30-r1 ACCEPT_KEYWORDS="x86" ACCEPT_LICENSE="* -@EULA" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=athlon-xp -mtune=athlon-xp -O2 -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /var/bind" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/gconf /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo" CXXFLAGS="-march=athlon-xp -mtune=athlon-xp -O2 -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="assume-digests distlocks fixpackages news parallel-fetch protect-owned sandbox sfperms strict unmerge-logs unmerge-orphans userfetch" GENTOO_MIRRORS="http://gentoo.tiscali.nl/ http://gentoo.mneisen.org/ http://de-mirror.org/distro/gentoo/ http://gentoo.mirror.pw.edu.pl/" LANG="de_DE.UTF-8" LC_ALL="de_DE.UTF-8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" LINGUAS="de en" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_EXTRA_OPTS="--exclude-from=/etc/portage/rsync_excludes --delete-excluded" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="acl alsa apache2 bzip2 cracklib cups cxx dri fortran gdbm gpm iconv ipppd logrotate maildir modules mp3 mudflap ncurses nls nptl nptlonly openmp pam pcre perl pppd python readline reflection session ssl symlink sysfs tcpd tk unicode x86 xorg zlib" ALSA_CARDS="intel8x0" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias authz_host autoindex cache deflate dir disk_cache env expires file_cache filter headers include info log_config mem_cache mime mime_magic negotiation unique_id" ELIBC="glibc" FRITZCAPI_CARDS="fcpci" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de en" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="vesa" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTDIR_OVERLAY
squid.conf: acl manager proto cache_object acl localhost src 127.0.0.1/32 acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 acl localnet src 192.168.0.0/16 # RFC1918 possible internal network acl SSL_ports port 443 9000 acl Safe_ports port 80 # http acl Safe_ports port 21 # ftp acl Safe_ports port 443 # https acl Safe_ports port 70 # gopher acl Safe_ports port 210 # wais acl Safe_ports port 1025-65535 # unregistered ports acl Safe_ports port 280 # http-mgmt acl Safe_ports port 488 # gss-http acl Safe_ports port 591 # filemaker acl Safe_ports port 631 # cups acl Safe_ports port 777 # multiling http acl Safe_ports port 901 # SWAT acl purge method PURGE acl CONNECT method CONNECT acl blockedsites url_regex "/etc/squid/blockedSites.txt" acl local-servers dst 192.168.0.0/24 acl nice2cu-dev url_regex ^http://dev.nice2cu.de.* acl nice2cu-php5 url_regex ^http://php5.nice2cu.de.* acl nice2cu-s3 url_regex ^http://s3.nice2cu.de.* acl nice2cu-testing url_regex ^http://testing.nice2cu.de.* acl mcf url_regex ^http://.*mycodefactory..* cache deny nice2cu-dev cache deny nice2cu-php5 cache deny nice2cu-testing cache deny mcf always_direct allow local-servers http_access allow manager localhost http_access deny manager http_access allow purge localhost http_access deny purge http_access deny !Safe_ports http_access deny CONNECT !SSL_ports http_access deny blockedsites http_access allow localnet http_access allow localhost http_access allow localhost http_access deny all htcp_access allow localnet htcp_access deny all hierarchy_stoplist cgi-bin ? http_port 3128 intercept cache_dir ufs /var/cache/squid 500 16 256 coredump_dir /var/cache/squid refresh_pattern ^ftp: 1440 20% 10080 refresh_pattern ^gopher: 1440 0% 1440 refresh_pattern (cgi-bin|\?) 0 0% 0 refresh_pattern .*t1\.nice2cu\.de.* 1440 100% 1440 refresh_pattern . 0 20% 4320 cache_mgr technik@nice2cu.de visible_hostname router.ip error_directory /usr/share/squid/errors/de-de/ dns_nameservers 127.0.0.1
Created attachment 247434 [details] tcpdump during segfault triggering request
have squid deployed on gentoo in two seperate hotels. using iptables to DNAT http traffic to the squid cache. can have up time of up to 7 days before a child process segfaults with error 6. maximum ten days before squid parent segfaults. doesn't matter if squid set to intercept (correct) or transparent (deprecated) same thing happens. this is on i686 and x86_64 with 2.6.34-gentoo-r1 x86_64 [SMP Fri Aug 13 15:50:29 BST 2010 x86_64 Intel(R) Atom(TM) CPU 330 @ 1.60GHz GenuineIntel GNU/Linux] Sep 20 07:06:10 [kernel] [3241219.854796] squid[12114]: segfault at 7fbecc632f6] Sep 20 07:06:22 [kernel] [3241232.193245] squid[30155]: segfault at 7f4e3dc08f6] i686 [1 Thu Aug 19 13:45:09 BST 2010 i686 VIA Esther processor 1200MHz CentaurHauls GNU/Linux] /var/log/everything/log-2010-09-11-00:09:01:Sep 11 00:55:39 [kernel] squid[13935]: segfault at b7317fa8 ip 080fc93e sp bfeb3300 error 6 in squid[8048000+215000] /var/log/everything/log-2010-09-13-00:09:01:Sep 12 20:42:52 [kernel] squid[15378]: segfault at b7384fa8 ip 080fc93e sp bf8d4f70 error 6 in squid[8048000+215000] /var/log/everything/log-2010-09-14-00:09:01:Sep 13 08:12:28 [kernel] squid[28590]: segfault at b720afa8 ip 080fc93e sp bf925420 error 6 in squid[8048000+215000] /var/log/everything/log-2010-09-20-00:09:01:Sep 19 23:45:53 [kernel] squid[32571]: segfault at b738dfa8 ip 080fc93e sp bfacd150 error 6 in squid[8048000+215000] /var/log/everything/log-2010-09-20-00:09:01:Sep 19 23:46:02 [kernel] squid[26488]: segfault at b7289fa8 ip 080fc93e sp bfe8f0c0 error 6 in squid[8048000+215000] /var/log/everything/log-2010-09-20-00:09:01:Sep 19 23:46:09 [kernel] squid[26491]: segfault at b7287fa8 ip 080fc93e sp bff1d150 error 6 in squid[8048000+215000] /var/log/everything/log-2010-09-20-00:09:01:Sep 19 23:46:17 [kernel] squid[26494]: segfault at b71dbfa8 ip 080fc93e sp bfc65190 error 6 in squid[8048000+215000] /var/log/everything/log-2010-09-20-00:09:01:Sep 19 23:46:24 [kernel] squid[26497]: segfault at b71c1fa8 ip 080fc93e sp bf8e3960 error 6 in squid[8048000+215000] /var/log/everything/log-2010-09-20-00:09:01:Sep 19 23:46:36 [kernel] squid[26500]: segfault at b7251fa8 ip 080fc93e sp bfbff3a0 error 6 in squid[8048000+215000]
sorry for x86_64 error looks like this Sep 20 07:06:10 [kernel] [3241219.854796] squid[12114]: segfault at 7fbecc632f60 ip 00007fbecc7ccb5d sp 00007fffe0a6c010 error 6 in squid[7fbecc6ea000+22f00] Sep 20 07:06:22 [kernel] [3241232.193245] squid[30155]: segfault at 7f4e3dc08f60 ip 00007f4e3dda2b5d sp 00007fff709212f0 error 6 in squid[7f4e3dcc0000+22f00]
I just upgraded to 3.1.8; copy the 3.1.6 patches and apply this patch to the ebuild. Maybe it helps. I can't tell so far since I just restarted squid. --- squid-3.1.6-r1.ebuild 2010-09-06 22:36:47.000000000 +0200 +++ squid-3.1.8.ebuild 2010-09-22 10:27:37.355298872 +0200 @@ -65,10 +65,11 @@ pkg_setup() { } src_prepare() { - epatch "${FILESDIR}"/${P}-gentoo.patch + # epatch "${FILESDIR}"/${P}-gentoo.patch + patch -p1 -i "${FILESDIR}"/${P}-gentoo.patch epatch "${FILESDIR}"/${P}-qafixes.patch epatch "${FILESDIR}"/${P}-libmd5.patch - epatch "${FILESDIR}"/${P}-bug3011.patch + # epatch "${FILESDIR}"/${P}-bug3011.patch # eautoreconf breaks lib/libLtdl/libtool script ./bootstrap.sh || die "autoreconf failed"
Please check if squid-3.1.8 fixed this issue. If not, reopen this bug.