diff --git a/en/news/status/report-2010-04-2010-06.xml b/en/news/status/report-2010-04-2010-06.xml new file mode 100644 index 0000000000..5360e4a16a --- /dev/null +++ b/en/news/status/report-2010-04-2010-06.xml @@ -0,0 +1,2144 @@ + + + + + + April-June + 2010 + + +
+ Introduction + +

This report covers &os; related projects between April and June + 2010. It is the second of the four reports planned for 2010, + containing 42 entries. The progress of the &os; Project is keeping + up with the latest trends. During this period, a lot of work has + gone into the development of new minor version of &os;, 8.1-RELEASE, + which should be released real soon now.

+ +

Thanks to all the reporters for the excellent work! We hope you + enjoy reading.

+ +

Please note that the deadline for submissions covering the + period between July and September 2010 is October 15th, 2010.

+
+ + + soc + Google Summer of Code + + + + proj + Projects + + + + team + &os; Team Reports + + + + net + Network Infrastructure + + + + kern + Kernel + + + + docs + Documentation + + + + bin + Userland Programs + + + + arch + Architectures + + + + ports + Ports + + + + &os; German Documentation Project + + + + + Johann + Kois + + jkois@FreeBSD.org + + + + + Benedict + Reuschling + + bcr@FreeBSD.org + + + + + Website of the &os; German + Documentation Project + + Mailinglists + for the coordination of our work and the place where you can report + bugs back to us + + + +

A number of updates to the documentation were made since the + last status report. We are especially grateful for the + contributions from external people who sent the translations. People + like Fabian Ruch, who updated the porters-handbook to the latest + version (which had been on his to-do list for quite some time), and + Benjamin Lukas, who did a great job with the from-scratch + translation of the MAC chapter of the German handbook. We thank + them both for their contributions and hope they will continue their + efforts to enhance the German documentation.

+ +

Frank Börner was released from Benedicts mentorship and is + now a full committer to the German Documentation Project. We are + always looking for fresh blood that is willing to be mentored by us + as a first step in becoming committers for the documentation project + themselves.

+ +

Johann is keeping up the German website with the latest version. + But we could use more translators for sections that are not fully + translated yet.

+ + + + Read the translations and report bugs that you have found (even + small ones). + + Translate new parts of the documentation and the + website. + +
+ + + Binary package patch infrastructure — pkg_patch + + + + + Ivan + Voras + + ivoras@FreeBSD.org + + + + + Wiki + page + + + +

The pkg_patch project is about creating a binary package patch + infrastructure which would allow users to patch their live system's + packages in an easy and efficient way. It is a C program written to + interface with libpkg (for things which are common to all pkg + utilities) meant to be included in the base system when it is done. + It comes with built-in mass patch creation and application + commands. It is funded by Google Summer of Code 2010.

+ + + + Finish the project. + + Get some testing for it. + + Convince portmgr it is actually a Good Thing to have even as + an experimental feature. + + Agree upon the policy on which package patches will be + created (i.e. from which point in time to which point in time), + assuming the "stable" package tree idea has still not gotten + traction. + +
+ + + Interrupt Threads + + + + + John + Baldwin + + jhb@FreeBSD.org + + + + +

For a while I have wanted to rework interrupt threads to + address a few issues. The new design uses per-CPU queues of + interrupt handlers. Interrupt threads are allocated by a CPU from + a pool and bound to that CPU while draining that CPU's queue of + handlers. Non-filter handlers can also reschedule themselves at + the back of the current CPU's queue while executing. Filters with + handlers are now always enabled and should provide a full + replacement for the various uses of filters with "fast" + taskqueues. A new class of "manual" handlers are also available + which are not automatically scheduled, but are only explicitly + scheduled from a filter. Thus, a filter can potentially schedule + multiple handlers.

+ +

The code has been tested on amd64, but it needs wider review + and testing. I hope to start soliciting review and feedback soon + with the goal of getting the code into 9.0.

+ +
+ + + BSDL iconv in base system + + + + + Gábor + Kövesdán + + gabor@FreeBSD.org + + + + + The + latest patch for the base system + + + +

The work has been completed and the GNU compatibility levels + seems to be quite high. One exception is the fallback support. It + is difficult to implement that facility in this implementation + because the design is somewhat different. Probably, it will not be + a big problem because that functionality is not even documented in + the GNU version so few applications might use it.

+ + + + Run a portbuild test and solve possible problems that show + up. + +
+ + + BSDL grep in base system + + + + + Gábor + Kövesdán + + gabor@FreeBSD.org + + + + + + Sources in Perforce + + + +

A portbuild test showed that grep is basically ready to enter + -HEAD, but there were a few number of failures that seems to be + related. These have to be investigated and fixed before + committing grep to 9-CURRENT.

+ + + + Investigate and fix some minor issues. + +
+ + + Collective resource limits (aka jobs) + + + + + Gábor + Kövesdán + + gabor@FreeBSD.org + + + + + Project page + on the wiki + + + Sources in Perforce + + + +

The SGI IRIX operating system has a concept, called job, which + is used to group processes together and then apply resource limits + on them. The purpose of this project is to implement this facility + on &os;.

