Lighttpd 1.4.6 and also the latest 1.3.x in portage wont serve static files like css, html, jpeg, ... but has no problem serving dynamic files like php. Reproducible: Always Steps to Reproduce: 1. emerge lighttpd 2. /etc/init.d/lighttpd start 3. open your favourite browser and direct it to the server Actual Results: the browser does not display anything, couse it gets no data the log file from lighttpd says: 2005-10-12 17:14:34: (network_linux_sendfile.c.167) sendfile failed: Invalid argument 6 2005-10-12 17:14:34: (connections.c.515) connection closed: write failed on fd 6 Expected Results: should send out static files discovery ~ # emerge info Portage 2.0.51.22-r3 (default-linux/amd64/2005.0, gcc-3.4.4, glibc-2.3.5-r2, 2.6.14-rc2-mm1 x86_64) ================================================================= System uname: 2.6.14-rc2-mm1 x86_64 AMD Athlon(tm) 64 Processor 3500+ Gentoo Base System version 1.6.13 dev-lang/python: 2.3.5-r2, 2.4.1-r1 sys-apps/sandbox: 1.2.12 sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1 sys-devel/binutils: 2.15.92.0.2-r10 sys-devel/libtool: 1.5.18-r1 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="amd64" AUTOCLEAN="yes" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=athlon64 -Os -ftracer -pipe -fomit-frame-pointer -s -funroll-loops" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/X11/xkb /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=athlon64 -Os -ftracer -pipe -fomit-frame-pointer -s -funroll-loops" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/Linux/distributions/gentoo" LANG="en_US.utf8" LC_ALL="en_US.utf8" LINGUAS="de" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="amd64 X aac acpi alsa avi berkdb bitmap-fonts bmp cdr crypt cups curl dga dvd dvdr dvdread eds emboss encode exif fam ffmpeg firefox foomaticdb fortran ftp gif gstreamer gtk gtk2 guile imagemagick imlib ipv6 jpeg libwww lzw lzw-tiff moznoxft mp3 mpeg msn ncurses nls nptl nptlonly nvidia ogg oggvorbis openal opengl pam pdflib perl png python quicktime readline recode sdl slang spell sqlite ssl svg tcltk tcpd theora tiff truetype truetype-fonts type1-fonts unicode usb userlocales v4l v4l2 vcd vorbis xine xml2 xpm xv xvid xvmc zlib linguas_de userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LDFLAGS
This seems to be a problem with the new 2.6.14 kernel. I switched back to a 2.6.13 kernel and now it works again. I had the same problem with apache 2.
I also had the same problem with apache. What could it be that made it so ... in the new .14 kernel that is .. ? But I had no problems with apache with .14-r2 ...
The Problem is the sendfile() function, it can write the data direct to the network hardware and therefor it is faster than combining read and write fucntion (user-space to kernel-space copy) and this seems to be a problem in 2.6.14-kernel, maybe this is fixed in the -r2 kernels. I have now a 2.6.15-kernel running, without problems.