hubertf's NetBSD Blog
Send interesting links to hubert at feyrer dot de!
 
[20090116] Catching up on NetBSD source changes - Sep'08 to early Jan'09
OK, I'll try to catch up source-changes a bit more frequently in the future (new years resolutions... don't we all have some?), but here's what I've missed by now, from between September 2008 until now (early January 2009):
  • In preparation of the NetBSD 5.0 release, a lot of documentation updates were made, esp. in the release notes. Also, many manual pages were added to the system, documenting existing userland tools, library, system and internal interfaces.

  • Following some re-organization of binary packages on ftp.NetBSD.org some time ago, the official URLs are now:
    • ftp://ftp.NetBSD.org/pub/pkgsrc/packages/NetBSD/{MACHINE}/{VERSION}/All
    • ftp://ftp.NetBSD.org/pub/NetBSD/packages/current-packages/NetBSD/{MACHINE}/{VERSION}/All
    Both should have the same results, the latter is more safe on mirrors that don't carry /pub/pkgsrc. Adjust your PKG_PATHs!

  • Syntax for /etc/rc.conf's ifconfig_xxN variables and /etc/ifconfig.xxN was changed to also allow line breaks via ';'s. This allows something like ifconfig_wi0="ssid 'my network'; dhcp"

  • Martin Schuette's work on syslogNG from Google Summer of Code 2008 is now available in NetBSD's syslog

  • X.org integration is advancing in big steps. It's on by default on a number of platforms (including alpha, i386, macppc, shark, sparc and sparc64), and instead of using the (now obsolete) MKXORG build variable it can be build with "build.sh -x".

  • Old-style LKMs are dead, welcome to the new module framework! (XXX Documentation???) In the process, more and more kernel subsystems are being changed to be loadable as a module, e.g. POSIX AIO and semaphores, File System Snapshots, emulations, exec formats, coredump, NFS client and server, http and data accept filters, ppp compressors, and others.

    Hooks into UVM have been added to unload unused kernel modules if memory is scarce.

  • MAKEVERBOSE now has two new levels, 3 and 4. The complete list is now:
    • 0 Minimal output ("quiet")
    • 1 Describe what is occurring
    • 2 Describe what is occurring and echo the actual command
    • 3 Ignore the effect of the "@" prefix in make commands
    • 4 Trace shell commands using the shell's -x flag
    The default remains MAKEVERBOSE=2, you can also set this via build.sh's -N switch.

  • A POSIX conformant tabs(1) utility was added

  • The haad-dm branch was merged to NetBSD-current. This adds Logical Volumen Management (LVM) functionality to the base NetBSD system. It uses Linux LVM2 tools and our BSD licensed device-mapper driver.

  • The wrstuden-revivesa branch was merged into NetBSD-current, bringing Scheduler Activation based threading back to NetBSD, and giving NetBSD 5.0 and up both SA and 1:1 threads.

  • Support for the ARM-based Cortina Systems SL3516 eval board was added to NetBSD/evbarm

  • patch(1) got a major overhaul, based on DragonflyBSD and OpenBSD. There's better detection of double applied patches, rejected diffs remain in unified diff format, and and less limitation e.g. on line length.

  • pxeboot now understands boot.cfg

  • Boot CD ISO creation has been greatly overhauled, accomodating changes in boot.cfg, and moving away from a ramdisk-based system to using a file system on the cd-rom, which helps reduce RAM usage. Also, the GENERIC kernel can be used there.

  • makefs(8)'s ISO-9660 (cdrom) support was enhanced to write RISC OS data. This allows to make bootable CDs for acorn{26,32} directly, without copying the bootloader to a native file system.

  • The christos-time_t branch has been merged into NetBSD-current. This gives 64bit time_t and dev_t types (no more year 2038-problem!!!).

    Many related places like timeval and timespec were adjusted, kernel and userland APIs were touched, and shared library major versions (including libc) were bumped for this fairly exhaustive change.

    See src/UPDATING's entry on 20090110 for the full update path!

  • New/updated drivers:
    • jme(4) for JMicron Technologies JME250 Gigabit Ethernet and JME260 Fast Ethernet PCI Express controllers
    • u3g(4) provides better support for 3G datacards than ugensa
    • dbcool(4) for dbCool(tm) family of Thermal Monitor and Fan Controller
    • ataraid(4) now supports Intel MatrixRAID and JMicron RAID
    • bwi(4) for Broadcom BCM4302 wlan controllers, otherwise known as Airport Extreme
    • alipm(4) for the Acer Labs M7101 Power Manage- ment controller
    • admtemp(4) for the Analog Devices ADM1021, Analog Devices ADM1023, Analog Devices ADM1032, Genesys Logic GL523SM, Global Mixed-mode Technology G781, Maxim 1617, and Xeon embedded temperature sensors
    • ipw(4),iwi(4),wpi(4),iwn(4): We ship the firmware now, but users have to accept the Intel license manually by setting sysctls like hw.ipw.accept_eula=1. The latter is also offered by sysinst.
    • nsp(4) adds support for the NSP2000 cryptographic processor which does crypto, hashing and arbitrary precision arithmetics in hardware, and which hooks into the opencrypto(9) interface.
    • pseye(4) makes the Sony Playstation Eye USB webcam usable with the new video(4) framework
    • ath(4) now uses the recently-released source-based version of the Atheros HAL, no more binary blob!