+ +

I spent most of the time getting familiar with studying how + things are done inside the kernel, how syscalls work, etc. So far, + I got the basic understanding I needed and I added the most + important syscalls to group processes together into jobs and + manipulate collective resource limits on them.

+ +

There is a bug, which I am tracking down at the moment, after + this I can start to implement actual resource limit enforcement. + For some of the limit types, it will be relatively easy but some + others will take more effort and studies.

+ + + + Fix the showstopper bug, which prevent me working on actual + limit enforcement. + + Implement limit enforcements for all of the limits supported + by IRIX. + + Add support for userland facilities and make utilities + jobs-aware, like showing jobs in ps(1), etc. + +
+ + + The &os; Spanish Documentation Project + + + + + Gábor + Kövesdán + + gabor@FreeBSD.org + + + + + Vicente + Carrasco Vayá + + carvay@FreeBSD.org + + + + + Primer + for translators + + + +

We need manpower. Existing documentation set has not been + updated for quite some time because of lack of volunteers. Current + members are busy with another projects and real life at the moment + and we have not received anything from outside contributors. It is + a shame because there are lots of users in Spain and Latin-America, + as well. Besides, the world's first Free Software Street has been + recently inaugurated in Spain. This obviously means that there is + interest in free software but unfortunately, this translation + project is not going very well nowadays.

+ + + + Review and update existing translations. + +
+ + + Kernel event timers infrastructure + + + + + Alexander + Motin + + mav@FreeBSD.org + + + + +

Modern x86 systems include four different types of event timers: + i8254, RTC, LAPIC and HPET. First three are already supported by + &os;. Depending on hardware and loader tunables, periodic + interrupts from them are used to trigger all time-based events in + kernel. That code has a long history, that made it tangled and same + time limited and hardcoded.

+ +

New kernel event timers infrastructure was started to allow + different event timer hardware to be operated in uniform way and to + allow more features to be supported. Work consists of three main + parts: writing machine-independent timer driver API and management + code, updating existing drivers and improving HPET driver to + support event timers.

+ +

The new driver API provides unified support for both per-CPU + (independent for every CPU core) and global timers in periodic and + one-shot modes. Management code at this moment uses only periodic + mode, while one-shot mode use planned by later tickless kernel + work.

+ +

Different kinds of timers have different capabilities and could + be present in hardware in different combinations. In every + situation infrastructure automatically chooses two best event + timers to supply system with hardclock(), statclock() and + profclock() events. If some timer is not functioning - it will be + replaced. If there is no second timer - it will be emulated. + Administrator may affect that choice using loader tunables during + boot and sysctls in run-time (kern.eventtimer. ...).

+ +

Most of the code was recently committed to HEAD. Now it is used + by i386 and amd64 architectures.

+ + + + Troubleshoot possible hardware and software issues. + + Port other architectures to the new infrastructure. + + Implement tickless kernel, utilizing new features, such as + per-CPU and one-shot timers. + +
+ + + The &os; Hungarian Documentation Project + + + + + Gábor + Kövesdán + + gabor@FreeBSD.org + + + + + Gábor + áli + + + pgj@FreeBSD.org + + + + + Hungarian &os; web + pages + + Hungarian &os; + documentation + + + The &os; Hungarian Documentation Project's Wiki Page + + + Perforce Deport for the &os; Hungarian Documentation Project + + + +

Thanks to Katalin Konkoly, the first few chapters of the &os; + Handbook translation have been reviewed, therefore many typos, + mistranslations were spotted and fixed. Apart from this, we are + still keeping the existing documentation and web page translations + up to date, currently without plans on further work. If you are + interested in helping us, or you have any comments or requests + regarding the translations, do not hesitate to contact the project + via the email addresses mentioned in the entry.

+ + + + Review translations and send feedback. + + Translate release notes. + + Add more article translations. + +
+ + + &os; Haskell + + + + + Gábor + Páli + + pgj@FreeBSD.org + + + + + Giuseppe + Pilichi + + jacula@FreeBSD.org + + + + + Ashish + Shukla + + ashish@FreeBSD.org + + + + + Wiki Page of the + Project + + &os; Haskell + Ports + + + The freebsd-haskell Mailing List + + + +

Our efforts on porting the generalized, general-purpose purely + functional programming language, Haskell has rallied, since + two new committers, Giuseppe Pilichi and Ashish + Shukla joined recently, forming the &os; Haskell Team. + Over the last months, &os;/i386 and &os;/amd64 have become Tier-1 + platforms, featuring officially supported vanilla binary + distributions for the Glasgow Haskell Compiler + starting from version 6.12.1. We introduced a unified ports + infrastructure for Haskell Cabal ports, which also makes possible + the direct + translation f Cabal package descriptions to &os; ports. + The number of Haskell package ports increases steadily.

+ + + + Improve support for Haskell Cabal packages and their + translation. + + Create a port for Haskell Platform. + + Add more Haskell package ports. + + Test and send feedback. + +
+ + + libnetstat(3) + + + + + Gábor + Páli + + pgj@FreeBSD.org + + + + + Aman + Jassal + + aman@FreeBSD.org + + + + + Wiki Page + + + Patches + + + Perforce Depot (SoC 2009) + + + +

