2018-12-25

Linus Torvalds様、ユーザースペースの互換性を壊した開発者に強い態度をお示しになる

Linuxカーネル4.18から、userns mountに対して暗黙にSB_I_NODEVを設定するようになったために、既存のsystemdのnspawn実装が壊れた。

以下が問題のパッチだ。

https://github.com/torvalds/linux/commit/55956b59df336f6738da916dbb520b6e37df9fbd

Linuxカーネルにおいては、ユーザースペースの挙動は変えないという強い下位互換保障がある。以前のバージョンのカーネルで動いていたユーザースペースのコードが新しいバージョンのカーネルで動かなくなった場合、それは理由が何であれ新しいバージョンのカーネルのバグであるとみなされる。たとえそれが、ドキュメント化していない明示的に保証されているわけではない昔のカーネルの暗黙の挙動であれ、その挙動に依存している既存のユーザースペースのコードがあるのであれば、その挙動を壊すのはカーネルのバグであって、ユーザースペースのバグではない。

このパッチを書いたEric W. Biedermanは、そもそもドキュメント化されていない挙動であるのでこれはカーネルのバグではなくてユーザースペースのバグであると主張した。

このようなユーザースペースに悪影響を与える下位互換性を破壊する変更をして、しかも悪びれないLinuxカーネル開発者は、従来ならばLinus Torvalds直々に大文字かつFから始まる4文字言葉で罵倒されるのが常であった。

しかし、最近Linusは改心し、人の気持ちを勉強し、

本の虫: Linus、今までの行いを謝罪し一時的にカーネルメンテナーの立場を退いて人の気持ちを勉強してくると発言

その結果、人を叱るときにも以前のような罵倒はしなくなった。

本の虫: 帰ってきたきれいなリーナス・トーバルズ、無作法な開発者をたしなめる

さて、今回のLinusはどうであろうか。

LKML: Linus Torvalds: Re: [BREAKAGE] Since 4.18, kernel sets SB_I_NODEV implicitly on userns mounts, breaking systemd-nspawn

エリック、これは到底受け入れられんぞ。

On Sat, Dec 22, 2018 at 12:58 PM Gabriel C <nix.or.die@gmail.com> wrote:

>
> これに関心がある人をCCに追加しておいた。

サンクス

> > この問題についてlkmlに送られたメール
> >
> > https://lkml.org/lkml/2018/7/5/742
> >
> > これもリンクしておく。最後を引用
> >
> > そもそもデバイスノードへのmknodがデバイスノードをオープンできる保障なんてどこにもない。
> > リグレを起こしたアプリケーションはそもそも元から壊れていたものだ。
> > 俺らカーネルがバグ互換を維持しないというわけでもないが、俺らはバグ互換なバグについて明白にドキュメント化すべきだ。

ああ、こいつは完全にゴミだ。

俺達カーネルの世界ではな、明白なルールってものがあるんだよ。もし何かが既存の仕組みを壊したら、それはアプリケーションが壊れたのでは(以下大文字)絶対にない。

カーネルが壊れているのだ。

ここにグレイエリアってものは一切ない。エリック、お前の行動は一線を越えた。そして俺らは明らかに6月にまで遡れるリグレッションを抱えていて、しかもお前の正しくない態度のせいで俺にまでその存在が報告されてこなかった。

エリック、俺はこれを1000%明白にしておくがな、ユーザースペースにバグはない。もしそれが動いていたのであれば、ユーザースペースは明白に正しいことをしている。お前が何度もユーザースペースのバグだと主張した事実は深刻な信頼の毀損だ。お前はこの問題について(以下大文字)知っていたはずだ。

いやマジで。言い訳になることはなにもねぇぞ。

このコミットは俺のツリーからrevertしておいた。そして、俺はお前がこの問題を根本的に理解して飲み込んだのが明らかになるまでお前からのプルリクは一切受け付けない。

なんでこの問題が俺にまで報告が上がってくるのにこんなに時間がかかったんだ?

リーナス

まず一見して罵倒語を使っていないのがわかる。にわかに母親を強姦した者呼ばわりすることもないし、男性器を吸引しろと迫ることもない。

そして最後のセリフがよい。かつてのリーナスは、このようなLinuxカーネル開発のルールを破ったものに対し、「なんでこの俺がいまさらこんな初歩的な問題についていちいち注意してやらなければならないのだ」と書いたものだった。これは典型的なコミュニケーションロスを招きやすい上司の言動である。このような人間にたいしては問題の報告を躊躇してしまう。今回のメールでは、「なんで自分への問題報告がこんなに遅れたのか」と書いている。これは自分への報告が遅れたことに怒っているのであって、怒りの矛先が違う。

Linusは明らかに変わった。

2018-12-08

経済学上最適な行動は時として奇妙に見えるという話

極めて興味深い、経済学上合理的で最適な戦略は、時として奇妙に見える。例えば以下の例だ。

Amazonから注文もしていない商品が届き続けた件 | ハーバービジネスオンライン

まとめると以下のようになる。

アマゾンから注文していない雑多な商品が届くようになった。クレジットカードの不正利用ではないし、アマゾンの購入履歴にも存在しない。泥酔したり精神に不調をきたして記憶を失う習慣もない。そもそも自分から購入したいと思うものではない。一度だけ送り状が入っていたので、ギフトであることが判明した。しかしそのようなギフトを送る知人に心当たりはない。アマゾンに問い合わせたところ、ギフトであろうとの回答が来た。ギフトの送り主の個人情報は開示できないとのことであった。

