PCI driver support for rump kernels on Xen

September 18, 2013 posted by Antti Kantee

Yesterday I wrote a serious, user-oriented post about running applications directly on the Xen hypervisor. Today I compensate for the seriousness by writing a why-so-serious, happy-buddha type kernel hacker post. This post is about using NetBSD kernel PCI drivers in rump kernels on Xen, with device access courtesy of Xen PCI passthrough.

[Read More] [2 comments]


Running applications on the Xen Hypervisor

September 17, 2013 posted by Antti Kantee

There are a number of motivations for running applications directly on top of the Xen hypervisor without resorting to a full general-purpose OS. For example, one might want to maximally isolate applications with minimal overhead. Leaving the OS out of the picture decreases overhead, since for example the inter-application protection offered normally by virtual memory is already handled once by the Xen hypervisor. However, at the same time problems arise: applications expect and use many services normally provided by the OS, for example files, sockets, event notification and so forth. We were able to set up a production quality environment for running applications as Xen DomU's in a few weeks by reusing hundreds of thousands of lines of unmodified driver and infrastructure code from NetBSD. While the amount of driver code may sound like a lot for running single applications, keep in mind that it involves for example file systems, the TCP/IP stack, stdio, system calls and so forth -- the innocent-looking open() alone accepts over 20 flags which must be properly handled. The remainder of this post looks at the effort in more detail.

[Read More] [5 comments]


NetBSD 6.1.1 released

August 22, 2013 posted by Soren Jacobsen

The NetBSD Project is pleased to announce NetBSD 6.1.1, the first security/bugfix update of the NetBSD 6.1 release branch. It represents a selected subset of fixes deemed important for security or stability reasons.

For more details, please see the 6.1.1 release notes.

Complete source and binaries for NetBSD 6.1.1 are available for download at many sites around the world. A list of download sites providing FTP, AnonCVS, SUP, and other services may be found at http://www.NetBSD.org/mirrors/.



SX support added

July 03, 2013 posted by Michael Lorenz

Support for Sun's SX rendering engine ( found in the SparcStation 20 and 10SX's memory controllers ) has been added, both for the console and X. Both drivers support basic acceleration ( block copy, rectangle fill, character drawing in the kernel ), the Xorg driver also supports Xrender acceleration. This probably makes SX the oldest supported hardware which can do that.

[Read More] [0 comments]


Google Code-In 2012/2013 (from jdf)

July 02, 2013 posted by Matthew Sporleder

Google Code-In (GCi) is a project like Google Summer Of Code (GSoC), but for younger students. While GSoC is aimed at university students, i.e. for people usually of age 19 or older, GCi wants to recruit pupils for Open Source projects.

When applying for participation, every project had to create a large number of potentially small tasks for students. A task was meant to be two hours of work of an experienced developer, and feasible to be done by a person 13 to 18 years old. Google selected ten participating organisations (this time, NetBSD was the only BSD participating) to insert their tasks into Google Melange (the platform which is used for managing GCi and GSoC).

Then, the students registered at Google Melange, chose a project they wanted to work on, and claimed tasks to do. There were many chats in the NetBSD code channel for students coming in and asking questions about their tasks.

After GCi was over, every organisation had to choose their two favourite students who did the best work. For NetBSD, the choice was difficult, as there were more than two students doing great work, but in the end we chose Mingzhe Wang and Matthew Bauer. These two "grand price winners" were given a trip to Mountain View to visit the Google headquarters and meet with other GCi price winners.

You can see the results on the corresponding wiki page

There were 89 finished tasks, ranging from research tasks (document how other projects manage their documentation), creating howtos, trying out software on NetBSD, writing code (ATF tests and Markdown converters and more), writing manpages and documentation, fixing bugs and converting documentation from the website to the wiki.

Overall, it was a nice experience for NetBSD. On the one hand, some real work was done (for many of them, integration is still pending). On the other hand, it was a stressful time for the NetBSD mentors supervising the students and helping them on their tasks. Especially, we had to learn many lessons (you will find them on the wiki page for GCi 2012), but next time, we will do much better. We will try to apply again next year, but we will need a large bunch of new possible tasks to be chosen again.

So if you think you have a task which doesn't require great prior knowledge, and is solvable within two hours by an experienced developer, but also by a 13-18 year old within finite time, feel free to contact us with an outline, or write it directly to the wiki page for Code-In in the NetBSD wiki.

[1 comment]


jdf's Summer of Code project

June 27, 2013 posted by Matthew Sporleder

Julian Djamil Fagir wrote a blog post about his GSoC project

As one of five, I've been chosen for participating in Google Summer Of Code (GSoC) this year for NetBSD. My project is to write a binary upgrade tool for NetBSD, optionally with a “live update” functionality.