Whee... I should really do this more often to cut things down.

[Tags: , , , , , , , , , , , , , , , , , , ]


[20081022] EuroBSDCon 2008 NetBSD Presentation
EuroBSDCon 2008 in Strasbourg came and went last weekend. For those of us who remained home, there are still pictures and audio streams (select Formation: eurobsdcon) of the lectures to listen to, picked up via the DragonFlyBSD blog.

Here are the talks on NetBSD and/or from NetBSD developers:

  • Yvan Vanhullebus: IPSec tools: past, present and future (PDF, mp3)
  • Martin Schuette: Improved NetBSD Syslogd (PDF, mp3)
  • Michael Dexter: Zen and the Art of Multiplicity Maintenance: An applied survey of BSD-licensed multiplicity strategies from chroot to mult (PDF, mp3)
  • Hauke Fath: Managing BSD desktop clients - Fencing in the herd (PDF, mp3)
  • Joerg Sonnenberger: Sleeping beauty - NetBSD on Modern Laptops (PDF, mp3)
  • Antti Kantee: Converting kernel file systems to services (PDF, mp3)
Enjoy!

[Tags: , , , , ]


[20080721] Google and NetBSD Summer of Code Projects in 2008 - Midterm status reports (Updated)
Google's Summer of Code has passed the midterm date. With it, students and their mentors were asked to give internal status reports of thei works. While the internal reports themselves are not public, many of our students have sent mail to NetBSD's public lists, giving details on their status. Let's give a summary of the state of affairs. Projects were students have posted reports come first:
  • wscons: Expansion for wstablet in NetBSD
    Student: Jason W. Beaudoin

    To support tables for the wscons console driver, a number of changes to the wscons API have been proposed in the student's status report. While there are a number of similarities with the wsmouse interface, there are also a number of differences that need to be worked around, e.g. absolute vs. relative coordinates. Many of the proposed changes are implemented, and we're looking forward to complete this project successfully within time.

    Status report, project page, project proposal

  • subfiles: Subfile Support for NetBSD
    Student: Adam Burkepile

    Subfile allow to associate data with a regular file, just like regular allow to associate data with a directory. New internal data structures were defined to identify subfiles within the file system, and tools like newfs and dumpfs were adjusted. An API is being designed to access subfiles, and work to realize the assorted functions is being approached.

    Status report part 1 / 2, project page, project proposal

  • hurdt: Hurd translators
    Student: Marek Dopiera

    Translators are programs which provide filesystems in user space functionality. This is provided via NetBSD's RUMP interface, and additional system calls and file system operations have been defined to activate the server processes when access to such a "translator" is made. Currently, the translators are only implemented in NetBSD's ext2 file system, as this allows testing of interaction with Hurd - Hurd's support for FFS seems non-working, unfortunately. The project's under busy development, and we're looking forward to see the final results.

    Status report, project page, project proposal

  • lvm: Write and improve NetBSD LVM driver
    Student: Adam Hamsik

    This project implements the Linux LVM API (libdevmapper) on NetBSD, to allow using Linux' lvm2tools for logical volume management. The project's making excellent progress, there is an ISO image (see URL in status report) as well as a qemu image available for testing, and latest reports show that linear volumes can be configured and mounted already.

    Status report, project page, project proposal

  • uvc: Add support for UVC devices (USB web-cams)
    Student: Patrick Mahoney

    A kernel driver was developed to read data from webcams using a custom API, work to implement the video2linux API is under way. Current challenges lie in NetBSD's USB stack, which lacks support for isochronous transfers, which is used by many (but not all) webcams. The project has made excellent progress so far, and we're positive that the project will be a success.

    Status report, project page, project proposal

  • dvb: DVB drivers and kernel framework
    Student: Jeremy Morse

    This project implements a driver for Digital Video Broadcasting to supplement bktr(4)'s TV card support. So far, a driver and an API to transport data from the kernel to userland was implemented, matching LinuxTV. The project's making good progress, even due to conflicts with the academic schedule.

    Status report, project page, project proposal

  • install-tool: Customizable install tool for NetBSD
    Student: Zachary Wegner

    NetBSD's current installer, sysinst, is being split into frontend and backend parts, with a configuration file building the interface between the two parts. Untangling the current mix of user interaction and install operation are ongoing, with challenges like request of install media (think floppy #42) and network configuration. Also, a parser for the configuration file was written, and work not started yet is the frontend creating the configuration file for the backend.

    Status report, project page, project proposal

  • fs-utils: File system access utilities
    Student: Ysmal Arnaud

    This project is using NetBSD's RUMP and the ukfs library to access a file system image from userland. So far, makefs(1) can generate a file system image, and it can now be manipulated as well. Both a "file system console" as shell to operate on the image as well as separate tools for single operations have been designed. Many of the "normal" userland tools' functionality like ls(1), cp(1) and rm(1) were implemented. This project has made excellent progress so far, see the status report and project page.

    Status report, project page, project proposal

  • cwrapper: pkgsrc: rewrite wrapper framework in C
    Student: Amitai Schlair

    The student was distracted by travel obligations for some time, but work has started in pkgsrc now. Current work includes a set of ATF tests to cover the usage of the existing pkgsrc wrapper framework and a design plan for the new wrapper implementation. The actual wrapper implementation remains to be written, and we're looking forward to see the it happen, including integration into pkgsrc plus benchmarks on the increase in speed.

    Status report, project page, project proposal

  • atfify: Converting remaining regression tests to the Automatic Testing Framework
    Student: Lukasz Strzygowski

    The Automated Testing Framework was added to NetBSD as a result of last year's Summer of Code. This year, all the remaining regression tests from src/regress are being converted to ATF. Test suites for tools (awk, grep, make, ...) and libraries (libm, libpthread, ...) were converted so far. Tests for libc are currently being converted, and kernel tests are next. We're looking forward to get all of src/regress changed to ATF!

    Status report, project page, project proposal