This project is about creating a wrapper library to support + monitoring and management networking with avoiding direct use of + the &os; kvm(3) and sysctl(3) interfaces. This approach would allow + the kernel implementation to change and monitoring applications to + be extended without breaking applications and requiring them to be + recompiled. We decided to merge the sources from the last year's + Summer of Code project back to the &os; src/ repository piece by + piece, and we have defined several phases of integration.

+ + + +

The first phase has been already posted for review. Note that we + are looking for a sponsor with an src commit bit and enough time to + represent the effort towards the Project.

+ + + + Review the sources. + + Pick a task from the list, and send patches. + + Comment the patches, help them to improve. + +
+ + + ZFS + + + + + Pawel Jakub + Dawidek + + pjd@FreeBSD.org + + + + + Martin + Matuska + + mm@FreeBSD.org + + + + + Xin + Li + + delphij@FreeBSD.org + + + + + &os; ZFS Wiki + + + Latest &os; ZFS development tree + + + +

The ZFS file system has been updated to version 15 on -HEAD and + will be MFCed to 8-STABLE around September 13th, 2010. Ongoing work + is undergoing on porting the recent ZFS version 26 with + deduplication functionality.

+ + + + Fix bugs, unresolved issues and #TODO's in perforce. + +
+ + + Flattened Device Tree for embedded &os; + + + + + Rafal + Jaworowski + + raj@semihalf.com + + + + + Project + wiki pages + + + +

The purpose of this project was to provide &os; with support for + the Flattened Device Tree (FDT) technology, a mechanism for + describing computer hardware resources, which cannot be probed or + self enumerated, in a uniform and portable way. The primary + consumer of this technology are embedded &os; platforms (ARM, MIPS, + PowerPC), where a lot of designs are based on similar chips, but + have different assignment of pins, memory layout, addresses ranges, + interrupts routing and other resources.

+ +

Current state highlights:

+ + + +

Work on this project was sponsored by the &os; Foundation.

+ + + + Improve howto and guidelines for new adopters (how to convert + to FDT and so on). + + Migrate more existing embedded &os; platforms (ARM, MIPS) to + FDT approach. + +
+ + + The &os; Japanese Documentation Project + + + + + Hiroki + Sato + + hrs@FreeBSD.org + + + + + Ryusuke + Suzuki + + ryusuke@FreeBSD.org + + + + + Japanese &os; Web + Pages + + The &os; Japanese + Documentation Project's Web Page + + + +

This project focuses on updating the www/ja and doc/ja_JP.eucJP/ + trees. Since last year www/ja tree has been mostly synchronized + with the English counterpart and doc/ja_JP.eucJP has also been + updated steadily. We are now working on &os; Handbook and Porter's + Handbook.

+ + + + More Japanese translation of &os; Handbook and contents of + www.FreeBSD.org. + + Pre-/post-commit review of the translation. + +
+ + + Google Summer of Code 2010 + + + + + Brooks + Davis + + brooks@FreeBSD.org + + + + + Tim + Kientzle + + kientzle@FreeBSD.org + + + + + Robert + Watson + + rwatson@FreeBSD.org + + + + + Summer + of Code 2010 Projects + + + +

We are once again participating in the Google Summer of Code. + This is our 6th year of participation and we hope to once again see + great results from our 18 students. Coding officially began May + 24th and we are in the middle of the mid-term evaluation period. + You can see and comment on weekly status reports on + soc-status@FreeBSD.org or in the wiki.

+ +
+ + + Jail based virtualization + + + + + Bjoern A. + Zeeb + + bz@FreeBSD.org + + + + + + &os; Foundation Announcement + + + Perforce Workspace + + + +

The project started with some cleanup on the network stack after + all the import work and adjustments for virtualization to minimize + changes to earlier branches. These made it into the tree already + and to stable/8 and will be included in the upcoming 8.1 + release.

+ +

A first major task was to generalize the virtualization + framework, so that virtualization of further subsystems would be + easier and could be achieved with lesles duplication.

+ +

In addition some documentation on the virtual network stack + programming was written to help developers virtualizing their code. + The interactive kernel debugger support was improved and libjail + along with jls and netstat can work on core dumps now and query + individual jails and attached virtual network stacks.

+ +

The second major task was network stack teardown, a concept + introduced with the network stack virtualization. The primary goal + was to prototype a shutdown of the (virtual) network stacks from + top to bottom, which means letting interfaces go last rather than + first. Work in this area is still in progress and will have to + continue to allow long term stability and a leak and panic free + shutdown.

+ +

The work on this project had been sponsored by the &os; + Foundation and CK Software GmbH. Special thanks also to John + Baldwin and Philip Paeps for helping with review and + suggestions.

+ + + + Merge stabilised change sets. + + Work further down the network stack freeing all resources for + stable, save teardown. + +
+ + + Ports Collection + + + + + Thomas + Abthorpe + + portmgr-secretary@FreeBSD.org + + + + + Port + Management Team + + portmgr@FreeBSD.org + + + + + + + + + + + + + + + + + + + + + + +