商品の中に、以前マーケットプレイスで注文した商品によく似た商品が混ざっていることに気がついた。もしかしたら、以前利用したマーケットプレイスの出品者が送りつけているのかも知れない。しかしそれは、自分の出品を自分で購入していることになる。自分から自分にカネを動かしているのだから損はないかもしれないが、アマゾンの手数料と諸経費そして発送料の分は損をしている。なぜなのか。

ここでいくつか仮説が述べられている。見かけ上の売上を上げることによりアマゾンのランキング工作をしたいという可能性もあるが、一番合理的で納得の行く説は、商品の廃棄だ。

アマゾンのマーケットプレイスではアマゾンの倉庫に商品を保管できる。これには定期的な保管料がかかる。そのため、しばらく売れない商品は破棄し、これ以上保管料による損失がかからないようにする。これは合理的だ。保管を維持して商品本体の売上よりも保管料が高くなるのであれば、商品自体を破棄したほうがよい。

商品の破棄方法としては、自分自身へ返送して自分で廃棄する方法と、所有権の放棄してアマゾンに廃棄してもらう方法がある。しかしこれはどちらもコストがかかる。

自分自身へ返送する場合は、アマゾンに支払う返送料と宅配業者の送料がかかるほか、受け取りにコストがかかり、さらに何らかの方法で廃棄しなければならない。

所有権を放棄してアマゾンに廃棄してもらう方法もあるのだが、こちらも料金がかかる。

自分で自分の出品を購入して誰かにギフトとして送りつける場合、自分で自分に代金を支払うので、代金の大部分は自分に帰ってくる。かかるコストはアマゾンの手数料とギフトの送り先への送料だが、これが廃棄のコストを下回る場合、廃棄するよりギフトとして誰かに送りつけたほうが結果的に安くなる。

ではどこにギフトとして送りつけるかだが、すでに自分から商品を購入した人の住所に送りつけるのがよい。

これは違法だろうか。ギフトを送りつけられたことによって損害を被った場合は民事訴訟を起こすことができるだろうが、大抵の商品は損害額が小さすぎるために訴訟をする価値がない。まずアマゾンに個人情報の開示申立の裁判をし、その後にギフトの送り主と裁判をすることになるが、これだけで100万円単位の訴訟費用がかかるし、総額2万円ぐらいのゴミ箱やらシャツやらプロジェクターといった雑多で安価な商品を送りつけられたことによる損害に対する補償を求めるにはあまりにもコストがかかりすぎるので、訴えられる心配はまずない。実際、リンク先の記事の筆者も認める通り、このギフトによる実害は発生していない。

経済学とは不思議だ。インセンティブに従い、極めて合理的で最適な戦略を取った結果が、ハタから見ると奇妙に思える。

2018-12-03

三十路を超えたので体について考える

三十路を超えてからというもの、自分の体の無視できぬ変化について意識せずにはいられなくなった。

私は明らかに10年前より顔が変わった。10年前も、5年前より顔が変わったと思っていたのだが、その頃に思っていたよりもさらに顔が変わっている。

嬉しい変化としてはヒゲが伸びるようになったことがある。20代の頃、私は口ひげは数cmほど伸びるものの、あごひげはまばらにしか生えない体質だった。ヒゲを伸ばしたとは思っていたものの、あごひげは伸ばしてもみっともないので剃っていた。今、あごひげも少し伸びるようになってきた。それも、下唇の下は中心から一本の線を描くように伸び、両側は伸びないという生え方をしているので、気に入っている。

一番の懸念事項としては、体重が増え続けているということだ。これはよくわからない。というのも、それほど食べてはいないはずなのだ。特に最近は1日一食程度にまで食べる量を減らしているのだが、体重は減らないどころか増えていく。私は酒を飲む習慣はないし、したがって酒のつまみも食べない。ラーメンも食べない。野菜は好きな方だ。なぜこんなにも体重が増えていくのだろうか。

運動はしている。毎週ボルダリングをしているし、ジョギングもしている。ボルダリングによって筋肉量は数年前より相当上がっている実感があるのだが、体重も増えているために最近はボルダリングの腕も落ちている。ジョギングも10kmぐらい走れるのだが、特に体重の減少にはつながっているように思えない。

視力も落ちてきている。普段はメガネをしているので気が付きにくいのだが、数年に一度メガネを買い換える際に、常に度を一段階上げる必要があることに気がつくのだ。

とはいえ、まだ私は恵まれている方だろう。自覚できる肉体の変化で健康的に悪いことといえば、体重の増加と視力の低下ぐらいなのだから。今のところ、大した病気にはかかっていないし、精神的に不安定でもなく、認知能力の低下もない。

認知能力の低下というのは最近特に意識する問題だ。というのも、私の父親は明らかに認知能力が低下しているからだ。今の父親にとって、世上のあらゆる問題は中国人が原因だということになっている。風が吹けば桶屋が儲かる程度の理屈もなく、あらゆる問題は中国人のせいであるらしい。私の知っているかつての父親はそういう人間ではなかった。なので、上京して以来数年ぶりに帰郷して目の当たりにした父親の激変ぶりに戸惑っている。

父親の年齢はちょうど還暦を迎えた60歳。まだ60歳でしかないのだ。

思えば思い当たる節はある。父親は50歳ぐらいの頃、急に勤め先を退職したいと言い出した。母親は定年まで勤め上げれば給料や退職金がだいぶ違ってくるのでもったいないと言ったが、父親はもう能力的に働けないと主張していた。

[削除済み]

父親を見ると私の将来について一抹の不安を覚える。私も知的能力が必要とされる仕事をしているが、果たしていつまで知的能力は維持できるのだろうか。現在、私の知的能力に自覚できる低下はない。それどころか、英語の読解力は過去最高に上がっている。父親が50歳を超えて自身の知的能力の低下に気がついたのだとしたら、私には20年弱の時間しか残されていないことになる。