2012-01-27

Watching conference proceedings and publications like magazines, I feel a certain lack of NetBSD presence. Even in events that are BSD-friendly (EuroBSDcon, BSD Magazine come to mind). So here's a friendly reminder to go out on the street and preach the truth, as posted by Dan Langille on netbsd-advocacy@: You have two days left before the deadline!

Dan continues: ``BSDCan 2012 will be held 11-12 May, 2012 in Ottawa at the University of Ottawa. It will be preceded by two days of tutorials on 9-10 May.

NOTE: This will be Fri/Sat with tutorials on Wed/Thu.

We are now accepting proposals for talks.

The talks should be designed with a very strong technical content bias. Proposals of a business development or marketing nature are not appropriate for this venue.

If you are doing something interesting with a BSD operating system, please submit a proposal. Whether you are developing a very complex system using BSD as the foundation, or helping others and have a story to tell about how BSD played a role, we want to hear about your experience. People using BSD as a platform for research are also encouraged to submit a proposal. Possible topics include:

  • How we manage a giant installation with respect to handling spam.
  • and/or sysadmin.
  • and/or networking.
From the BSDCan website, the Archives section will allow you to review the wide variety of past BSDCan presentations as further examples.

Both users and developers are encouraged to share their experiences.

The schedule is:

8 Jan 2012 Proposal acceptance begins
29 Jan 2012 Proposal acceptance ends
19 Feb 2012 Confirmation of accepted proposals

See also http://www.bsdcan.org/2012/papers.php

Instructions for submitting a proposal to BSDCan 2012 are available from: http://www.bsdcan.org/2012/submissions.php

2012-01-25

Izumi Tsutsui writes on port-cobalt: ``It seems NetBSD 5.1.1 release is pending, but binaries are there and it also contains telnetd vulnerability fix (which is rather important for restorecd), so I'd announce 5.1.1 based NetBSD/cobalt RestoreCD and brandnew RestoreUSB as Beta test for future 5.1.x release:

http://ftp.NetBSD.org/pub/NetBSD/arch/cobalt/restore-cd/5.1.1/

restorecd-5.1.1-20120112.iso.gz is a gzipped RestoreCD ISO9660 image as prior releases.

restoreusb-5.1.1-20120112.img.gz is a new "RestoreUSB" image which has almost identical functions with RestoreCD but is intended to be burned into USB memory sticks for USB bootable PCs.

You can write the image using gzip(1) + dd(1) on Unix like OSes, or you can also use "Rawrite32" utility on MS Windows: http://www.NetBSD.org/~martin/rawrite32/index.html

To use the RestoreUSB for cobalt installation, write the image into >=512MB USB memory stick (or USB HDD etc.) and boot your PC from it, then all other procedures are same as RestoreCD. You no longer have to burn a coaster for every installation ;-)

See also "Restore CD Howto" for actual installation procedures: http://www.NetBSD.org/ports/cobalt/restorecd-howto.html: (though RestoreUSB is not mentioned yet) and see files in .tar.gz archive for more details. ''

Time to get out the good old Cobalt cube :)

2012-01-19

NetBSD/AMD64 has been supported by LLVM and Clang for quite some time now. There are a few regressions in the ATF tests compared to GCC, but they don't look serious.
Recent work for NetBSD/i386 involved fixing a number of nasty little ABI bugs, where NetBSD and other ELF systems differ in the details. It is now comparable to the status of AMD64.

I've started on getting support for LLVM and Clang as system compiler in NetBSD in 2010. The reach-over frame work was committed last February. Unlike GCC and PCC, I haven't imported the source code yet. It would add a lot of space in the repository and working copies as well as increase the overhead of keeping the copy in NetBSD synchronized with upstream trunk. As such interested parties have to run the "checkout" target in src/external/bsd/llvm to get a fresh copy from svn as well as re-run the target whenever the in-tree version changes. After that, all that is needed is setting MKLLVM=yes and HAVE_CLANG=yes to build the system with Clang.

In my own ATF runs I currently have 8 failures for the Clang world. 5 of the 8 failures are also seen in the ATF runs of the GCC world in the same Virtualbox environment. The remaining cases are as follows:

  • lib/libc/ssp/t_ssp's raw test: difference in the stack-protector handling of GCC and Clang. Details in the LLVM bug.
  • lib/libpthread/t_cond's cond_timedwait_race test doesn't trigger with Clang. Not analyzed in detail yet.
  • lib/semaphore/pthread/t_sem_pth's destroy test fails differently. Not analyzed in detail yet.

For i386, there is one problem in libm, where expf(3) seems to give wrong results, at least that is the reason why the sinhf regression test fails. I haven't looked at this further.

I haven't run any benchmarks yet, so no numbers on code size, execution speed or even build time. The LLVM build is a debug build, so it is slower than necessary.