A significant part of quarter two was spent coordinating efforts + for inclusion os Xorg 7.5, KDE4, Gnome2, plus preparation of ports + for the 8.1 release process. Due to the success of enforcing + Feature Safe ports commits during the 7.3-RELEASE, it was continued + for the recent src/ freeze.

+ +

The ports count approaches 22,000 ports. The open PR count + currently floats at about 1200 entries.

+ +

Since the last report, we added four new committers, and had two + old committer rejoin us.

+ +

The Ports Management team is very grateful to the &os; + Foundation for sponsoring two new head nodes for the ports building + cluster, pointyhat. Each of the new head nodes has a larger + capacity, both with regard to performance but also in amount of + space available for the staging areas, allowing for faster, and + thus more, build cycles. Additionally, having two head nodes will + allow us to dedicate one of them for building production-ready + binary packages, adding predicability for our users to when what + types of packages are available for installation, and dedicate the + other for regression testing of large port updates, ports + infrastructure improvements, the cluster scheduling code, and &os; + itself. Over the last few weeks, Mark Linimon has been working hard + to get the first of the two new nodes online and has already + produced its first package. This has involved a substantial rework + of our custom codebase.

+ +

The Ports Management team have been running -exp runs on an + ongoing basis, verifying how src code updates may affect the ports + tree, as well as providing QA runs for major ports updates. Of note + -exp runs were done for; ale's update of math/gmp; delphij's + changes to Mk/bsd.ldap.mk; gahr's inclusion of USE_GL=glew; + pgollucci's changes to Mk/bsd.*apache.mk plus updates to devel/apr + and www/apache*; testing of x11/xorg, x11/gnome, x11/kde4 and + lang/mono; a test run make fetch run; a test run for deve/gettext; + mm's inclusion of USE_XZ; and ale's request to switch default mysql + from 5.0-EOL to 5.1-GA.

+ +

alepulver's SoC Licensing Framework project has made it into the + tree and portmgr is currently assessing the fallout and will come + up with guidelines and documentation in due time.

+ + + + Looking for help fixing ports + broken on CURRENT. + + Looking for help with + Tier-2 architectures. + + Most ports PRs are assigned, we now need to focus on testing, + committing and closing. + +
+ + + &os;/powerpc64 + + + + + Nathan + Whitehorn + + nwhitehorn@FreeBSD.org + + + + + + Install CDs for powerpc64 + + + +

On July 13, &os;/powerpc64 was integrated into -CURRENT. This + provides support for fully 64-bit operation on 64-bit PowerPC + machines conforming to the Book-S specification, including the + PowerPC 970, Cell, and POWER4-7. Hardware support is currently + limited to Apple machines, although this should expand in the near + future.

+ +

Currently supported hardware:

+ + + +
+ + + &os; on the Sony Playstation 3 + + + + + Nathan + Whitehorn + + nwhitehorn@FreeBSD.org + + + + + + Playstation 3 SVN repository + + + +

Work has begun to port &os;/powerpc64 to the IBM Cell-based Sony + Playstation 3, using the OtherOS feature present on some models of + the console. As of July 14, the &os; boot loader is ported, and it + is possible to netboot a kernel, which has support for the + framebuffer, MMU, and device discovery. Once work on drivers for + the network interface and interrupt controller is complete, it will + be possible to boot the console multiuser.

+ +
+ + + OpenAFS port + + + + + Benjamin + Kaduk + + kaduk@mit.edu + + + + + Derrick + Brashear + + shadow@gmail.com + + + + + OpenAFS home page + + &os; + port for the OpenAFS 1.5.75 release + + + +

AFS is a distributed network filesystem that originated from the + Andrew Project at Carnegie-Mellon University; the OpenAFS client + implementation has not been particularly useful on &os; since the + &os; 4.X releases. Recent work on the OpenAFS codebase has updated + it to be consistent with current versions of &os;, and the client, + though still considered experimental, is now relatively stable for + light (single-threaded) use on 9.0-CURRENT. The auxiliary utilities + for managing and examining the filesystem are functional, and + reading and writing files works sufficiently well to copy /usr/src + into and out of AFS. Compiling and running executables in AFS is + unsuccessful, though, as mmap is not always reliable.

+ +

There are several known outstanding issues that are being worked + on, but detailed bug reports are welcome at + port-freebsd@openafs.org.

+ + + + Fix the {get,put}pages vnode operations for more reliable + mmap operation. + + Update VFS locking to allow the use of disk-based client + caches as well as memory-based caches. + + Track down races and deadlocks that appear under + load. + + Integrate with the bsd.kmod.mk kernel-module build + infrastructure. + +
+ + + Package management library - libpkg + + + + + David + Forsythe + + dforsyth@FreeBSD.org + + + + + Wiki + page + + Main project page + + + +

Libpkg will allow for fairly fine grained control over package + management.

+ +

Presently libpkg has complete read functionality. Info and + delete tools that have most of the current package tool features + have already been implemented, and once they are completed they can + be considered replacements for their counterparts.

