There will be a FreeBSD booth during LISA in Boston, next Wednesday and Thursday (December 7–8). We’ll have some cool Foundation swag, Foundation brochures, and will be available to answer FreeBSD questions and to accept donations for the Foundation. Entrance to the exhibition area is free, but you do need to register first. If you’re in Boston, stop by booth #408 and say hi!
Monday, November 28, 2011
Friday, November 25, 2011
SoC Mentor Summit Trip Report
The Foundation provided a travel grant to Bjoern Zeeb to attend the Google Summer of Code Mentor Summit and the FreeBSD Vendor Summit. Bjoern's trip report is as follows:
Thank you for helping with my travel costs to the Google Summer of Code Mentor Summit and the FreeBSD Vendor Summit.
Google Summer of Code Mentor Summit
Google's registration requirements and provided wiki space made it
possible to coordinate travel with others, which allowed me to make
first contact with mentors from other Open Source projects even before I
left and obviously I ran into more geeks by the time I got to the
airport.
Saturday morning the Google buses picked us
up. After an excellent breakfast, there were important rules during the
opening session: do not go beyond the areas where we have put up signs. This was obviously the largest mentor summit so far as the classic
un-conference approach for finding topics and rooms no longer scaled.
Since the schedule changed regularly, it wasn't possible to
attend all the sessions I had planned, especially on Sunday. Let me
highlight a few:
- Umbrella Organizations (Admins and
Mentors meeting): while this does not directly apply to FreeBSD, I was
curious to see what kinds of problems other organizations were facing and whether they have some interesting ways to solve their issues that could also
help FreeBSD. I was overwhelmed by the real problems I heard about
and it made me realize how well organized and well run FreeBSD is. On a
side note, I learned that KDE had 50 GSoC slots, which I wish FreeBSD could
handle as well. One interesting idea that came up was that some
organizations are either providing web forms or spreadsheets for mentors
and students to more easily keep track not only of progress but also
for catching interaction problems. Given FreeBSD has the weekly or
bi-weekly mailing list updates, tells students to let admins know in
case of problems with their mentor, we are not too far away from that
but it could certainly simplify some tracking for admins.
- Women in Open Source: there were multiple sessions on this. For me a lot of the discussions did not go too far into the topic of attracting more women to open source development. Only Gnome has hosted women summer outreach programs in the past, which was interesting to hear about. One important item is to provide dedicated mentors upfront that women can talk to one-to-one and that a list of these would be available all year long. Astonishingly the discussions often went along the reasoning of not driving woman away rather than attracting them in first place; there were plenty of suggestions of what not to do, and what to do to help them stay.
- Marketing and Open Source: a topic that FreeBSD needs to get further up to speed on. A lot of talk was how to help commercialize an open source project. Social Media, videos, and local communities were also big discussion items. Some ideas were: leveraging users by providing pamphlets and posters that they can distribute, advertise at events, and use references and independent reviewers on the web page. PostgreSQL is doing a good job and we should leverage some of their ideas.
- Open Source OS summit: this was one of the most interesting discussion groups during the weekend. It is like an organized hallway track with everyone but Linux in the room. Major topics were: combined arm twisting of vendors to not only help one but many projects, firmware licensing, shared documentation (such as data sheets) repository, and possibly setting up a mailing list to coordinate. It was interesting to learn beyond other informal discussions how many other projects such as RTEMS, Haiku, and Illumos take bits and pieces from FreeBSD and wondering why we don't talk a lot more or invite them to our devsummits. Another thing to consider is how to "sell" the project - which reaches into the marketing but also a funding discussion. Should a project just provide the source and let the ecosystem create distributions? Would commercial support on top be an option?
- The hallway track and dinner conversations: in addition to the Open Source OS summit session, this was most helpful for getting in touch with other BSD consumers and projects which we consume. I had extended chats with Illumos people pondering collaboration on some topics, talks with NTP folks, discussions on the network stack with RTMES, and I also got to know MoinMoin folks who are quite local to me and who could immediately help me to solve a problem so that we can easily have links on the wiki to SVN commits. My other hallway track item was to debug why IPv6 on the Google guest network did not work for me. The problem has since been worked around and IPv6 should work flawlessly for everyone there now. The diagnosing on why it only affected certain people or possibly only BSD (derived) operating systems continues.
The FreeBSD Vendor Summit
The FreeSBD vendor summit, a couple of days later, continued to provide insights on what people need or want from FreeBSD. It was even more interesting to hear about what was cooking and what people considered to give back. The general trend to push changes not considered to be IP back to FreeBSD continues and makes me believe that in some ways things are going better in our world. The afternoon was almost all about virtualization. We heard about FreeBSD on Microsoft Hyper-V and talked a bit about EC2, Xen, bhyve, as well as tools and frameworks to help to simplify the usage of FreeBSD in or for virtualized environments. At the end of the day I started to look at the virtio drivers for Peter to commit them to HEAD and we got the QLogic 10G driver into the tree as well. In addition to the session, the breaks provided some time to informally chat with the other participants. It would have been great to have some time the following day to continue these informal group discussions but BSDCan is only a couple of months away. Having such an event at least twice a year is extremely helpful and my thanks goes to George for running this!
Wednesday, November 2, 2011
Trip Report: Andrew Turner
The next trip report is from Andrew Turner:
On day one of the Developer summit, I attended the bmake/bus_bma and toolchain working groups. I contributed to these by announcing a patch to allow FreeBSD to be compiled from Linux. The patch is available; however, it is against an old copy of HEAD and does not apply correctly. An updated version is expected to be committed to a project branch in subversion in the next few weeks as I have the time to work on it. In the toolchain working group, I discussed the current state of the ARM EABI port. The last remaining part is getting GCC configured correctly. Until now I have been using a minimally configured copy of GCC. Due to the nature of the change, I would like to ensure it is correct as the ABI will need to work with clang in the future.
The second day of the Developer summit had interesting discussions on virtualization. This is an area that will soon pick up in the embedded area when ARM vendors release their System on Chips containing Cortex-A15 cores, as these have hardware supported virtualization.
I gave a talk in the FreeBSD track at the conference on the current state of NAND flash with FreeBSD, what I would like to change, and where NAND flash hardware is heading. The main point is that the the NAND flash framework is mostly done; however, we need a flash filesystem or flash translation layer before we can use it.
As a result of my talk, I was asked about devices we support that contain NAND flash. The OpenRD-Ultimate appears to be a device we support that developers are able to buy; however, as I have never used one, I am unable to recommend it. This lead to a discussion on getting one into one of the FreeBSD clusters. Since the conference, Wojciech Koszek has taken the lead in organising embedded devices for the Netperf cluster.
Tuesday, November 1, 2011
Trip Report: Brooks Davis
The next EuroBSDCon trip report is from Brooks Davis:
I arrived in Maarssen on the 5th of October and met up with fellow developers for drinks at the hotel and then dinner.
On the 6th, we headed to the conference site and commenced with the developers summit. After an opening session, we broke up into working groups. For the first session, I attended the ports session. I lead a short discussion on the ports impact of our migration to Clang/LLVM as the base tool chain. The general conclusion was that we need to add support for switching the default ports compiler (a project which is well underway), as well as the ability to specify a restricted set of acceptable compilers for a given port. There seemed to be solid support for allowing the default to be clang for FreeBSD 10 builds on architectures where we make it the base compiler.
After lunch, I lead a session on our toolchain work. I outlined our current status to the group. The status report was followed up by a discussion of the remaining requirements to produce a GPL-free base system. Those items include:
- an LLDB port
- libgcc replacement on some architectures (at least MIPS and sparc64)
- libgcc*.so
- FDT tools
- unwinding library
- GDB server
- as(1) wrapper (maybe?)
- 16-bit ASM support (at least on x86)
- libdwarf
Of the pieces required for a GPL-free base, the largest component remaining is a linker. Because linkers have quite a bit of scope, we spent most of the remaining time brainstorming requirements for a BSD licensed linker. Those requirements included:
- linker scripts (or equivalent)
- LTO framework
- Link time optimization against IR or machine code
- Incremental linking
- Support for IR in ELF
- GNU ld compatibility
- IR processing by plugin
- Limited non-ELF support (for boot blocks, etc)
- Alternative hash table support
- Crunching support
- Be fast
- Native cross-architecture support
- Multipass lookup
- Unit tests
- Coded to LLVM standards (to allow inclusion in LLVM)
- linker is a library
- C and C++ support
- Architecture support: i386, x86_64, ARM, PPC(64), MIPS(64), PiNaCl
- Possible architecture support: sparc64
Friday the 7th commenced with an opening session followed immediately by working group reports. I reported on the toolchain session and most other session leaders reported on their sessions. That was followed by a discussion of options for using Git to track FreeBSD. At the end we concluded that we definitely need a git.freebsd.org to provide officially "blessed" git trees, but we left some details unresolved such as the exact scope of the git trees. This discussion was followed by a set of presentations by Chris Buechler of pfSense, Jeroen van Nieuwenhuizen of Snow, Robert Watson of the Cambridge Computer Laboratory and Yvan Vanhullebus of NETASQ on their use (or non-use in the case of Snow's clients) of FreeBSD. After these presentations we broke for lunch.
When we reconvened after lunch we started with a discussion of virtualization on FreeBSD. In a number of key ways FreeBSD was late to the virtualization game, but it looks like we're catching up. Between the addition of BHyVe and an upcoming Xen Dom0 implementation, we will soon be well positioned to host guest VMs on FreeBSD and our support for running as a guest seems to be improving steadily. We're still behind in some senses, but given the remarkably poor reality that is accepted as the state of the art, it seems like we have a chance to pull ahead in areas of management if we invest some effort.
The virtualization session was followed by a session for FreeBSD 10.0 brainstorming. As usual for such a session, many ideas were generated. If even half of them are completed, I think we'll have a fantastic 10.0 release.
Following the success of the dev summit track introduced at BSDCan this spring, Saturday contained such a track along side the conference. I attended several of these talks and gave a presentation on our participation in the 2011 edition of the Google Summer of Code. We had 13 successful projects and have already gained two comitters as a result of this year's projects, with a couple more expected in the next few months.
Monday, October 24, 2011
Trip Report: Gleb Kurtsou
The next trip report is from Gleb Kurtsou:
Thanks to the FreeBSD Foundation, I was able to attend the Developer Summit and EuroBSDcon'2011. It was my first Developer Summit. Two of my main goals were to popularize PEFS and meet in person people I communicate with via email. FreeBSD developers are all great people and nice to talk to. I only wish I could also meet
my past GSoC mentors at the conference; hopefully I'll be more lucky next time.
PEFS is a kernel level stacked cryptographic file system for FreeBSD. It's been
around for a while, but still remains unknown to many FreeBSD users. I gave a
short presentation about PEFS at the DevSummit, outlining its design and
differences compared to other cryptographic stacked file systems. I had a number
of comments, particularly regarding data authentication in PEFS, so I've started
looking closer at the issue and have already evaluated various designs. What
surprised me is that interest in PEFS has increased after adding PEFS to the
list of talks on the wiki page. Perhaps the outcome of giving the talk could be
even larger than I originally expected.
The DevSummit was both very inspirational and technically useful. I took valuable
ideas and knowledge from every working group session. The toolchain and bmake
groups discussed some of the issues I've faced myself building and maintaining
a project partially based on FreeBSD and reusing its build system: portions of
the code couldn't be compiled with the base system toolchain, managing
interdependencies, and faster builds. It's encouraging to see the FreeBSD project
solving these problems right way instead of using homegrown hacks. Capsicum and
virtualization are areas of my interest and closely related to projects I work on.
An additional file systems working group would have made this event ideal for me.
It looks like a sufficient number of VFS gurus couldn't get to this place at the
same time, so I'm looking forward to attending the next Developer Summit.
Thanks again to the Foundation for its support!
Saturday, October 22, 2011
Trip Report: Niklas Zeising
The next trip report is from Niklas Zeising:
This year I had the privilege and pleasure to attend EuroBSDcon 2011 and the preceding Developers Summit. I have had plans to travel to earlier EuroBSDcon conferences, but have never been able to partly because of the cost. What made this year different was the generous sponsorship from the FreeBSD Foundation which finally made it possible for me to attend EuroBSDcon 2011. My primary reason for attending the conference was to meet and talk to some of the people in the FreeBSD community that I have had contact with over IRC and e-mail. I was also hoping to be able to contribute to the discussions during the Developer Summit and to listen to the talks and perhaps learn something new.
My travel started in Sweden from where I traveled via Copenhagen to Amsterdam and then on to the conference city, Maarssen. When I arrived at the hotel, I was just in time to drop my things off in my room and run to the bus to catch up for the Wednesday dinner.
My first day since arriving in Maarssen I attended the FreeBSD Developers Summit, to which I had been invited by Benedict Reuschling. After arriving at the venue and registering for the conference, the first order of business was eating breakfast, which was served at the venue. After breakfast and the Developer Summit opening ceremony, I spent the rest of the morning attending the documentation working group. During this session we had interesting discussions about several topics, including the conversion of the repository to subversion and what was needed to convert the FreeBSD documentation to a more modern markup language. We also discussed how to get more people involved in the documentation effort and how to make use of all the howtos floating around in the FreeBSD forums and the Internet in general. After lunch I continued the day by attending the Toolchain and Capsicum working groups. It was very nice to listen to these great minds discussing various aspects of FreeBSD.
The second day started with reports from the different working groups, after which Ulrich Spoerlein led a discussion about using git. The next topic on the agenda was the vendor discussion. It was very insightful and interesting to hear from some of the people that use FreeBSD in their commercial and research applications. I also found it interesting to hear why some companies choose not to use FreeBSD in their IT infrastructure. After lunch, the Developer Summit continued with a discussion on Virtualization. For me it was very interesting to hear about BHyVe, since I was not aware that this project existed. It is also clear that there still are tasks to work on to make FreeBSD an even more competitive platform in the virtualization market. The developer summit then ended with a brainstorming session on the FreeBSD 10.0 release.
Saturday meant that it was time for the conference proper. After a very interesting keynote given by Hans van de Looy on the topic of the recent data breach at Diginotar, and other issues regarding IT security, such as trust, I started the day in the hacking lounge where I began working on some of the ideas and suggestions talked about during the documentation working group. The first talk I attended was about OpenBSD's packet filter, PF, and its history. After lunch I spent the afternoon listening on the devsummit track. The last talk of the day was by Marshall Kirk McKusick on the topic of BSD history. I found this talk very funny and it was interesting to hear more about the history of BSD.
The EuroBSDcon social event took place Saturday evening at the railway museum in Utrecht. I found the museum entertaining and we got a very nice guided tour through the museum. After the tour, dinner was served in the museum.
Sunday began with a second keynote, this time the topic was reliable systems, which was given by Herbert Bos. I continued the morning listening to the talk on Capsicum by Robert Watson and BSD Multiplicity by Michael Dexter. After lunch the Sendmail talk by Eric Allman was on the agenda, which I followed up with the talk on OpenSSH by Damien Miller and ZFS by Brooks Davis. The day ended with a work in progress session and the closing ceremony. It was actually a little saddening that the conference was over since I had a very good time.
I am very glad that I went to EuroBSDcon 2011 and really hope that I will be able to go again in the future. It was very nice to finally be able to meet some of the great persons behind e-mail addresses, commit messages and IRC nicknames and talk to them in person. I want to thank Benedict Reuschling for talking me into finally going and to the FreeBSD Foundation for giving me the opportunity to attend. I also want to thank all the other people I met and talked to during the conference and who made me feel right at home. Last but not least, I want to thank the organizers who made the conference a reality. Hopefully we will see each other next year!
Friday, October 21, 2011
Trip Report: Daichi Goto
The next EuroBSDCon trip report is from Daichi Goto:
Thank you for the great support of my journey to EuroBSDCon 2011 and the FreeBSD DevSummit 2011. It was a great experience. Thank you again.
On the first day of the DevSummit, I attended the Ports, Toolchain, and Capsicum working groups. These days, GPL-free toolchains are becoming a big concern between *BSD folks and users not only for business reasons but because they are technically interesting. Many developers and users require GPL-free toolchains and FreeBSD 10 represents a big milestone for that. The working group discussions were very exciting and had a forward-looking attitude.
The new idea "Package Set" and the weekly package set release are important for most common FreeBSD users. Come to think of it, developers and advanced users prefer to use the Ports Collection as their package management system, but it's hard for most novice users, lightweight users and enterprise-class managers who just want to run a stable system for their jobs. FreeBSD's current binary package management system is not good for updating as it can result in package update failures. The Package Set and the weekly update mechanism have an advanced potential to solve this issue and provide a more comfortable and easy to use packages update experience.
The new security feature "Capsicum" is valuable for all *nix. The working group discussions about Capsicum and FreeBSD have given developers a chance to discuss which libraries, commands and 3rd party applications would benefit from Capsicum. Capsicum will be a default feature from FreeBSD 9.1 and FreeBSD 10 will be the new land of Capsicum security.
On the 2nd day, the last session "FreeBSD 10 Thinking" provided me a chance to re-think the design and the implementation of our unionfs. FreeBSD's unionfs was reimplemented to solve some lock issues some years ago and it works very well in most situations. But in some situations, the current unionfs implementation causes a kernel panic because of kernel memory exhaustion. Also, our VFS based multi stackable unionfs implementation has some issues that are very difficult to solve. Based on the advice from hrs, we (I and ozawa-san) are re-thinking the design and implementation to improve robustness and reliability, as well as to include some new features such as the dynamic mount layer moves-up or moves-down and non-top layer umount. We are going to brush up our design ideas and try to do experimental developments for FreeBSD 10. I'm pleased to get a good chance at this.
The EuroBSDCon 2011 keynotes and sessions have also given me some great inspirations. My thanks goes to the EuroBSDCon 2011 committee members and sponsors. I'm looking forward to seeing all you at the next EuroBSDCon, and of course, if it is possible, I'm looking forward to seeing you at Spring, AsiaBSDCon 2012 in Tokyo. That's during cherry blossom's beautiful season.
When I get back to Japan, I am going to write some news and articles about FreeBSD and the conference for some Japanese IT media, including Gihyo.jp FreeBSD Daily Topics, MYCOM Journal, and @IT.. For most common Japanese developers and users, English news sources are hard to understand. My Japanese articles around FreeBSD are very valuable for Japanese users of FreeBSD. Thank you again for the FreeBSD Foundation's travel support.
