Subject: NetBSD: An Update (*READ THIS*)



[snagged from comp.unix.bsd for your entertainment]

In comp.unix.bsd article <[email-masked]  
wrote:

 Hi,

 The purpose of this post is to let you know what the NetBSD project
 has been up to lately, what the cool stuff is coming down the pipe,
 and more general information dissemination.

 [This document is the result of a number of contributions, and is thus
 a little less than perfect]

 Meta stuff:

 First, the members of the NetBSD project have little time to read
 news.  Regardless of whether you post a bug report to
 comp.os.386bsd.*, please send your bug reports to
 [email-masked]'.  If we don't at least
 acknowledge your bug report promptly, let us know.

 We are making changes in the way we do "business" in order to provide
 better technical support.  In particular, we will be switching to a
 more integrated bug report management scheme (likely GNATS) such that
 bug reports do not fall between the cracks.  This "database" will be
 manned by a much larger group of people than were ever on the
 netbsd-bugs list.  Expect announcements from us on how all this is
 going to work later in the week.

 Use the mailing lists.  Some people have been using the list of
 contributors at the end of the TODO file as a mailing list.  We would
 prefer that you use one of the standard lists like 'netbsd-comments'
 instead.

 To make it easier for you to get involved in the NetBSD project, and
 to reduce our own load, the NetBSD mailing lists are now under
 Majordomo, a mailing list maintenance tool.  If you mail
 [email-masked]', you will receive information on
 which mailing lists are available, and how to subscribe.  Note that
 some of the more obscure mailing lists are closed (have owners) for
 noise reasons.  Contact the owners of those lists if you feel you need
 access.  Also be warned that a re-organization of the mailing lists
 internal to netbsd is coming soon.  Hopefully this transition will be
 smooth and without incident.  This re-organization will reflect a
 desire for a greater signal to noise ratio.

 Look for a change in the 'doc' directory structure in the coming
 weeks.  This change will seperate the documentation, changes, bugs,
 todos, and installation docs that are machine-independent from those
 that are port-specific.

 Status/On-going projects:
 (all of this is post-NetBSD 0.9, so presently this code is only
 available via the NetBSD-current distribution (sup or tar).  The next
 release though should include some or all of the stuff discussed below)

 (assume bugs fixed throughout)

 Shared libraries support
 	Paul Kranenburg and company have done a sun-like dynamic
 	library scheme	that meets our specs.  It hasn't been committed to our
 	tree yet, though some software has been upgraded to the level necessary
 	to make it all work.  It is designed to be easily ported to other
 	architectures, and already works on i386 and sparc.
 	There is still some important work to be done, but the core is present.
 	Obviously we will let you know how this progresses.  

 Magnum branch
 	A branch of the tree that works more like 4.4.  It eases the porting of
 	4.4-oriented ports to NetBSD.  It uses config.new, some of the BSD 4.4
 	ideas on scheduling, clocks, and profiling, and is a general
 	code improvement in flexibility over the net2 code.  This branch is
 	not currently available to the general public yet, but
 	arrangements can be made.  It will be rolled into the mainline code
 	in the relatively near future.

 i386 port
 	multiport serial boards
 	  cyclades cyclom-8y (and 4/16y) multiport async serial
 		support is now in the tree
 	  support for some of the digiboard multiport cards should be
 		forthcoming soon. Two seperate groups have come forward with
 		drivers that need further testing, and debugging.
 	serial i/o - a driver rewrite is in the immediate plans of at
 		least 4 NetBSD people.  At worst, we will do a bakeoff.
 	a re-org/re-work of the i386 autoconfiguration support including
 		interrupts, dma, etc.  This should allow for a better
 		'GENERIC' kernel, and will probably include bounce buffers
 		and the like.  This work is part of the magnum branch,
 		and will appear when it gets merged into the mainline tree
 MacBSD or NetBSD/Mac
        pre-alpha release went out.
        more robust release expected any day now
        current release can be had on sun-lamp:/pub/NetBSD/mac
        Mailing lists are:
  	[email-masked]
 	[email-masked]
        mail [email-masked]' to join them.
 hp300 port
       this port runs, works fine, and is in regular use.  A
       distribution will be prepared soon.  Contact Charles Hannum
       <[email-masked] for more info.  

 Sun3 port
      It fails to exec init since I haven't compiled one.  Otherwise
      this port is in need of drivers, and some integration work with
      the mainline tree.  Currently hamstrung by personal resource
      issues.  Looking for people who can take it the rest of the way.
 	      mail [email-masked]'.
      Mailing lists are:
 	     [email-masked]
 	     use majordomo as described earlier to subscribe.
 Amiga port
       This port is being actively distributed.
       	[email-masked] is the main mailing list
 	and mail netbsd-admin@... to subsribe.
 	distribution available from
 	     nic.funet.fi:pub/unix/NetBSD/NetBSD-amiga
 	more info available from comp.unix.amiga and Markus Wild
 	<[email-masked] 

 Sparc port
       Succeeds in exec'ing /sbin/init, and in mounting sunos filesystems.
       Expected to go single-user very soon.  People who wish to debug kernel
       panics can send [email-masked] mail, but no earlier than oct15
       as there's still much to be done.  Requires magnum branch.

 Mips port (actually decstations)
      The 4.4 decstation code has been donated to us by the authors,
      Rick Macklem and his compatriot.  They want to see the code
      merged into NetBSD but don't have the time to do this by
      themselves.  No one has stepped forward yet witht the appropriate
      combination of time,  knowledge and resources.  Interesting parties
      should contact me <[email-masked] and I'll refer
      you to the appropropriate parties.

 General Changes
      more base improvements to baseline code portability and overall
      stability (see changes list appended below)
      fsclean support - basically marking ufs filesystems systems as
      clean if unmounted properly to speed reboots.  Code is from
      Andrew Herbert.  This is mostly in the tree now and should be
      activated soon.
      Posix stuff - more utilities, functions made posix.2 compliant
      A serious amount of kernel work fixing bugs, improving stability,
      adding functionality, and improving portability.  This is
      detailed further in the Changes list below.

 These are the changes we've logged to the NetBSD source pool since
 NetBSD 0.9.  This does not reflect some of the work being done in
 branches, or committed in batches by off-lamp developers.  To get
 access to this pre-next-release work, you must fetch the
 NetBSD-current sources.  There should be information about this in the
 install notes.  

 Changes from NetBSD 0.9 (yes, changes which aren't in this distribution!):
 	delete share/man/man4/kadb.4. (brezak)
 	cleanup for DDB: allow one to fault in DDB, cleanup pretty printers
 		for maps and objects, and support for adding symbol tables
 		at runtime. (brezak)
 	use XIDLE extension in rpc.rusersd (if present). (brezak)
 	changed kill, mkdir, mkfifo, rmdir, and umask (sh builtin) to be
 		 IEEE 1003.2 (D11.2) compliant. (jtc)
 	add latent support to config to generate header files for options.
 		(brezak)
 	rewrote sun copyrighted header files (deraadt)
 	fixed yp-related bug in endpwent() found by <[email-masked] (deraadt)
 	othersrc/kermit add LOCKDIR for Taylor uucp, SETREUID, and STRINGPIDS.
 		 (brezak)
 	fixed vm_object.c to remove an object from the hashtable when
 		vm_object_collapse() starts fiddling with pagers. (pk)
 	removed two bogus splx() calls in aha1742.c found by
 		<[email-masked] (deraadt)
 	added RCS identifiers to many of the files which were missing them.
 		(mycroft)
 	added support for the `noauto' option to mount. (mycroft)
 	replaced much of the rtc code with code from Mach. Now handles
 		resettodr(). (brezak)
 	added support for i486 instruction set extensions to gas. (jtc)
 	implement play_msf variants for SCSI cd. Now for the player... (brezak)
 	changes from <[email-masked] for gzip'ed sup file
 		transfer. (brezak)
 	add service port for WWW http to /etc/services. (brezak)
 	upgraded uucp to version 1.04. (jtc)
 	upgraded manpages of many programs, and most of the games to
 		use -mandoc macros. (jtc)
 	added __pure qualifier to many of the function declarations in 

 		<math.h. (jtc)
 	replaced volatile qualifier in <err.h with __dead, for when we're 

 		not compiling with gcc. (jtc)
 	updated fts(3), vis(3), and glob(3) to latest versions from Berkeley,
 		with local bug fixes. (mycroft)
 	added sys_signame[] to libc, like 4.4, and changed some programs to
 		use it. (mycroft)
 	added getbsize() to libutil, like 4.4, but with a `force' flag to
 		specify a particular block size. (mycroft)
 	updated du and df to latest versions from Berkeley, but with `-k'
 		flag readded. (mycroft)
 	added a missing suser() to if_sl.c (deraadt)
 	fixed the suser() call in if_tun.c (deraadt)
 	fixed a few utilities to work with the new fts(3) routines (deraadt)
 	new MID_M68K and MID_M68K4K executables, and associated changes
 		to file command (deraadt)
 	add MI insque/remque (and man pages) to libc. (brezak)
 	brought in fixed/renamed/matching MS-DOS FS code, from Jeff Polk
 		<[email-masked]. (cgd)
 	ppp added thanks to <paulus@sun-lamp, <mw@sun-lamp, and
 		<[email-masked] (deraadt)
 	ppp bugs/completeness - stty/print.c (recognize line disc), pppd/main.c
 		(use LOG_INFO for informational stuff, correctly set line
 		speeds), pppd/pppstats/Makefile,pppstats.c (install group
 		and kernel name). (brezak)
 	changed cut, date (via changes to strftime()), expand, nice, ln, 

 		time and wc to be IEEE 1003.2-92 compliant. (jtc)
 	changed system(), popen(), and pclose() to be 

 		IEEE 1003.2-92 compliant. (jtc)
 	fixes for some typos in the pc3 termcap entry from
 		Thorsten Lockert <[email-masked] (cgd)
 	fix for make's handling of obj symlinks which point nowhere, from
 		Christoph Robitschko <[email-masked] (cgd)
 	added proc filesystem (PROCFS) code (pk)
 	change mountd so it can be started by inetd. Also cleanup. (brezak)
         add SYSV shared memory library stubs to libc. From usenet
 		posting. (brezak)
 	added "ed1" to generic kernels for 3c503 support. (cgd)
 	vop_setattr() aded to procfs, enables chmod's of processes and
 		chmod/chown/chgrp on the procfs root dir. (pk)
 	add bootpd to othersrc. Add bootp service nos to/etc/services. (brezak)
         add -x flag to strip. Removes local syms, stabs, and compiler idents
 		symbols. (brezak)
 	machine independant changes to VM to be able to handle machines with
 		non-contiguous memory from Wolfgang Solfrank. Machines that
 		need this use "option MACHINE_NONCONTIG". (brezak)
 	i386 machine dependant changes for non-contiguous memory. WARNING-
 		you will need a new config for this. (brezak)
 	i386 boot program changes to load the symbols table from the image,
 		be able to boot omagic executables, pass a few more
 		arguments, and enable the kbd clock. [You will need this
 		for the next changes having to do with DDB symbol loading]
 		(brezak)
 	update othersrc/bootpd to conform with RFC-1395. (brezak)
 	changes to allow boot to load ddb symbols. define SYMTAB_SPACE=nnn if
 		your boot program cannot do this. Otherwise build the new boot
 		program for the i386 and don't define SYMTAB_SPACE. (brezak)
 	kernel pagers are controlled as options, not as pseudo-devices  
(deraadt)
 	tty device driver XXstart() routines return void (deraadt)
 	sun3 port now in the tree.  Doesn't actually work,
 		but real close.  Status info in sys/arch/sun3/STATUS. (glass)
 	torek's 'config.new' integrated, including the kernel support for his
 		autoconfig mechanisim.  Currently used only by sun3. (glass)
 	priority queueing for interactive traffic + bpf support added
 		to the ppp driver. (paulus)
 	fix from "James W. Dolter" <[email-masked] so that
 		exec deals properly with shell scripts with symlinks in their
 		names.  (cgd)
 	use "posix" rather than "right" rules for time conversions.  fixes
 		a 14-second discrepancy with other systems and WWV (cgd)
 	if_ppp.c: received IP packets now passed correctly to BPF. (paulus)
 	reduce i386 max stack limit to 2M (cgd)
 	clean up stack size and limit code (cgd)
 	replace ptrace() implementation with a better one from Sean Fagan
 		<[email-masked] (cgd)
 	fix LKM's loading of device driver modules so it actually does it.
 		patch from Szabolcs Sziget <[email-masked] (cgd)
 	modified VFS readdir semantics to better support nfs cookies (ws)
 	changed mountd/mount system call to allow exporting of filesystems
 		other than UFS (ws)
 	enhanced ISOFS filesystem with better Rockridge support, support
 		for generation numbers, extended attributes
 		and associated files (ws)
 	strip filename records from symtab with "strip -x". (brezak)
 	add .S.o rule to sys.mk. (brezak)
 	fixes from Jim Wilson <[email-masked] to sh: don't core if
 		given a pair of backquotes with no command in between.
 		also, don't accept semicolon in for loop without 'in'
 		keyword, and handle TEOF like TNL in command parsing. (cgd)
 	allow for exporting whole directory trees with -alldir in /etc/exports,
 		changes from Richard A Macklem <[email-masked] (ws)
 	first fixes for the short/int mismatch in the system calls. (phil)
 	imported the src/sys/arch/pc532 tree. (phil)
 	fixed arch/pc532/include/param.h (phil)
 	fixed up vm_object_print and vm_map_print so that they work as
 		DIAGNOSTIC and DDB. (brezak)
 	added MACHINE_NONCONTIG to *standard* configs. (brezak)
 	changes to config and sys/arch/i386/conf/Makefile.i386 to default
 		kernel load address at 1M. Use "at 0xfe000000" in config
 		to load kernel low. (brezak)
 	eliminte syscframes, they are now the same as trap frames. (brezak)
 	aculog owned by uucp.dialer after log rotation, not root.wheel.
 		bug reported by Greg Tanaka <[email-masked] (cgd)
 	fix to the 'size' primary; -size <nc didn't work.  from
 		Thomas Eberhardt <[email-masked] (cgd)
 	fix for "touch -t CCYYMMDDhhmm[.SS]".  the CC part didn't work.  from
 		Thomas Eberhardt <[email-masked] (cgd)
 	upgraded db library routines to version 1.71,
 		from ftp.cs.berkeley.edu (cgd)
 	upgraded diff, diff3, and sdiff to version 2.4. (jtc)
 	imported the src/lib/csu/pc532 and src/lib/libc/pc532 trees. (phil)
 	added timezone rules for Moscow, Russia, as provided by
 		Andrew A. Chernov <[email-masked] (cgd)
 	added fix from Theo for ypset. This should fix ypset through
 		GW's.  (brezak)
 	changes to support running of Windows executable via Wine. Changes
 		to the kernel activated with "USER_LDT" option. New syscalls
 		are in new architecure specific library - libarch/libi386.
 		(brezak)
 	add clearing of direction flag back to i386 bcopy and memmove. This
 		previous change to remove it was too aggresive and broke things
 		like the Xserver. (brezak)
 	fixed isascii(3) man page (cgd)
 	made biodone() work properly, from spec in daemon book and
 		from what the various other parts of the system expect (cgd)
 	fix resettodr() to be able to reset rtc even if it's time is
 		invalid. (brezak)
 	fix crond so that it only stat()s the first 'word' of the command
 		for root's crontab (cgd)
 	incorporate GNU malloc into the src/gnu source tree (cgd)
 	convert gcc and most other GNU utilities to use GNU malloc (cgd)
 	added keyboard typematic rate support to pccons and split off ioctl
 		definitions to <sys/machine/pccons.h (andrew)
 	macros added to support PIC code generation lib/libc/i386/SYS.h in
 		library assembler stubs. Changed a number of these stubs in
 		files in lib/libc/i386/{sys,gen} that touch global data. (pk)
 	buffer allocation is now static at startup, rather than allocated
 		(via various means) by vfs_bio.  (cgd)
 	upgraded diff, diff3, and sdiff to version 2.5. (jtc)
 	patch from Christoph Badura <[email-masked] to fix
 		credential use by read-ahead blocks. (cgd)
 	put gamma.c into libm, at the prompting of
 		Eliot Dresselhaus <[email-masked] (cgd)
 	update of gas to version 1.92.3 to support PIC code (i386 and
 		sparc ports only, as of this moment) (pk)
 	support for PIC relocation records in <a.out.h (pk)
 	defined EX_DYNAMIC flag in <sys/exec.h (pk)
 	configured gcc to generate mode complete link commands, output
 		.size directives and generate a libgcc_pic.a archive (pk)
 	update Australia's zoneinfo file with new data
 		from Mark Davies <[email-masked] (cgd)
 	nfsd now reports fatal errors with syslog(), rather than err()
 		per Vernon Schryver <[email-masked] (cgd)
 	added a cyclades cyclom-8y (and 4/16y) multiport async serial
 		driver. (andrew)
 	fixed vfs_bio so that it dynamically moves pages between buffers (cgd)
 	don't try to display the resident text size with "ps -v".  Fix
 		from Thomas Eberhardt <[email-masked] (cgd)
 	move architecture-specific directories in libc into an 'arch' subdir,
 		in the same way that they're under 'arch' in the kernel (cgd)
 	move rpc library code into libc; it was being included in libc
 		via makefile trickery, and there was no good reason to keep
 		it out of the libc source tree proper (cgd)
 	add socks to /etc/services. (brezak)
 	Rand48 routines from Martin Birgmeier <[email-masked].
 		Sorry no man pages for this from the author. (brezak)
 	finger fixes and enhancements from Luke Mewburn
 		<[email-masked]. (brezak)

 Wow..you got all the way down here.  If you have any comments, mail
 them to [email-masked]

 later,
 Adam Glass
 --
 Adam Glass                        |E-mail home: [email-masked]
 				  |Physical   : Seattle
 		     "reality is for dead birds"

--
      William J. Coldwell - Amiga Attitude Adjuster - Cryogenic Software
         [email-masked] (play)    cryo.rain.com (BBX: port 42)
        [email-masked] (home)    [email-masked] (work)
   If you wouldn't ask dumbass questions, I wouldn't give smartass answers.