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 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.

Thursday, October 20, 2011

Trip Report: Marius Strobl

The EuroBSDCon trip reports are starting to arrive and will be posted here. The first report is from Marius Strobl:

The generous sponsorship of the FreeBSD Foundation for the first time allowed me to attend EuroBSDCon'11 as well as the associated Developer Summit in its entirety (so far I could only attend one day of last year's EuroBSDCon Developer Summit). Having the chance to take part in the busdma(9), for which Marcel Moolenaar and myself had a preparatory email conversation, and the bmake working groups on the first day was really helpful. Having done work for the sparc64 port and machine independent network and storage controller drivers, I came across several limitations in the current implementation of busdma(9). Other architectures will benefit from the proposed busdma(9) overhaul. Switching to a bmake based build infrastructure will provide better and optimized cross-compilation of FreeBSD on other operating systems. While this isn't something that I have a direct need for, it will come in handy should the rest of the FreeBSD developers decide to remove the GPL'ed toolchain in the base for all platforms in favor of LLVM/clang, which so far doesn't support 64-bit SPARC v9. The bmake based build infrastructure will provide a backup plan by allowing the use of an external GCC and binutils via its external toolchain support. Surprisingly, there was next to no opposition to the plans of these two working groups. Collaboration on the bmake build infrastructure and busdma(9) overhaul working groups will take place via the FreeBSD Wiki.

The working group presentations and the brainstorming sessions on the second day of the Developer Summit provided a good overview of what's going on and is planned in the FreeBSD project beyond the src base, including the infrastructure and the ports collection. Both the first and the second day of the Developer Summit as well as "day zero" were concluded by nice dinners which allowed one to make contacts with fellow FreeBSD developers, especially doc and ports committers, which I as a src committer otherwise don't have that much contact with, even online.

On the third day of the Developer Summit, which also was the first official day of EuroBSDCon'11, I gave a short talk about the status of the FreeBSD/sparc64 port. Based on the feedback that I received, the presentation was well received. The rest of that conference day I spent mainly attending the rest of the Developer Summit track, which was an official part of EuroBSDCon'11 and also attracted some non-FreeBSD committers. This again provided me with a good overview of what else is going in FreeBSD. The pkgng project seems like an especially worthy addition. Slides of the talks given in that track are available here. That day was closed by a nice social event at the Utrecht Railway Museum, again giving good opportunities to make contacts with fellow developers.

The second day of EuroBSDCon'11, which no longer hosted Developer Summit events,had some interesting talks, of which the "OpenBSD/sun4v: Porting OpenBSD to Sun's UltraSPARC T1 and T2 processors" by Mark Kettenis turned out to be especially useful as it gave me 2-3 new ideas about how to address integration of sun4v support into FreeBSD/sparc64. A short chat with Mark afterwards yielded helpful advice for adding support for the line of Fujitsu/Oracle Mx000 Enterprise servers to FreeBSD/sparc64.

I'm especially thankful that the Developer Summit and EuroBSDCon'11 for the first time allowed me to meet my former mentor Marcel Moolenaar in person. Other interesting contacts I've made and topics relevant to the FreeBSD project I've talked about with them were:

  • Jonathan Anderson
  • Gavin Atkinson (Solaris binary-compatibility for FreeBSD/sparc64)
  • Baptiste Daroussin (pkgng)
  • Pawel Dawidek (ZFS)
  • Wilko Bulte (donate a dual Sun SCSI-HBA and will try to get me disks for a machine used for package building and for my development machine)
  • Beat Gaetzi (will try to get me UltraSPARC T1/T2 hardware)
  • Justin Gibbs (fixing issues revealed by a recent commit of Kenneth Merry regarding sense residual handling in Justin's ahc(4) and ahd(4) drivers)
  • Alexander Motin (NCQ timeouts with ahci(4))
  • Gabor Pali (seems like I've even managed to catch his cold ...)
  • Daniel Seuffert (will try to get me UltraSPARC T1/T2 and SPARC64 VI/VII hardware)
  • Ed Shouten (thankfully agreed to adapt/fix rp(4) to his TTY-rework if I send him the respective card)
  • Shteryana Shopova
  • Florian Smeets
  • Bjoern Zeeb
While at the conference and during the trips to and from Maarssen I managed to finally commit support for SCHED_ULE to sparc64 and vice versa, which should also provide a tiny performance improvement on other architectures, commit fixes for two PRs, clean up some PHY device driver stuff Warner Losh left behind, fix fallout like the ahc(4)/ahd(4) issue mentioned above in other HBA drivers, port the NetBSD MII bitbang'ing code and convert most of the network device drivers that can take advantage of it to use it, and fix a real bug that is present in 153 device drivers.

All in all, I think it was fruitful for me to attend EuroBSDCon'11 and the associated Developer Summit as a member of the FreeBSD project and community.