I have not been at EuroBSDCon
for a while, unfortunately!
My last EuroBSDCon was EuroBSDcon 2017 in Paris,
France (and I have also blogged
about it)!
I was very excited to come back to EuroBSDCon. Meet again in person
with people. Talk in the "hall track"... and, why not!,
have some fun and do some shenanigans in the nights! :)
And... definitely it was very nice, instructive and fun!
I have not fully unpacked the bag but it's time to share some notes!
Friday (20/09): arriving in Dublin
I arrived in Dublin
on Friday afternoon. After some sightseeing on foot I got lost in the
paintings of the National
Gallery of Ireland.
I then spent the rest of the evening and night in Porterhouse Temple
Bar. I had a tasty soup and garlic bread and several delicious craft
beers!
Saturday (21/09): 1st day of conference talks and social event
My hotel was a 40 minutes walk from University College Dublin (UCD). I
arrived a bit early for the registration. I then met some other NetBSD
folks that I had missed in person since 2018 and met new ones.
View from O'Reilly Hall, University College Dublin.
After the Opening Session that welcomed us, the conference started with
the opening keynote
Evidence based Policy formation in the EU what Evidence are we
Presenting to the EU? by Tom Smyth. Tom Smyth shared his experience
on evidence based policy formation in the European Union from a point
of a relatively small ISP. EU is open to feedback and as a BSD
community we can shape and influence policies.
Flipping Bits: Memory Errors in the Machine, Taylor R Campbell
Taylor talked about bit flips, the memory errors in the machine.
Memory errors caught in the act: corruption of a filename in Riastradh's local machine.
He started sharing a catch of bit flip in a filename corruption on his local
machine in NetBSD src
repository. A bit flipped and that
resulted from
external/gpl3/gdb/dist/gdb/testsuite/gdb.linespec/cpls.cc
to
e\370ternal/gpl3/gdb/dist/gdb/testsuite/gdb.linespec/cpls.cc
(In ASCII lower case
x
is \170
that is
01111000 in binary, while
\370
is 11111000, the most
significant bit got flipped!).
He also opened several PRs - due to several experienced kernel panics
mostly in ZFS - before he realized that it was bad RAM.
As part of the talk a lot of fundamentals concepts and theory behind
Error Detection And Correction (EDAC), causes of memory errors, where
memory errors can happen, error severity and error persistence were
shared.
Taylor then talked and digged in ACPI Platform Error Interface (APEI)
that is the standard interface in ACPI that abstract EDAC device
registers.
In NetBSD APEI is supported by the apei(4) driver.
The apei(4) driver also
exposes a sysctl
interface to APEI EINJ (Error INJection) that permit to also inject
errors. Using such interface Riastradh live demoed that and trigger a
memory error that was corrected and reported by apei(4)!
Riastradh live demoing a memory error using APEI EINJ via apei(4).
The talk was great and super-interesting. Memory errors are also pretty
common. Taylor also shared a lot of anecdotes and that make his talk
even more fun and interesting!
An introduction to GPIO in RPi3B+ and NetBSD, building a wind-speed logger as an application, Dr. Nicola Mingotti
Dr. Nicola Mingotti talk was a great introduction (and more) to
Generalized Pin Input Output (GPIO)!
He started really from the start by populating a uSD card and
installing and configuring NetBSD on a Raspberry
Pi 3 Model B+.
He then introduced GPIO, how the RPi3B+ pin maps to the GPIO number and
then we were ready to get our hands on GPIO!
As first exercises he showed how to set a PIN state (on/off) and read a
PIN state via gpioctl(8).
This can be used respectively to turn a LED on/off and to read the
state of a switch.
The second series of exercises looked on how fast gpioctl
can be. This is limited for several applications and so Nicola
introduced how to write and read pin states in C via ioctl(2). This is much faster
and with that we can go from switches to square waves!
To avoid bit-banging and polling respectively gpiopwm(4) and gpioirq(4) can be used.
Nicola shared several applications of them, like blinking LED and loopback.
(Another possible application, left as an exercise to the reader is the
"daemon toggler". The "daemon toggler" starts/stops a daemon (e.g. ntpd(8)) based on the state of
a physical switch!)
He then shared a much bigger application a Wind-Speed Logger (AKA WSL).
This was used by Nicola in order to evaluate if wind turbines could
be installed or not. He also shared how he adjusted an RPi case and
built housing for it (the RPi will be outside, needs to cool off so
needs some ventilation but at the same time the housing should block
rain!)
Nicola showing the sensor used to build the Wind-Speed Logger (WSL).
He concluded the talk on why he used NetBSD.
The talk was really educational. Nicola did a great job in summarizing
and providing a lot of references. If you are more interested I suggest
to catch up with the video recordings, slides and try to do the
exercises in it!
"Hall track" and preparing for the social event
After Nicola's talk I have spent some time in the "hall track" talking
with other people and missed a couple of talks (recording should be
available so I will hopefully catch up!).
I have then attended Stefano Marinelli's talk Why (and how)
we're migrating many of our servers from Linux to the BSDs.
Stefano shared his more than 2 decades old experience with BSD systems
and how he made his passion his profession.
He shared his philosophy, experience with clients and why it is
important to focus on solving problems.
During the talk he shared also several interesting stories with
clients. In one of them to avoid possible bias on BSD systems he
migrated client hosts without informing them. A client called alarmed
because he noticed a massive performance boost!
His talk was inspiring and you can find more in his I
Solve Problems blog post.
After Stefano's talk we gathered to join the social event and took a
DART train (Dublin Area Rapid Transit).
Social event: BrewDog Dublin Outpost
The social event was in BrewDog Dublin
Outpost.
We were in an area dedicated to EuroBSDCon participants so that we can
eat, drink and talk. There was a buffet and we received tickets to grab
beers.
Several folks gifted me an handful and I have definitely had a pretty
ample beer tasting experience too! :)
I also had a Vegan Spicy Meaty pizza: a pizza with seitan, mushrooms,
chilli flakes, fresh red chilli, tomatoes and vegan mozzarella.
My italian-pizza-side is usally pretty orthodox and I usually go for a
pizza
marinara! :) But overall that was actually pretty nice and I really
appreciated the topping!
I have staid with a couple of folks until the closure.
With Christoph Badura (<bad@>
) we walked in the
desperate search of grabbing some more food. However, at the end we
ended up in The Temple Bar Pub for "only another beer"! We met with
some friendly Swedish and Swiss tourists and we started talking about
BSD systems at 2:00 AM! The weather was pretty nice (it was always
pretty cloudy but there was no rain for the entire conference)
and we decided to continue walking back to our hotels.
At the end we have walked for a bit less than 9 kilometers from Temple Bar
to nearly Booterstown!
That was a great walk though and definitely we had no traces of
hangovers in the morning! :)
Sunday (22/09): 2nd day of conference talks
I wake up a bit late on Sunday and arrived in UCD at around 12:00 and
staid until lunch in the "hall track".
For lunch the vegetarian dish was a vegetarian curry, pretty tasty!
On Sunday we had a longer lunch break also to take a family photo.
EuroBSDCon 2024 family picture. You can find more EuroBSDCon
photographs taken by Ollivier Robert at EuroBSDCon 2024 -
Dublin, Ireland album.
After lunch I have attended FreeBSD at 30
Years: Its Secrets to Success by Kirk McKusick. In this talk Kirk
looked back at 30 years of FreeBSD history (and also more for BSD
years!) and what made its success. He talked about a lot of different
topics, including leadership, development, importance of adopting ideas
and codes from NetBSD and OpenBSD, communication, documentation and
project culture. He also shared several interesting statistics and
demographic about FreeBSD.
I have then attended Confidential
Computing with OpenBSD by Hans-Jörg Höxer.
Hans-Jörg introduced concepts about confidential computing, the
threat model that it cover and then digged in
AMD Secure
Encrypted Virtualization (SEV) and how he is using that in OpenBSD
vmm(4).
Then I have attended Building an open
native FreeBSD CI system from scratch with lua, C, jails & zfs by
Dave Cottlehuber. In this talk Dave shared the design and
implementation of a Continuous Integration (CI) system focused on
FreeBSD technologies but that can be ported also to other BSDs.
The final talk I have attended was SIMD-enhanced
libc string functions: how it's done by Robert Clausecker and Getz
Mikalsen.
In this talk Robert shared how several libc string functions were
reimplemented in other to use SIMD techniques on amd64 and arm64.
Getz worked on porting such work on arm64 as part of Google Summer of
Code 2024 and he shared his work and challenges in porting that.
The talk was interesting and micro-benchmarking showed performance
increase by factor of 5 on average!
Then I have joined the Closing Session.
There was a wrap up of the conference and some stats about it.
And *drumrolls* the next EuroBSDCon location was
announced! EuroBSDCon 2025 will be in Zagreb, Croatia!
After the Closing Session with other NetBSD folks we met again for one
last dinner. We met with Andy Doran (<ad@>
) and we
had some junk food and several beers.
Conclusion
I had not traveled a lot in the last years and I have missed several
EuroBSDCon-s and I really regret that! EuroBSDCon 2024 was great: very
interesting talks, friendly folks and it was some time that I did not
had so much fun!
Dublin was also really nice. All the locals were also very friendly.
I hope to come back to both Dublin and Ireland to do some much more
sightseeing in a more relaxed pace. Enjoy food, beers,
drinks and more. Talk with locals.
I would like to thanks a lot to all the EuroBSDCon organizers for the
amazing conference!
I also would like to thanks The NetBSD Foundation
that funded my EuroBSDCon registration.
If you have never been to EuroBSDCon and you are curious about BSDs...
I strongly suggest to attend either as participant or speaker! Folks
are super-friendly, there are a lot of interesting tutorials and talks
and I'm pretty sure you will have fun too!
And... if you are still reading until here... thank you too! :)