From owner-freebsd-current@FreeBSD.ORG Wed Aug 11 03:28:48 2004 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3364A16A4CE for ; Wed, 11 Aug 2004 03:28:48 +0000 (GMT) Received: from omoikane.mb.skyweb.ca (omoikane.mb.skyweb.ca [64.42.246.20]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7AE4243D31 for ; Wed, 11 Aug 2004 03:28:47 +0000 (GMT) (envelope-from mark@skyweb.ca) Received: by omoikane.mb.skyweb.ca (Postfix, from userid 1001) id D6A9461D2D; Tue, 10 Aug 2004 22:28:39 -0500 (CDT) From: Mark Johnston To: current@freebsd.org Date: Tue, 10 Aug 2004 22:28:39 -0500 User-Agent: KMail/1.6.1 MIME-Version: 1.0 Content-Disposition: inline Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Message-Id: <200408102228.39276.mjohnston@skyweb.ca> Subject: cvs-src summary for August 2-9 X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 11 Aug 2004 03:28:48 -0000 Here's the summary, albeit a bit delayed; things are back on track after the holiday. Mark FreeBSD cvs-src summary for 02/08/04 to 09/08/04 ++++++++++++++++++++++++++++++++++++++++++++++++ This is a regular weekly summary of FreeBSD's cutting-edge development. It is intended to help the FreeBSD community keep up with the fast-paced work going on in FreeBSD-CURRENT by distilling the deluge of data from the CVS mailing list into a (hopefully) easy-to-read newsletter. This newsletter is marked up in reStructuredText_, so any odd punctuation that you see is likely intended for the reST parser. .. _reStructuredText: http://docutils.sourceforge.net/rst.html You can get old summaries, and an HTML version of this one, at http://www.xl0.org/FreeBSD/. Please send any comments to Mark Johnston (mark at xl0.org). For Lukasz Dudek and Szymon Roczniak's Polish translations of these summaries, which may lag the English ones slightly, please see http://mocart.pinco.pl/FreeBSD/. .. contents:: ============ New features ============ Support for Thread Local Storage added -------------------------------------- Doug Rabson (dfr) added support for Thread Local Storage (TLS), a GCC feature that allows a variable to be declared as separate for each thread, so if one thread changes it, the changes will not affect other threads. The main user of this is OpenGL. http://www.freebsd.org/cgi/mid.cgi?200408030851.i738p0uZ062955 ipfw gains antispoof option --------------------------- Andre Oppermann (andre) added an option called "antispoof" to ipfw. The antispoof option checks the source address of a packet; if that adress is on a directly connected network, but the packet is coming in on a different interface than that network is connected to, antispoof *does not* match. That means that it should be used as follows:: ipfw add deny ip from any to any not antispoof in http://www.freebsd.org/cgi/mid.cgi?200408091612.i79GCAOB064830 FILE updated to 4.10 -------------------- David O'Brien (obrien) imported Christos Zoulas's FILE version 4.10. FILE is a tool that identifies files and prints information about them. http://www.freebsd.org/cgi/mid.cgi?200408090845.i798jhgY049866 bsnmpd updated to 1.7 --------------------- Hartmut Brandt (harti) updated bsnmpd, a lightweight SNMP server. This update introduces fixups, cleanups, and the ability for gensnmptree to merge multiple trees. http://www.freebsd.org/cgi/mid.cgi?200408061338.i76DcVcM015589 sendmail 8.13.1 MFC'ed ---------------------- Gregory Neil Shapiro (gshapiro) MFC'ed the sendmail 8.13.1 update. http://www.freebsd.org/cgi/mid.cgi?200408090015.i790FiVa033171 =============== Notable changes =============== Packet mode enabled by default in boot0cfg ------------------------------------------ David O'Brien (obrien) enabled packet mode by default in boot0cfg, the program that installs the bootloader code. Packet mode allows the system to boot from partitions above cylinder 1024, but can affect compatibility, especially on SCSI drives. http://www.freebsd.org/cgi/mid.cgi?200408031520.i73FKtea075256 Command-line arguments in make now propagate to all sub-makes ------------------------------------------------------------- Hartmut Brandt (harti) modified make to propagate its command-line arguments to sub-makes as command-line arguments, as required by POSIX. This primarily affects prople using MAKEOBJDIR and MAKEOBJDIRPREFIX as command-line arguments; they should instead be used as environment variables, so they don't propagate to sub-makes. Some discussion followed from this commit, but it was generally of a technical support nature and isn't summarized here. The committed code was derived from NetBSD. http://www.freebsd.org/cgi/mid.cgi?200408031856.i73IuV8c082723 null.ko removed --------------- Mark Murray (markm) removed the null.ko kernel module, which provided /dev/null and /dev/zero in module form. Those devices are now built in to all kernels statically. http://www.freebsd.org/cgi/mid.cgi?200408031924.i73JOsJR083899 CARP placeholder added; recompile of network modules required ------------------------------------------------------------- Max Laier (mlaier) added a placeholder to the network interface structure to permit adding CARP, the Common Address Redundancy Protocol, from OpenBSD, in the future. Any modules that use the ifnet structure will need to be recompiled. http://www.freebsd.org/cgi/mid.cgi?200408070932.i779W4u6054997 TCP in-flight sysctls moved into a subtree ------------------------------------------ Andre Oppermann (andre) moved the sysctls net.inet.tcp.inflight_enable, net.inet.tcp.inflight_debug, net.inet.tcp.inflight_min, net.inet.tcp.inflight_max, and net.inet.tcp.inflight_stab to their own subtree, net.inet.tcp.inflight. The result of this is that the underscores in the old names become dots in the new ones. http://www.freebsd.org/cgi/mid.cgi?200408031354.i73DsBZ6072580 ================= Discussion topics ================= Dealing with duplicate modules ------------------------------ David O'Brien (obrien) removed the recently-added mem.ko module from the kernel Makefile, saying, "Currently one cannot load the mem.ko module without panicing if mem is compiled into the kernel and one cannot build a kernel w/o 'device mem' right now either." John Baldwin (jhb) replied, "You need to file a bug report, not start a commit war. Revert this commit and give Mark [Murray] a chance of trying to fix this." David replied, "I'll back it out, but I'm now asking for a back out of the entire mem as a module commit -- it is only 1/2 baked [ . . . ]." David also followed up to his original post, saying, "Please find a way for all your /dev KO's to detect if they are already active and not panic if loaded(initialized) twice." Roman Kurakin (rik) responded, "Take a look how ctau(4)/cx(4)/cp(4) solve this problem.", giving some sample code. Mark Murray (markm) replied too, saying, "I am investigating. In the meanwhile, please back out this commit [ . . . ]." David responded, "You've been investigating for years. I've reported the problem about random.ko more than once.", also backing out his original commit as Mark asked. Mark answered, "What I'm having problems with is fixing the module system, particularly when it works with some modules and not with others." Brooks Davis (brooks) also replied to David, saying, "IMO this is a module system bug not a bug in any given module." Mark replied, "I'm looking to see if MODULE_VERSION() may fix this." Nate Lawson (njl) responded, "The case where mem is compiled into the kernel and then an attempt is made to load it as a module needs to be detected by looking for an instance of the devclass." John pointed out, "mem is a dev_t aka struct cdev \*, not a device_t. There is no devclass." Brooks added, "Similarly, where I've seen this problem is pseudo network interfaces which are nothing but ifnet entries. This is why I think we need to handle this in the module layer and stop requring hack in every driver." http://www.freebsd.org/cgi/mid.cgi?200408021814.i72IE6QJ030695 Cryptography in releases and legal concerns ------------------------------------------- Nate Lawson (njl) moved the crypto distribution into base, making all releases cryptography-enabled. He noted, "The -DNOCRYPT build option still exists for anyone who really wants to build non-cryptographic binaries [ . . . ]." Paul Richards replied, "From information I've received recently it seems that exporting crypto from the UK now requires an export license." Poul-Henning Kamp (phk) responded, "No it doesn't. Read the Waasenaar accord." Colin Percival also answered Paul, saying, "When I asked [the UK Department of Trade and Industry] about crypto a couple years ago, their response was 'it's open source? In that case, go right ahead'. Of course, the usual caveats about not exporting to embargoed countries and not assisting in the production of WMD still apply, but those restrictions would apply regardless of whether we ship cryptographic binaries." Paul replied, "In this case it wasn't open source, it was a commercial product that had FreeBSD in it, specifically it was "tangible" and that's significant when interpreting the export rules." He also gave a link to the crypto law survey at http://rechten.uvt.nl/koops/cryptolaw/cls2.htm . In a second posting, he clarified that "It's not an issue for FreeBSD to be distributed as open source [but] It doesn't however follow that FreeBSD is always exempt from export controls because it might not be if your exporting it as a product, even if that product is just FreeBSD on a CD." Mark Murray (markm) answered, "This is just plain incorrect. If it is Open Source, it is exportable." Paul asked, "Do you have a reference for that assumption?" Mark replied, "Not offhand, but our company lawyers OKed it.", and suggested http://www.wassenaar.org and http://www.dti.gov.uk as well. Paul responded, "I'm only reporting what I was told by a UK FreeBSD user [ . . . ]. For their product the fact that FreeBSD was bundled into an embedded product meant that it was not considered to be an open source product and therefore possibly needed an export license." Mark clarified, "If the product's web site has a downloadable copy of the cryptographic stuff available for public download, you don't need to license. If the cryptographic code is in some way _NOT_ available to the general public, you need to seek permission." http://www.freebsd.org/cgi/mid.cgi?200408060727.i767R87w004556 =================== Important bug fixes =================== mbuf exhaustion panic fixed --------------------------- Brian Feldman (green) changed the UMA (uniform memory access) code, allowing UMA to return an error if the memory requested could not be allocated. This eliminates the panics when you run out of memory for mbuf clusters. http://www.freebsd.org/cgi/mid.cgi?200408020018.i720Iato093771 =============== Other bug fixes =============== Nate Lawson (njl) made EISA probing less invasive; this fixes hangs on some laptops (Thinkpads, for instance) when booting with ACPI disabled, but breaks the old Adaptec 2842 VLB controller. VLB (Vesa Local Bus) is a bus technology that predates PCI, and that was commonly found on 486es. http://www.freebsd.org/cgi/mid.cgi?200408030041.i730fl2S048673 Joe Marcus Clarke (marcus) fixed a segfault in natd when trying to process a PPTP (used for VPN connections) or Skinny (SCCP, used for Cisco IP phones) packet. http://www.freebsd.org/cgi/mid.cgi?200408041517.i74FH8e9028150