Re: Linux 2.4.20-pre4-ac2

From: Christoph Hellwig (hch@infradead.org)
Date: Mon Aug 26 2002 - 06:54:06 EST


On Mon, Aug 26, 2002 at 06:35:04AM -0400, Alan Cox wrote:
> o Khttpd race fixes (Dan Kegel)

This includes some wrong documentation updates:

+ kHTTPd is *not* currently compatible with tmpfs. Trying to serve
+ files stored on a tmpfs partition is known to cause kernel oopses
+ as of 2.4.18. This is due to the same problem that prevents sendfile()
+ from being usable with tmpfs. A tmpfs patch is floating around that seems
+ to fix this, but has not been released as of 27 May 2002.
+ kHTTPD does work fine with ramfs, though.

This is _not_ a problem with tmpfs, but with khttpd. The same problem
is also present with nay filesystem that uses the pagecache but not
generic_file_read or a non-trivial wrapper around generic_file_read, such
as smbfs, ncpff, nfs, (open-)gfs, or xfs. This might not always mean
those filesystems don't work at all with khttpd, but at least it opens
race conditions. khttpd uses do_generic_file_read directly instead of
using a file operation, and the problem is that do_generic_file_read
should never have been exported to allow such a layering violation.
sendfile() and the loop driver have the same issue. In 2.5 of those
only the loop issue is still existant, and I plan to fix that one and
make do_generic_file_read static.

+ There is debate about whether to remove kHTTPd from the main
+ kernel sources. This will probably happen in the 2.5 kernel series,
+ after which khttpd will still be available as a patch.

khttpd is gone in 2.5

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sat Aug 31 2002 - 22:00:16 EST