No status report was sent by the following students (or at least I haven't seem one). Data given here is from the project pages, mostly:
  • ext3: Implement Ext3 file system support
    Student: Rus-Rebreanu Alin-Florin

    This project intends to implement journaling in the file system by reusing Wasbi's wapbl code. Unfortunately, little has happend to reach this goal (to say the least), and the student got AWOL. Interested parties are welcome to try out ext2fuse (which also does ext3, despite the name) for now.

    Project page, project proposal

  • packet-classes: Create an in-kernel API for "packet classes"
    Student: Anish Babu

    Nothing has happened in this project as well. I hear about communication problems, and it remains to see if things move forward here. :-(

    Project page, project proposal

  • teredo: Implementation of RFC4380 (Teredo) in NetBSD
    Student: Arnaud Lacombe

    The project aims at creating a Teredo client, server and relay via a kernel pseudo device and assorted userland tools. The project is currently still in the analysis and design phase, which will give it little time for completion -- as for other students, this is due to a clash with the academic schedule of the student. We're holding up hopes that the set goals can be met at least partially.

    Project page, project proposal

  • syslogd: Improve syslogd
    Student: Martin Schütte

    The project aims at implementing the upcoming IETF standards for syslog transport over TLS (instead of UDP), a more formal format of the messages themselv for easier automatic parsing, and signing of messages to assert authentication, integrity and correct sequencing of syslog messages. The first part of this is already working, the second part is development. We're looking forward to see this project succeed, as it will be of benefit not only to NetBSD.

    Project page, project proposal

So much for now. We wish all our students good luck in the second part of this year's Google Summer of Code, and are looking forward to see your final results, which are due in 3-4 weeks from now. Keep on hacking!

Update: Fixed a typo (thanks tron!), got an update on the ext3 project, and added a link to the status report of the cwrapper project, which I've missed (sorry!).

[Tags: , , , , , , , , , , , , , , , , ]



Tags: , 2bsd, 3com, 501c3, 64bit, acl, acls, acm, acorn, acpi, acpitz, adobe, Advocacy, advocacy, advogato, aes, afs, aiglx, aio, airport, alereon, alex, alix, alpha, altq, am64t, amazon, amd64, anatomy, ansible, apache, apm, apple, arkeia, arla, arm, art, Article, Articles, ascii, asiabsdcon, aslr, asterisk, asus, atf, ath, atheros, atmel, audio, audiocodes, autoconf, avocent, avr32, aws, axigen, azure, backup, balloon, banners, basename, bash, bc, beaglebone, benchmark, bigip, bind, blackmouse, bldgblog, blog, blogs, blosxom, bluetooth, board, bonjour, books, boot, boot-z, bootprops, bozohttpd, bs2000, bsd, bsdca, bsdcan, bsdcertification, bsdcg, bsdforen, bsdfreak, bsdmac, bsdmagazine, bsdnexus, bsdnow, bsdstats, bsdtalk, bsdtracker, bug, build.sh, busybox, buttons, bzip, c-jump, c99, cafepress, calendar, callweaver, camera, can, candy, capabilities, card, carp, cars, cauldron, ccc, ccd, cd, cddl, cdrom, cdrtools, cebit, centrino, cephes, cert, certification, cfs, cgd, cgf, checkpointing, china, christos, cisco, cloud, clt, cobalt, coccinelle, codian, colossus, common-criteria, community, compat, compiz, compsci, concept04, config, console, contest, copyright, core, cortina, coverity, cpu, cradlepoint, cray, crosscompile, crunchgen, cryptography, csh, cu, cuneiform, curses, curtain, cuwin, cvs, cvs-digest, cvsup, cygwin, daemon, daemonforums, daimer, danger, darwin, data, date, dd, debian, debugging, dell, desktop, devd, devfs, devotionalia, df, dfd_keeper, dhcp, dhcpcd, dhcpd, dhs, diezeit, digest, digests, dilbert, dirhash, disklabel, distcc, dmesg, Docs, Documentation, donations, draco, dracopkg, dragonflybsd, dreamcast, dri, driver, drivers, drm, dsl, dst, dtrace, dvb, ec2, eclipse, eeepc, eeepca, ehci, ehsm, eifel, elf, em64t, Embedded, embedded, emips, emulate, encoding, envsys, eol, espresso, etcupdate, etherip, euca2ools, eucalyptus, eurobsdcon, eurosys, Events, exascale, ext3, f5, facebook, falken, fan, faq, fatbinary, features, fefe, ffs, filesystem, fileysstem, firefox, firewire, fireworks, flag, flash, flashsucks, flickr, flyer, fmslabs, force10, fortunes, fosdem, fpga, freebsd, freedarwin, freescale, freex, freshbsd, friendlyAam, friendlyarm, fritzbox, froscamp, fsck, fss, fstat, ftp, ftpd, fujitsu, fun, fundraising, funds, funny, fuse, fusion, g4u, g5, galaxy, games, gcc, gdb, gentoo, geode, getty, gimstix, git, gnome, google, google-soc, googlecomputeengine, gpio, gpl, gprs, gracetech, gre, groff, groupwise, growfs, grub, gumstix, guug, gzip, hackathon, hackbench, hal, hanoi, happabsd, hardware, Hardware, haze, hdaudio, heat, heimdal, hf6to4, hfblog, hfs, history, hosting, hotplug, hp, hp700, hpcarm, hpcsh, hpux, html, httpd, hubertf, hurd, i18n, i386, i386pkg, ia64, ian, ibm, ids, ieee, ifwatchd, igd, iij, image, images, imx233, imx7, information, init, initrd, install, intel, interix, internet2, interview, interviews, io, ioccc, iostat, ipbt, ipfilter, ipmi, ipplug, ipsec, ipv6, irbsd, irc, irix, iscsi, isdn, iso, isp, itojun, jail, jails, japanese, java, javascript, jetson, jibbed, jihbed, jobs, jokes, journaling, kame, kauth, kde, kerberos, kergis, kernel, keyboardcolemak, kirkwood, kitt, kmod, kolab, kvm, kylin, l10n, landisk, laptop, laptops, law, ld.so, ldap, lehmanns, lenovo, lfs, libc, license, licensing, linkedin, links, linksys, linux, linuxtag, live-cd, lkm, localtime, locate.updatedb, logfile, logging, logo, logos, lom, lte, lvm, m68k, macmini, macppc, macromedia, magicmouse, mahesha, mail, makefs, malo, mame, manpages, marvell, matlab, maus, max3232, mbr95, mbuf, mca, mdns, mediant, mediapack, meetbsd, mercedesbenz, mercurial, mesh, meshcube, mfs, mhonarc, microkernel, microsoft, midi, mini2440, miniroot, minix, mips, mirbsd, missile, mit, mixer, mobile-ip, modula3, modules, money, mouse, mp3, mpls, mprotect, mtftp, mult, multics, multilib, multimedia, music, mysql, named, nas, nasa, nat, ncode, ncq, ndis, nec, nemo, neo1973, netbook, netboot, netbsd, netbsd.se, nethack, nethence, netksb, netstat, netwalker, networking, neutrino, nforce, nfs, nis, npf, npwr, nroff, nslu2, nspluginwrapper, ntfs-3f, ntp, nullfs, numa, nvi, nvidia, nycbsdcon, office, ofppc, ohloh, olimex, olinuxino, olpc, onetbsd, openat, openbgpd, openblocks, openbsd, opencrypto, opendarwin, opengrok, openmoko, openoffice, openpam, openrisk, opensolaris, openssl, or1k, oracle, oreilly, oscon, osf1, osjb, paas, packages, pad, pae, pam, pan, panasonic, parallels, pascal, patch, patents, pax, paypal, pc532, pc98, pcc, pci, pdf, pegasos, penguin, performance, pexpect, pf, pfsync, pgx32, php, pie, pike, pinderkent, pkg_install, pkg_select, pkgin, pkglint, pkgmanager, pkgsrc, pkgsrc.se, pkgsrcCon, pkgsrccon, Platforms, plathome, pleiades, pocketsan, podcast, pofacs, politics, polls, polybsd, portability, posix, postinstall, power3, powernow, powerpc, powerpf, pppoe, precedence, preemption, prep, presentations, prezi, Products, products, proplib, protectdrive, proxy, ps, ps3, psp, psrset, pthread, ptp, ptyfs, Publications, puffs, puredarwin, pxe, qemu, qnx, qos, qt, quality-management, quine, quote, quotes, r-project, ra5370, radio, radiotap, raid, raidframe, rants, raptor, raq, raspberrypi, rc.d, readahead, realtime, record, refuse, reiserfs, Release, Releases, releases, releng, reports, resize, restore, ricoh, rijndael, rip, riscos, rng, roadmap, robopkg, robot, robots, roff, rootserver, rotfl, rox, rs323, rs6k, rss, ruby, rump, rzip, sa, safenet, san, sata, savin, sbsd, scampi, scheduler, scheduling, schmonz, sco, screen, script, sdf, sdtemp, secmodel, Security, security, sed, segvguard, seil, sendmail, serial, serveraptor, sfu, sge, sgi, sgimips, sh, sha2, shark, sharp, shisa, shutdown, sidekick, size, slackware, slashdot, slides, slit, smbus, smp, sockstat, soekris, softdep, softlayer, software, solaris, sony, sound, source, source-changes, spanish, sparc, sparc64, spider, spreadshirt, spz, squid, ssh, sshfs, ssp, statistics, stereostream, stickers, storage, stty, studybsd, subfile, sudbury, sudo, summit, sun, sun2, sun3, sunfire, sunpci, support, sus, suse, sushi, susv3, svn, swcrypto, symlinks, sysbench, sysctl, sysinst, sysjail, syslog, syspkg, systat, systrace, sysupdate, t-shirt, tabs, talks, tanenbaum, tape, tcp, tcp/ip, tcpdrop, tcpmux, tcsh, teamasa, tegra, teredo, termcap, terminfo, testdrive, testing, tetris, tex, TeXlive, thecus, theopengroup, thin-client, thinkgeek, thorpej, threads, time, time_t, timecounters, tip, tk1, tme, tmp, tmpfs, tnf, toaster, todo, toolchain, top, torvalds, toshiba, touchpanel, training, translation, tso, tty, ttyrec, tulip, tun, tuning, uboot, ucom, udf, ufs, ukfs, ums, unetbootin, unicos, unix, updating, upnp, uptime, usb, usenix, useradd, userconf, userfriendly, usermode, usl, utc, utf8, uucp, uvc, uvm, valgrind, vax, vcfe, vcr, veriexec, vesa, video, videos, virtex, virtualization, vm, vmware, vnd, vobb, voip, voltalinux, vpn, vpnc, vulab, w-zero3, wallpaper, wapbl, wargames, wasabi, webcam, webfwlog, wedges, wgt624v3, wiki, willcom, wimax, window, windows, winmodem, wireless, wizd, wlan, wordle, wpa, wscons, wstablet, X, x.org, x11, x2apic, xbox, xcast, xen, Xen, xfree, xfs, xgalaxy, xilinx, xkcd, xlockmore, xmms, xmp, xorg, xscale, youos, youtube, zaurus, zdump, zfs, zlib

'nuff. Grab the RSS-feed, index, or go back to my regular NetBSD page

Disclaimer: All opinion expressed here is purely my own. No responsibility is taken for anything.

Access count: 24531078
Copyright (c) Hubert Feyrer