+ +

Once the write and logging aspects of the library are more + mature, add and create tools can be created quickly. A new set of + more maintainable package tools that leverage libpkg will hopefully + be available soon after.

+ +
+ + + General Purpose DMA Framework + + + + + Jakub + Klama + + jceel@FreeBSD.org + + + + + Project + description on &os; wiki + + + Project branch on P4 + + + +

This project purpose is adding support for general purpose DMA + engines found in most embedded devices. GPDMA framework provides a + unified KOBJ interface to DMA engine drivers and unified + programming interface to use direct memory transfers in kernel and + userspace applications.

+ +

This project is a part of Google Summer of Code 2010 and is a + work in progress. Current status can be observed on the wiki + page.

+ + + + Add support for more DMA engines. + + Complete, clean up and merge with HEAD. + +
+ + + Making ports work with clang + + + + + Andrius + Morkunas + + hinokind@gmail.com + + + + + + + + + GSoC2010 + patches + + All patches for + ports + + + +

First part of the project is mostly complete. It added support + for new PORTS_CC variable which should be used in make.conf instead + of CC to change ports compiler. This allows user to change ports + compiler easily, while still respecting USE_GCC.

+ +

Sime patches were written to get ports to work with clang, and a + lot of old patches written prior to GSoC project were updated. + There are still a lot of broken ports and some that cannot be built + because of clang/llvm bugs, but at this point, clang can build most + ports.

+ + + + Fix broken ports that do not work with clang. + + Test patched ports with clang, report clang bugs. + +
+ + + The &os; Foundation Status Report + + + + + Deb + Goodkin + + deb@FreeBSDFoundation.org + + + + + + + + +

We were proud to be a sponsor for BSDCan in May. We also + committed to sponsoring MeetBSD 2010 Poland and California. We + provided 12 travel grants for BSDCan.

+ +

The Foundation and Core Team held a summit on BSD licensed + toolchains at BSDCan 2010.

+ +

We officially kicked off five new projects that we are funding. + They are BSNMP Improvements by Shteryana Shopova, Userland Dtrace + by Rui Paulo, &os; jail based virtualization by Bjoern Zeeb, DAHDI + &os; driver port by Max Khon, and Resource Containers project by + Edward Napierala.

+ +

We continued our work on infrastructure projects to beef up + hardware for package-building, network-testing, etc. This includes + purchasing equipment as well as managing equipment donations.

+ +

We are half way through the year and we have raised around + $48,000 towards our goal of $350,000. Find out how to make a + donation at + http://www.FreeBSDFoundation.org/donate/.

+ +

Our semi-annual newsletter will be published soon. Check out our + website to find + out more!

+ +
+ + + GEOM-based pseudo-RAID implementation — + geom_pseudoraid + + + + + Boris + Kochergin + + spawk@acm.poly.edu + + + + + + Code snapshot + + + +

The old ata(4) driver is believed to be going away sometime in + the future, to be replaced with ATA_CAM [ + 1]. However, ATA pseudo-RAID support in &os;, ataraid(4), is + implemented as part of said ata(4) driver, which means that it, + too, will be going away. It was decided that pseudo-RAID support is + desirable and that it should be reimplemented in GEOM [ + 2][ + 3], which this project aims to do.

+ +

Currently, RAID-1 arrays can be used on VIA Tech V-RAID and + Adaptec HostRAID controllers in a limited capacity. There is no + support for writing metadata yet, so disks are not marked degraded, + there is no rebuild support, etc. These features are planned, along + with support for more hardware and RAID-0 and SPAN arrays.

+ +

A major setback for the current code is that it uses the + device(9) family of functions to identify ATA pseudo-RAID + controllers and constructs arrays based on that information. + Unfortunately, ATA_CAM does not appear to add its devices to the + device tree, so that tactic cannot be used with ATA_CAM. While this + is fine for development of the actual RAID parts of the code, the + project will be somewhat useless in the absence of the old ata(4) + driver. There has been talk of exporting PCI information to GEOM + [ + 4][ + 5], but the work does not appear to have been completed + yet.

+ + + + Obtain documentation for or reverse-engineer metadata formats + for which there is no write support in the ataraid(4) driver (for + example, Adaptec HostRAID). + + Add CAM support for exporting PCI information to GEOM. + +
+ + + &os;/avr32 + + + + + Oleksandr + Tymoshenko + + gonzo@FreeBSD.org + + + + + + + + +

&os;/avr32 project was started by Arnar Mar Sing and actively + developed by him and Ulf Lilleengen. It successfully reached + single-user stage but since then has not progressed much. At the + moment I am trying to get it back into shape. So far some problems + with toolchain on i386 host have been fixed. buildkernel succeeds, + buildworld succeeds with some exceptions. Next step would be fixing + pmap and bringing port back to singe user stage.

+ +
+ + + GPIO framework + + + + + Luiz Otavio O + Souza + + loos.br@gmail.com + + + + + Oleksandr + Tymoshenko + + gonzo@FreeBSD.org + + + + + + + + +

