NetBSD お遊び日記 (2005年9月)。
$Id: diary-200509.html,v 1.10 2006/01/10 09:23:13 isaki Exp $
≪ 2005年8月 | 2005年10月 ≫

2005/09/01

[MI/net] お勉強ちう...。 イーサネットからパケットを受信する場合、各 NIC のドライバが ether_input() を呼ぶ。 ether_input() はブリッジの場合 bridge_input() を呼ぶ。 bridge_input() は bridge_forward() を呼び、これが出力先の インタフェースを選択する。 選択したインタフェースの if_snd キューにパケットをつないで、 NIC の送信ルーチンがビジーでなければ if_start() を呼び出して パケットを送信させる。 if_start() は rtk0 なら dev/ic/rtl81x9.c::rtk_start()。

[MI/bpf(4)] bpf(4) で遊んでて、 MAC アドレスのソースアドレスを自分で指定すること (偽造) ができないことに気付いた。 manpage を見てもそんなことは出来そうにないので、ソースを読んでたら BIOSHDRCMPLT っていう ioctl を見付けた。 ってこれ manpage に載ってないじゃん...。


2005/09/04

[MI/bpf(4)] てことで超重い腰を上げて send-pr してみる。 まあ、ただのマニュアル問題なんで誰かがさくっと書いてくれるでしょう。 ついでに 7月の終わりに kqueue(2) で遊んでた時に driver(9) に kqfilter の記述がないことにも気付いてたので一緒に send-pr しておく。 PR#31139(bpf) と PR#31140(driver)。 [続き(09/06)]

[MI/commit] 別の typo を調べてて何気なく grep したら sun 系から派生したと思われるカーネルコンフィグ 16個に同じ typo を発見。 sun3/conf/GENERIC でこの typo が入ったのは 1994年 (11年前) なんだけど、 ほんとなのかなあ。 もはや遺跡発掘って感じ。 英語ネイティブじゃないどころか片言も喋れない人が typo の修正をする のもなんか変な話だけど、prototol っていう単語はないよねえ? 不安なんで commit する前にはググったりもしてみてる訳だが。


2005/09/06

[MI/bpf(4)] [元ネタ(09/04)] bpf(4) のは rpaulo さんがさくっと書いてくれた模様。


2005/09/13

[MI/rtk(4)] なんか rtk0 を tcpdump すると (つーか bpf 経由で 受け取ると) パケットの後ろに 4バイトのゴミがついてくるんだけど気のせいかしら...。orz


2005/09/14

[MI/rtk(4)] あー、末尾の 4バイトて ETHER_CRC_LEN かなー。 FreeBSD の if_rl.c だと rl_rxeof() の中で total_len から ETHER_CRC_LEN を引いてるけど、NetBSD は dev/ic/rtl81x9.c の rtk_rxeof() は 自分で ETHER_CRC_LEN を引くのではなく m->m_flags に M_HASFCS ていうフラグを立てておいて、 ether_input() が M_HASFCS があったら ETHER_CRC_LEN を引くっていう 構造になってるっぽい。 で、bpf は rtk_rxeof() から ether_input() が呼ばれる直前にあるので bpf から拾った時だけ CRC がついたパケットが拾えちゃうのか。 むう、バグだよね? [続き (9/19)]


2005/09/17

[MI/tmpfs] メール消化中。9/11、tmpfs が commit された模様。 使ってみようかな。 つーか他の SoC のはどうなったんだ?


2005/09/19

[MI/bpf(4)] [元ネタ (9/14)] とりあえずつたないどころかおぼつかない英語で send-pr しておく。 現象自体は簡単なんだけど、誰かちゃんと解読してくれるか不安。 手もとで動いてるパッチはあるからパッチつけとけば英語以上の 公用語にはなるんだろうけど、いまいち自信がないのでつけなかった。 てことでそっち方面のエロい人よろ。 PR#31348[続き(2006/01/10)]


2005/09/25

[MI/commit] [元ネタ (3/26)] 2週間くらい前にとあるガイジンさんから、braceexpand オプションは OpenBSD で判断するん違うて pdksh で判断するんとちゃうか? (意訳; 偽関西弁) というメールをもらって、たまたま前回の commit の時に OK って 言っちゃったばっかりに今回も Cc: されてた sjg さんも含めて何通か メールやりとりしてたのを、ようやく commit する。

[MI/commit] 数ヵ月前に kern/vnode_if.src に typo を 見つけてたんだけど、いまいち自信がなくて放置してた。 やっと重い腰を上げて、念のため wiz さんに確認してから commit。


≪ 2005年8月 | 2005年10月 ≫
井崎のホームページへ戻る
isaki@NetBSD.org