2012-01-29

A few days ago, Brian Hoard made an interesting finding about performance of g4u, a NetBSD/i386-based disk cloning system. Citing from Brians mail:

``First, my problem was I had just replaced my motherboard on my custom build PC. Once I got Windows 7 64-bit loaded and everything working, I sat up to clone my system drive. The drive is a 500GB Seagate Barracude, SATA 2 drive. Cloning locally to an identical drive.

When booting into g4u, my transfer speeds were extremely slow. Normally, my 500 Gb clones take only about 90 minutes. But this was still working after over 6 hours. The g4u transfer speed was reporting only 1.5 Mb/sec.

I shut things down, and went into my system BIOS. I noticed that the SATA mode was set to "IDE Mode" for my drives. I changed this to "AHCI Mode" and continued to boot into g4u. This worked to fix the transfer speeds, and my clone finished normally. Getting 83 Mb/sec.

Once the drive was finished, I attempted to boot into Windows, but it would not boot. I had to change my BIOS back to "IDE Mode", then Windows behaved normally.

Upon researching this, I am now learning that you should enable AHCI Mode BEFORE installing Windows for it to work. Apparently, if Windows is not installed while using AHCI Mode, it disables the drivers for AHCI on the system drive. So if you later enable AHCI in your BIOS as I did, Windows will not have the driver loaded. I saw there is a fix on the Microsoft web site, but I haven't attempted to try it yet.

If someone else runs into a similar problem, hopefully this will help you.''

FWIW, g4u-2.5beta1 is based on NetBSD-current from January 2012, so checking your BIOS may help anyone seeing bad disk performance out there.
(Emphasizes in the text added by me)

2012-01-28

As you are aware, there's a BSD Associate Certification available from the BSD Certification group (that I'm a member of, working as subject matter expert for NetBSD). That's good!

There's also is a PDF which lists the BSD Associate (BSDA) examn objectives on 57 pages. That's neccessary!

There is currently no training material available that covers all the examn objectives, and that allows people interested in the certification to start learning. That sucks!

Now that's where I'd like to ask the NetBSD (and actually the whole BSD community) for support: This is not a small task, but I think it would be worthwhile for the whole community to have that available, either in closed (paper/book) or in public (electronic) form.

Any takers?

Update: Jeremy Reed reminds me that he has startet a Wiki-based approach to cover all topics of the BSDA, with the eventual goal to publish the result in book form. There is a Wiki-to-PDF transformation engine already in place, and the primary focus can be put on the contents at this point. So, this is the point where YOU come in. Have a look, get involved, participate in a novel project!

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.

Feeds

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