I'm also running irregular pkgsrc builds with Clang. There are a number of common issues:

  • Clang defaults to C99 and is more picky due to that. It implements the C99 inline semantics, which differ from the traditional GCC behavior.
  • Clang is a lot stricter as C++ compiler, so a bunch of broken things won't pass, which work silently by GCC due to pruning of dead code.
  • CMSG_SPACE and friends are sometimes used as part of a union. NetBSD uses a tricky function internally, so this is not an Integer Constant Expression. Clang rejects using a Variable Length Array as part of a union, while GCC happily accepts that. This is about to be fixed for NetBSD/current.
  • Clang doesn't support nested functions. They should be avoided in general, since they require an executable stack. GCC by default doesn't even warn about them.

Help in cutting down the number of trivial build failures would definitely be appreciated. At the moment, almost 1000 packages fail for various reasons, many of them can be fixed in a bunch of minutes.

2012-01-14

After some absence (job-related) and technical problems (building of NetBSD failing for me from Mac OS X), I'm very happy to release a beta version of g4u with some long-overdue changes. Those include being able to backup/restore the MBR, which includes the partition table - needed when recovering single partitions to a new disk. Also, the various commands reading disks are now adjusted to not abort when a disk sector cannot be used. Instead, the bad bytes are skipped and the rest of the disk is recovered. Please give me feedback on this feature as I didn't have a bad disk to test this! Other news include a command to wipe a disk by completely overwriting it with 0-bytes (once). Last, command line editing was enabled - finally!

Remember that this is a test release, so your feedback is wanted - either to me in person, or to the g4u-help mailing list. Thanks!

Here's a full list of changes:

  • New commands "uploadmbr" and "slurpmbr" to backup and restore the master boot record, which includes the partition table. Required to restore a partition to an empty disk.
  • New command "copymbr" to copy the MBR from one disk to another, similar to "copydisk"
  • New command "wipedisk" to write the disk full with 0-bytes once from start (sector 0) to end (last sector)
  • Enable command line history/editing by forcing /bin/sh to be built without -DSMALL (ugly hack... there be lots of dragons!)
  • When setting up a fresh compile tree, g4u patches are now applied automagically without aborting the build
  • Error detection was now enabled in the dd(1) command, which is the core of g4u (surprise!). With that, disks with broken/unreadable sectors should now be copied, skipping the unreadable sectors and copying the rest. This affects a number of programs: copydisk, copypart, uploaddisk, uploadpart. BEWARE: I wasn't able to actually test this as I do not have a disk with bad sectors here. Please report back your experiences!!!
  • Make this build with NetBSD-current sources as of 2012-01-12
  • New drivers added to the kernel:
    • RDC PMX-1000 IDE controllers
    • Intel SCH IDE controllers
    • TOSHIBA PICCOLO controllers
    • Attansic/Atheros L1C/L2C Ethernet
    • Broadcom BCM43xx wireless
    • Agere/LSI ET1310/ET1301 Gigabit Ethernet
    • RDC R6040 10/100 Ethernet
    • USB LCDs and USB-VGA adaptors, e.g.:
    • DisplayLink DL-1x0/1x5
    • Option N.V. Wireless USB WAN modems
    • Microsoft RNDIS specifications USB ethernet
    • Atheros AR9001U USB Wifi
    • Intersil PrismGT USB Wifi
    • Virtio PCI, memory balloon, disk & network devices
    • ... and many more that slipped past QA
  • ... and any driver updates, optimizations and bug fixes and other enhancements from NetBSD-current
Get g4u 2.5beta1:

Feeds

Feed RSS Last fetched Next fetched after
0 (absolutely) XML 2012-01-27 17:50 2012-01-27 19:50
bsdtalk XML 2012-01-27 17:50 2012-01-27 19:50
freshmeat.net Releases XML 2012-01-27 17:50 2012-01-27 19:50
hubertf's NetBSD blog XML 2012-01-27 17:50 2012-01-27 19:50
i summon one kim XML 2012-01-27 17:50 2012-01-27 19:50
Implementality XML 2012-01-27 17:50 2012-01-27 19:50
Jeremy C. Reed's blog XML 2012-01-27 17:50 2012-01-27 19:50
jokewolf XML 2012-01-27 17:50 2012-01-27 19:50
NetBSD Blog XML 2012-01-27 17:50 2012-01-27 19:50
NetBSD PXE Bulk Install Project XML 2012-01-27 17:50 2012-01-27 19:50
NetBSD.org News XML 2012-01-27 17:50 2012-01-27 19:50
OSNews XML 2012-01-27 17:50 2012-01-27 19:50
Ours & Hippy — le blog XML 2012-01-27 17:50 2012-01-27 19:50
Seebach Exhibit 7 XML 2012-01-27 17:50 2012-01-27 19:50
The Julipedia: Blog XML 2012-01-27 17:50 2012-01-27 19:50
unsigned long geek = random(); XML 2012-01-27 17:50 2012-01-27 19:50
What Do You Want? XML 2012-01-27 17:50 2012-01-27 19:50
www.sonnenberger.org Blog: All XML 2012-01-27 17:50 2012-01-27 19:50