Implementation of General Purpose Input/Output interface for + &os;. Current GPIO bus implementation allows user to control pins + from userland and could be expanded to support various type of + peripheral devices. So far there are two drivers:

+ + + +

Framework is used in Alexandr Rybalko's port of &os; to D-Link + DIR-320 and in Luis Ottavio O Souza's work of bringing &os; to + RouterBoard.

+ +
+ + + Chromium web browser + + + + + Ruben + + chromium@hybridsource.org + + + + + Main chromium + site + + PR + for chromium port + + + +

Chromium is a Webkit-based web browser that is largely BSD + licensed. It works very well on &os; and supports new features like + HTML 5 video. I have been offering subscriptions to fund the + porting effort to &os;: we are up to 20+ paying subscribers after 3 + months, I would like to get that up to 100. This effort uses a new + hybrid-source model, where the &os; patches are largely kept closed + for a limited time. I have submitted the stable release of Chromium + to ports, it is ready to be committed pending final legal approval + by the &os; Foundation. I would like to use this new hybrid model + detailed at hybridsource.org for more + &os;-related projects: contact me if you have an idea or + project that you would like to try with this hybrid model.

+ +
+ + + ExtFS Status Report + + + + + Zheng + Liu + + gnehzuil@gmail.com + + + + + + + + +

This project has two goals: preallocation algorithm and ext4 + read-only mode.

+ +

The aim of preallocation algorithm is to implement a reservation + window mechanism. Now this mechanism has been introduced. The + performance comparison can be found at wiki + page.

+ +

The aim of ext4 read-only mode is to make it can read ext4 file + system in read-only mode when hard disk is formatted with default + features. Now it can support some features, such as extents, + huge_file. Others features will be supported, such as dir_index, + uninit_bg, dir_nlink, flex_bg and extra_isize. My work resides in + extfs and ext4fs branch of Perforce.

+ +
+ + + Distributed Audit + + + + + Sergio + Ligregni + + ligregni@FreeBSD.org + + + + + + Perforce repository + + Project + Wiki + + + +

90% of the functionality is working, the daemons sync two + systems in a master-slave paradigm.

+ + + + Standardize the code to meet &os; requirements. + + Implement SSL in network communication. + + Perform security improvements/bug fixing, strlxxx functions, + memcpy instead strcpy when using non char variables. + + Integrate with current Audit subsystem. + +
+ + + File system changes notification + + + + + Ilya + Putsikau + + iputsikau@gmail.com + + + + +

Project aim is to implement inotify compatible file system + change notification mechanism for &os; and later add inotify + support to linuxulator. fsnotify is already functional but not yet + compatible with inotify in some details.

+ + + + Add access permissions checks. + + Port inotify test cases. Fix compatibility issues. + + Add linuxulator support. + +
+ + + Resource Containers + + + + + Edward Tomasz + Napierała + + trasz@FreeBSD.org + + + + +

As of now, &os; only offers very rudimentary resource controls - + resource limits for many resources (e.g. SysV IPC) are missing, and + there is no way to set resource limits for Jails. As a result, + users who want to run many different workloads on a single physical + machine often have to replace Jails with several &os; instances + running in virtual machines. The goal of this project is to + implement resource containers and a simple per-jail resource limits + mechanism. Resource containers are also a prerequisite for other + resource management mechanisms, such as Hierarchical Resource + Limits, for "Collective limits on set of processes (a.k.a. jobs)" + GSoC 2010 project, for implementing mechanism similar to Linux + cgroups, and might be also used to e.g. provide precise resource + usage accounting for administrative or billing purposes.
+ This project is being sponsored by the &os; Foundation.

+ +
+ + + Namecache improvements — dircache + + + + + Gleb + Kurtsou + + gk@FreeBSD.org + + + + + + + + +

I have been reimplementing VFS namecache to make it granularly + locked and supporting reliable full path lookup without calling + underlying file system routines. I have successfully implemented + directory cache that works in idealized environment with tmpfs. I am + currently working on adding support for entries without associated + vnodes and for "weak" entries and incomplete cached path.

+ +
+ + + &os; Services Control (fsc) + + + + + Tom + Rhodes + + trhodes@FreeBSD.org + + + + + + + + +

&os; Services Control is a mix of binaries which integrate into + the rc.d system and provide for service (daemon) monitoring. It + knows about signals, pidfiles, and uses very little resources.

+ +

The fsc daemon (fscd) runs in the background once the system has + started. Services are then added to this daemon via the fscadm + control utility and from there they will be monitored. When they + die, depending on the reason, they will be restarted. Certain + signals, such as SIGKILL will be ignored and fscd will remove that + service from monitoring. Every action is logged to the system + logging daemon. Additionally, the fscadm utility may be used to + inquire about what services are monitored, their pidfile location, + and current process id.

+ +

FSC provides several some advantages over the third party + daemontools package. For example, fscd uses push notifications + instead of polling; fscd is an internal, &os; maintained software + package accessible to all developers where daemontools would have + to be a port and require us to maintain patches; fscd could be + easily integrated with the current rc.d infrastructure.

+ +