Why an upgrade tool? – Yes, updating currently is easy. You download the set tarballs from a mirror, unpack the kernel, reboot, unpack the rest, reboot, and done. But this is an exhausting procedure, and you have to know that there are actually updates, and what they affect.

read more


Support for Marvell Armada XP

May 30, 2013 posted by Radoslaw Kujawa

NetBSD now includes support for Marvell Armada XP SoCs. The port was done by Semihalf and sponsored by Marvell, who have generously agreed to release the source code.

This work was integrated into the NetBSD/evbarm port. The kernel for Armada XP is built from the "ARMADAXP" configuration.

Currently supported hardware include Marvell DB-MV784MP-GP development boards. Adding support for more Armada XP-based boards should be relatively easy.

The port includes support for the PJ4B CPU core and most of the SoC's peripherals:

  • UART
  • SATA
  • PCI Express
  • I2C
  • SPI
  • USB

SMP and on-chip Ethernet are not supported yet (however it is possible to use a PCI Express based Ethernet card). [1 comment]


NetBSD's Google Summer of Code™ Projects 2013

May 28, 2013 posted by S.P.Zeidler

The following projects have been chosen for Google Summer of Code™ this year (sorted by student's last name):
  • Port Linux's drm/kms/gem/i915
  • Student: Myron Aub
  • System upgrade
  • Student: gnrp
  • Implement file system flags to scrub data blocks before deletion
  • Student: Przemyslaw Sierocinski
  • Make NetBSD a supported guest OS under VirtualBox
  • Student: Haomai Wang
  • Defragmentation for FFS in NetBSD
  • Student: Manuel Wiesinger

We hope these students will have an interesting, successful, and also fun summer working with us, heap glory upon their names and do their mentors proud. :)

We thank all students who discussed and submitted proposals; as in every year, slots are limited and we have to let go worthy proposals. [2 comments]


Firefox on sparc64

May 26, 2013 posted by Martin Husemann

New firefox will be available for NetBSD/sparc64 again starting with the import of the official version 22 release into pkgsrc.[Read More] [4 comments]


beaglebone docs pointer -- needs improvement

May 25, 2013 posted by Matthew Sporleder

NetBSD works on the BeagleBone and improvements continue to happen, but we could use some help updating the docs.

If you are using the port (or want to) make sure you email www with some improvements to the BeagleBone wiki page. [0 comments]


NetBSD 6.1 (and 6.0.2!) Released

May 18, 2013 posted by Jeff Rizzo

The NetBSD Project is pleased to announce NetBSD 6.1, the first feature update of the NetBSD 6 release branch. It represents a selected subset of fixes deemed important for security or stability reasons, as well as new features and enhancements.

Simultaneously, the NetBSD Project is pleased to announce NetBSD 6.0.2, the second security/bugfix update of the NetBSD 6.0 release branch. It represents a selected subset of fixes deemed important for security or stability reasons, without new features.

For more details, please see the 6.1 release notes and the 6.0.2 release notes

Complete source and binaries for NetBSD 6.1 and 6.0.2 are available for download at many sites around the world. A list of download sites providing FTP, AnonCVS, SUP, and other services may be found at http://www.NetBSD.org/mirrors/. [3 comments]


NetBSD 6.1 Release Candidate 4

May 02, 2013 posted by Jeff Rizzo

The fourth release candidate of NetBSD 6.1 is now available for download at: http://ftp.NetBSD.org/pub/NetBSD/NetBSD-6.1_RC4/. It is expected that this will be the final release candidate, with the official release following very soon.

(Please note that while the third release candidate (RC3) was tagged and built, it was never officially released)

NetBSD 6.1 will be the first feature update for the NetBSD 6 branch. There are many new drivers, some new features, and many bug fixes! Fixes since RC2 include:

  • Updated the fix for SA-2013-003 (RNG bug may result in weak cryptographic keys)
  • Fixes to npfctl(8) parsing and error handling
  • Fix sendto(2) issue with IPv6 UDP datagrams. PR#47408.
  • Raspberry Pi: fix handling of large packets in USB host controller
  • Fixed an RPC memory corruption issue. PR#13082
  • Fixed ACPI issues affecting some AMD systems. PR#47016, PR#47648.
  • Change vax MAXPARTITION from 16 to 12, addressing boot issues on some systems
  • Bump libpthread minor version to libpthread.so.1.1 for the addition of pthread_cond_setclock() earlier in the 6.1 release cycle; note that this is *NOT* the same as libpthread.so.1.1 in NetBSD-current. (libpthread.so in NetBSD-current is already at version 1.2)
  • Provide libc stubs to libpthread, allowing libpthread to be dlopen()ed.
  • Fix a userland-triggered panic on x68k systems.

A complete list of changes can be found at:

Please help us test this and any upcoming release candidates as much as possible. Remember, any feedback is good feedback. We'd love to hear from you, whether you've got a complaint or a compliment.

[1 comment]