2011-06-01から1ヶ月間の記事一覧

新しいディスクにGentoo Linuxを引っ越す

sdb1, sdb2, sdb3にGentoo Linuxがインストールされてて、sda1, sda2, sda3へ引っ越す場合。 init 1 mount /dev/sdb1 /boot fdisk /dev/sda mkfs.ext2 /dev/sda1 mkswap /dev/sda2 mkfs.ext4 /dev/sda3 mount /dev/sda3 /mnt mkdir /mnt/boot mount /dev/sda…

新しいディスクにZFS RootなFreeBSDを引っ越す

RootOnZFS/GPTZFSBoot/Mirror - FreeBSD Wikiこのへんを参考にada0へzrootを(ミラーは無しで)作っている前提。 gpart create -s gpt ada1 gpart add -b 34 -s 64k -t freebsd-boot ada1 gpart add -s 4G -t freebsd-swap -l swap1 ada1 gpart add -t freeb…

USB-stick bootなChromeOSはやたらとパーティーションが多いと聞いて

ちょっと簡単にパーティーション割りを見てみた。 どんな感じに使ってるかは未だ確かめてない。VMイメージでも同じかどうかも未確認。取り敢えず第一報として。イメージはこのへんから。 syuu@localhost Downloads % sudo losetup -f ./ChromeOS-Vanilla-0.1…

igb(4)を理解する為にデータシートを読む(RSSハッシュテーブルの初期化と書き換え)

前の記事と同じくigb_initialize_receive_unitsをみると、RETAというところへ書き込んでいる: union igb_reta { u32 dword; u8 bytes[4]; } reta; /* Warning FM follows */ for (int i = 0; i < 128; i++) { reta.bytes[i & 3] = (i % adapter->num_queues…

igb(4)を理解する為にデータシートを読む(RSSハッシュ関数用のシード設定)

igb_initialize_receive_unitsをみると arc4rand(&random, sizeof(random), 0); でランダムな値を取得してきて for (int i = 0; i < 10; i++) E1000_WRITE_REG_ARRAY(hw, E1000_RSSRK(0), i, random[i]); で書き込んでいる。 データシートを読むとRSSRKはRSS…

igb(4)を理解する為にデータシートを読む(RSSハッシュキーの取り出し)

まずはこのフローを見てもらうと分かりやすいのだけれど、FreeBSDのイーサーネットドライバでは割り込みハンドラ(em_irq_fast)からtaskqueue_enqueueを呼んでカーネルスレッドを起こして、このスレッドが実際にパケットを取り出しに行く(em_irq_fast)。フロ…

Gentooでvirt-managerでbridge

Gentooのvirt-managerとかlibvirtって今のところmaskされてるんだけど、なんでかというといくつかの機能がまだうまく動かないからっぽい。例えば、localhost(QEMU)の「詳細」を表示して「ネットワークインタフェース」を選ぶと「libvirt接続はインターフェー…