TODO: Testing. I would like to hear how it works in various + environments, get code review, and perhaps some ideas on the rc.d + integration. Also, I need to update the manual pages.

+ +
+ + + Enhancing the &os; TCP Implementation + + + + + Lawrence + Stewart + + lstewart@FreeBSD.org + + + + + + + + + + + + + + +

SIFTR was recently imported into the &os; "head" svn branch + (a.k.a. 9-CURRENT) and will be back-ported to 8-STABLE in time to + be included in 8.2-RELEASE. Please try it out and let me know if + you run into any problems.

+ +

TCP reassembly queue autotuning will be ready for public testing + within the next week and will be committed soon after. It too will + be back-ported to 8-STABLE after an appropriate burn in period.

+ + + + Solicit external testing for and commit reassembly queue + autotuning patch. + +
+ + + Packet capturing stack — ringmap + + + + + Alexander + Fiveg + + afiveg@FreeBSD.org + + + + + Project-Page on + Google Code + + + Slides + + + +

Ringmap is a complete &os; packet capturing stack specialized + for very high-speed networks. Similar to the "zero-copy BPF" + implementation, the idea of ringmap is to eliminate packet copy + operations by using shared memory buffers. However, unlike the + "zero-copy BPF" model, ringmap eliminates ALL packet copies during + capturing: the network adapter's DMA buffer is mapped directly into + user-space. Ringmap also adapts libpcap accordingly to provide + user-space applications with access to the captured packets without + any additional overhead.

+ +

In the context of GSOC-2010:

+ + + + + + Porting ringmap to 10GbE (integrating with ixgbe + driver). + + Porting the entire ringmap code from -CURRENT to + -STABLE. + + Evaluation tests. + + Documentation. + +
+ + + &os;/sparc64 + + + + + Marius + Strobl + + marius@FreeBSD.org + + + + +

Since the last status report some issue with cas(4) have been + fixed, allowing it to work with Sun GigaSwift Ethernet 1.0 MMF + cards (Cassini Kuheen, part no. 501-5524) as well as the on-board + interfaces of Sun Fire B100s server blades (for the Sun Fire + B1600 platform).

+ +

Support for Fujitsu (Siemens) PRIMEPOWER 250 based on SPARC64 + V CPUs has been added. PRIMEPOWER 450, 650 and 850 likely also + work but have not been tested. This also means that the building + blocks for support of machines based on SPARC64 VI and VII CPUs + like the Fujitsu/Sun SPARC Enterprise Mx000 series are now in + place. Access to such machines would be appreciated.

+ +

The problems with Schizo version 7 bridges (actually the + firmware of these machines) triggering panics during boot finally + should be solved.

+ +

The work on getting Sun Fire V1280 supported has been stalled + due to access to such machines no longer being available.

+ +

The above mentioned improvements are/will be available in &os; + 8.1-RELEASE and 7.4-RELEASE.

+ + + + Someone adding support for 64-bit SPARC V9 to Clang/LLVM and + getting it on par with GCC would be appreciated. + +
+ + + New system installer — pc-sysinstall + + + + + Kris + Moore + + kris@pcbsd.org + + + + + M. Warner + Losh + + imp@FreeBSD.org + + + + + + Initial commit message + + + +

The new system installation backend, pc-sysinstall, was merged + into HEAD recently and work is already underway to make it more + functional and useful as a complete replacement to standard + "sysinstall". It is written 100% in shell, not requiring any + additional tools from what is standard to &os;. The backend already + supports a number of exciting features such as:

+ + + +

In addition to the features above, pc-sysinstall is unique, in + that every install ends up being a scripted install. Front-ends, be + it GUI or text based, simply generate the appropriate system + configuration file, and pc-sysinstall does the grunt-work of the + actual installation. This is important for a couple of reasons. + First, it makes the task of front-end development much easier by + not needing to worry about a backend-driven program flow. Second it + means that any front-end can be used to generate the installation + configuration file, which can then be copied or modified to perform + automated installs.

+ +

While pc-sysinstall is still relatively new, it is already in + use as the default backend for PC-BSD 8.0 & 8.1, and has been + getting a very good reception and any bugs found are fixed quickly. + A text-based front-end is already in the works which will allow + installation media to be created without X11 support.

+ +
+ + + DAHDI/&os; project + + + + + Max + Khon + + fjoe@samodelkin.net + + + + + + + + Project Status + + + +

The purpose of DAHDI/&os; project is to make it possible to use + &os; as a base system for software PBX solutions.

+ +

