OpenBSD Journal

N2K8 Hackathon Summary Part 5

Contributed by merdely on from the four-little-islands--so-much-sushi dept.

Mark Uemura (mtu@) shares the fifth edition of his series of articles from the Network Hackathon in Japan:

Marco and Markus

Network Hackathon (Part 5) - May 5-10, 2008, Ito, Japan

Marco Pfatschbacher (mpf@) seemed to really enjoy his experience at the N2K8 hackathon. Like many, it was his first time to Asia, let alone Japan. What is it about Japan that leaves tourists and visitors with a good impression going home?

Continue on for the fifth piece of Mark's series with more pictures and some information about Japan.

Hmm, let's see. It is a country (made up of four big islands) with very little natural resources but many natural disasters. It is situated in the Asian monsoon belt, hence the Japanese word tsunami. Typhoons are frequent during the rainy season. The country is situated on six tectonic plates (the San Andreas fault lies between two). People studying seismology come to Japan. Tremors are frequent and unfortunately Tokyo is overdue for a big earthquake. Eighty percent of the land is mountainous range and only twenty percent of the land is arable. Japan is one of the more densely populated countries of the world. To put things into perspective, if you take the population (~120 million) and divide it by the total land area, you would get around 320 people per square kilometre. Contrast that with Canada which only has 3 people per square kilometre. But it is worse than that because most of the population lives on just 4% of the available land. Over 40 million people live in the Tokyo and surrounding areas. 12 million people go in and out of Tokyo everyday! So what is good about all of this? Well, the Japanese have to be resilient. All they really have are human resources. I am a firm believer that you do not build character until you are forced to go through struggle and strife in your life. What alternative does Japan have?

I've lived in North America, Europe and Asia and have traveled a lot and yet Japan is the only country that I've been to that is so densely populated where people treat each other with dignity and respect. More over, it is clean even in the big cities like Tokyo and Osaka and yet you would be hard pressed to find a garbage can on the streets. People have a sense of responsibility and a duty to their family, company and country. They would never want to bring shame onto any of them. Japan is also perhaps one of the safest countries in the world. They are really crazy about food. Every second TV channel has something to do with food. It is not uncommon for many households in Japan to serve at least one dish that is ethnically not Japanese. Needless to say, the food here is fantastic. :-)

Nice Hair
Given that fact that space is at a premium, they see beauty in small things, kind of out of necessity. The Japanese seem to really appreciate art. Think about bonsai trees, flower arrangement, tea ceremony, origami, wood block prints, sculptures, etc. There is also a steep history of Martial Arts. Heck, both Mathieu-Sauve Frankel (msf@) and Ryan McBride (mcbride@) seem to live for Aikido and I used to compete Internationally doing Judo. For all of us living here, it is one of the reasons why we came to Japan. In fact, I am aware of many developers that are learning Japanese and many of whom can speak and read the language.

I have a tendency to be too verbose, but I really can just keep going with this and so I should stop here. Suffice it to say, Japan has a fascinating culture and those that come are generally impressed and usually have a great time.

Now back to what Marco had to say about his work at the hackathon -- all very useful stuff indeed:

I added a workaround to an existing PHY hack within the axe(4) driver, so it can now support Apple's USB Ethernet Adapter.

A while ago I, had a discussion with mickey and we figured that virtual network interfaces are not supposed to add data to the randomness pool because they are not random at all. I fixed that by moving the random sampling into ether_input() where it is only done from physical interfaces.

Marco and Markus
Later, I added two new features to pf(4) which I hope people find useful. pf(4) rule accounting now has a counter to record how many states in total have been created by a rule. For example, it is now possible to count how many connections have been made to your webserver.

The kill states support in pfctl(8) now supports two additional match targets. We can kill states by rule label or state ID. Single states can be killed by their ID as shown by

# pfctl -ss -vv

It is also possible to kill all states that have been created from rules carrying a specific label.

If, for example, one has created a ruleset with multiple rules for the sales department labeled "sales" a

# pfctl -k label -k sales

can be used to kill all of their existing states to enforce a new policy, even on existing connections.

The rest of the time I spent on interesting discussions, consuming excellent food and I also started working on some new stuff...

Ken's Back
One of the nicest compliments that I heard about Ken Westerback (krw@) was that his code is meticulous and clean. This came from another developer whom I respect very much. Whilst many developers are adding wonderful functionality, Ken is killing bugs and removing dead code! Obviously, he has been doing more than this as you'll read below. However, he seems to be looking in places that no one cares to look or in the areas no one is interested in working on. If you ever had a team of developers working with you, you'll need a guy like Ken on that team.