DAHDI (Digium/Asterisk Hardware Device Interface) is an + open-source device driver framework and a set of HW drivers for + E1/T1, ISDN digital and FXO/FXS analog cards + (http://www.asterisk.org/dahdi/). Asterisk is one of the most + popular open-source software PBX solutions + (http://www.asterisk.org/).

+ +

The project includes porting DAHDI framework and HW drivers for + E1/T1, FXO/FXS analog and ISDN digital cards to &os;. This also + includes TDMoE support, software and HW echo cancellation (Octasic, + VPMADT032) and HW transcoding support (TC400B). The work is ongoing + in the official DAHDI SVN repository with the close collaboration + with DAHDI folks at Digium.

+ +

The project is nearing its completion: DAHDI framework and HW + drivers telephony cards has been ported and tested. There is a + number of success stories from early adopters who use E1/T1 and + FXO/FXS cards on &os; for several months.

+ +
+ + + V4L support in Linux emulator + + + + + J.R. + Oldroyd + + fbsd@opal.com + + + + + + + + +

Some bug fixes were applied, and the code was also tested and + made to work with the cuse4bsd webcam driver, which supports a + great many camera chipsets.

+ +

The code is still only in -current. We were going to MFC it to + 8.x but ran into the code freeze for 8.1, so missed that. However, + the code does work on 8-stable. We will try to get it MFC'd for + 8.2.

+ +
+ + + Clang replacing GCC in the base system + + + + + Ed + Schouten + + ed@FreeBSD.org + + + + + Roman + Divacky + + rdivacky@FreeBSD.org + + + + + Brooks + Davis + + brooks@FreeBSD.org + + + + + Pawel + Worach + + pawel.worach@gmail.com + + + + + + + + +

In the past quarter we imported clang into &os; and it is being + built by default on i386/amd64/powerpc. We have not yet commited + the necessary changes to let the world compile with clang.

+ +

Some bugs/warnings were fixed in HEAD as a result of the clang + import and people are exploring more and more areas (dtrace etc.). + There are some bug fixes in clang/LLVM as well that stem from the + import (unknown pragmas warnings etc.).

+ +

Roman Divacky and Matthew Fleming are working on ELF writer in + LLVM. This is meant as a replacement for assembler (currently we + use outdated gnu as). This work is progressing nice, currently it + is able to produce working variants of hello world in C and C++ and + some other small programs from "configure run".

+ + + + Import of newer LLVM/clang into HEAD. + + Help with ARM/Mips/Sparc64. + + Start pushing src patches into HEAD. + + More testing of clang on 3rd party apps (ports). + + More work on ELF writer. + +
+ + + FreeBSD Bugbusting Team + + + + + Gavin + Atkinson + + gavin@FreeBSD.org + + + + + Mark + Linimon + + linimon@FreeBSD.org + + + + + Remko + Lodder + + remko@FreeBSD.org + + + + + Volker + Werth + + vwe@FreeBSD.org + + + + + &os; + Support page + + Resources and + documentation available for Bugbusting + + Information on + Bugathons + + Links to + all of the auto-generated PR reports + + + PRs recommended for committer evaluation by the bugbusting + team + + + PRs considered easy by the bugbusting team + + + Summary Chart of &os; PRs + + + +

After a long hiatus, we aim to hold a bugathon on the weekend of + the 6th-9th August. Everybody is welcome to help resolve or + progress PRs from the database. We appreciate the help of + committers and non-committers alike, please join us in + #freebsd-bugbusters on EFnet if you are free at any time over + that weekend and can help. Please see the "Bugathon" URL for more + information.

+ +

Mark Linimon and Gavin Atkinson held a session on the State of + Bugbusting at BSDCan, which was well attended and led to some + interesting discussions. Time was also found to sit down with + several committers to discuss long standing PRs.

+ +

The bugbusting team continue work on trying to make the GNATS PR + database more accessible and easier for committers to find and + resolve PRs.

+ +

As a result, PRs continue to be classified as they arrive, by + adding 'tags' to the subject lines corresponding to the kernel + subsystem involved, or man page references for userland PRs. + Reports are generated from these nightly, grouping related PRs in + one place, sorted by tag or man page. Mark Linimon continues work + on producing a new report, Summary Chart of PRs with Tags, which + sorts tagged PRs into logical groups such as filesystem, network + drivers, libraries, and so forth. The slice labels are clickable + and may further subdivide the groups. The chart is updated once + a day. You can consider it as a prototype for browsing + "sub-categories" of kernel PRs.

+ +

The "recommended list" has been split up into "non-trivial PRs + which need committer evaluation" and the "easy list" of trivial + PRs, to try to focus some attention on the latter. Various new + reports exist, including "PRs containing code for new device + drivers", "PRs which are from &os; vendors or OEMs" and + "PRs referencing other BSDs".

+ +

It is now possible for interested parties to be emailed a weekly, + customized, report similar in style to the above. If you are + interested in setting one up, contact linimon@FreeBSD.org.

+ +

Our clearance rate of PRs, especially in kern and bin, seems to + be improving. The number of non-ports PRs has stayed almost + constant since the last status report.

+ +

As always, anybody interested in helping out with the PR queue is + welcome to join us in #freebsd-bugbusters on EFnet. We are always + looking for additional help, whether your interests lie in triaging + incoming PRs, generating patches to resolve existing problems, or + simply helping with the database housekeeping (identifying duplicate + PRs, ones that have already been resolved, etc). This is a great way + of getting more involved with &os;!

+ + + + Plan and manage the bugathon in August, and get as many people + as possible interested in participating. + + Try to find ways to get more committers helping us with closing + PRs that the team has already analyzed. + +
+