Here is what Ken had to say:

dlg and krw
In reverse chronological order:

1) Fix potential corruption of the mbuf(9) pool in the processing of ln_hold/la_hold variables.

2) Quick hack, subsequently reversed to prepare for correct fix, to bge(4) link status handling so that bge issued RTM_IFINFO routing messages when the cable was inserted or removed. This is required to make bge work with new dhclient(8) functionality introduced by Reyk Flöter (reyk@).

3) Tweak scsi removable device processing to lock in media before testing whether the device is ready to be attached. This fixes devices like the Blackberry Pearl which claim not have any media loaded until said media has been locked in.

4) Fix detaching of st(4) devices by looking for devices using stopen instead of the previous and incorrect search for sdopen. Detaching a tape device no longer detaches the sd device with the same unit number.

deraadt, dlg and krw
5) Remove ises device, which was never complete and for which no production hardware was ever released.

6) Fix tun(4) use of M_PREPEND() so that the setting of the mbuf variable to NULL is detected and properly handled.

7) Zero all flags when returning mbuf to pool, not just scary ones.

8) Fix atascsi so devices being attached have their flags and quirks set rather than the adaptor template's flags and quirks. This fixes the problems being reported by people with ATAPI CD's on SATA.

I also did some experimental work cleaning up uses of m_free() vs m_freem() but these are not yet ready to commit.

.... Ken

(n2k8 hackathon summary to be continued)

Once again, I'd like to thank Mark for taking the time to bring this excellent series of articles and interviews to the OpenBSD Journal.

(Comments are closed)

  1. By Anonymous Coward ( on

    What a great reading even for people like me - with very small and basic knowledge of programming technics and technologies of OS.

    OBSD is magic system for server,router,desktop,PDA....

    WWW pages of whole OBSD project are number one too,easy navigation,useful text and displays correctly in all browsers.

  2. By clvrmnky ( on

    "Japan is the only country that I've been to that is so densely populated where people treat each other with dignity and respect"

    I certainly do not want to rain on anyone's parade here, and I'm sure the hackathon was personally very rewarding for many who were there, but one of the hallmarks of a monoculture is that everyone is nice and polite; until they aren't. So, I can't help but offer a comment on this common perception toward Japanese culture.

    However, ask someone of Korean descent living in Japan if they are always treated with dignity and respect. Ask the "untouchable" medieval caste (which is still around in a vestigial form) the same question. This is the country that Joi Ito has suggested is so depressed they /need/ nasty sites like 2_chan (or whatever it is called) in order to slag each-other. Japan is a world leader in per-capita apocalyptic cults and serial killers. They have a word that means working oneself to death!

    Japan is a unique country with its own successes and failures, and as this intro points out their geography and history is part of what makes it so unique.

    So, sorry for the soap-boxing, but no nation is this wonderful. Japan has its own problems, and many of those problems will never be shared or seen by western visitors with money, who typically are the only westerners who get to visit.

    1. By phessler (phessler) on first undead, then not, then undead again.

      > I certainly do not want to rain on anyone's parade here

      So don't. Its some fun trivia, written from a non-native. Of course countries have problems. Every one does, even yours. But you don't need to point out each and every flaw that exists. The OP's just talking about things that he sees, from his perspective.

  3. By MaximB ( on

    I really like those stories! More of this kind on publication on!

    Some times you don't have time to check out what new commit brings new/changed to the OS. A "picture" from a actual developer even more clarifying.

    Thanks for stories and development!

    1. By Anonymous Coward ( on

      > I really like those stories! More of this kind on publication on!

      OK, not a problem, it's quite simple, pay for more hackathons :D

  4. By Anonymous Coward ( on

    "in the areas no one is interesting in working on"

    "in the areas no one is _interested_ in working on"

Latest Articles


Copyright © - Daniel Hartmeier. All rights reserved. Articles and comments are copyright their respective authors, submission implies license to publish on this web site. Contents of the archive prior to as well as images and HTML templates were copied from the fabulous original with Jose's and Jim's kind permission. This journal runs as CGI with httpd(8) on OpenBSD, the source code is BSD licensed. undeadly \Un*dead"ly\, a. Not subject to death; immortal. [Obs.]