| 予定 | TODO | Link |
|---|---|---|
|
|
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||
11時ごろオールワンのカードが配達された。 昨日のダイレクトのカードと一緒に送ればいいのに効率が悪い。 UFJ 由来なのに赤くなくて青いんだな。 ふむ、 新カードを利用した時点で旧カードは利用不可になる のか。 はさみを入れて破棄するのはその後でいいか。
日記書き(RTCまとめ)。
14時前に水道復活。 自分で気付いた直後に大家さんが確認にきた。 なにやらタンクに問題があったらしい。 断水期間が思ったより長くなって 半日ほどながら実際食器洗いやトイレに困ったわ。
mythTV から ACPI Wakeup 。 うお、スクリプト名が acpi-alarm で自作のものと同名だわ。 私は rtc alarm 対応/移行で wakealarm に変更しておいた。 うむ、やはり echo 0 でまず初期化してるな。
洗濯、買物*2、未読雑誌消化。
休日で静養していても頭痛はする。 うぅむ。
あらかじめ湯を張っておいたので、 目減りはするけどそれで体を洗い、 入湯。
確認に外へ出てみたら張り紙が更新されていた。 どこが故障したというのだろう。 明日の午前中は水道水抜きか。 飲み水はペットボトルのものがあるし、 台所の洗い物等は室外洗濯機用は問題ないようなので なんとかならなくはないけど、トイレが困るよな。
/var/log/kern.log を見ると
probe of 00:06: rtc core: failed with error -16
つまり EBUSY (デバイスもしくはリソースがビジー状態です) か。
うーん、もしかして rtc と rtc-cmos は排他的な代物なのか。
うむ、正解。modprobe -r rtc; modprobe rtc-cmos すると
/sys/class/rtc/rtc0/ が出現した。
あれ、、、/dev/rtc* がない。
RTC_INTF_DEV を選択しなかったからか。
追加で RTC_INTF_PROC も選択しておいて、カーネルを再構築。
構築中に Documentation/rtc.txt を読んでみる。
あぁ、rtc は PC (x86) 向けであまり汎用性がなかったのね。
それで新しい枠組みとして RTC class が用意されたわけか。
新構成で起動。。。 あれ、/etc/modules で rtc-cmos を書いたのに rtc がロードされている。 何かマジカル(/lib/modules/2.6.22/modules.alias あたり?)な仕組みが 動いてるんだろう。 要は rtc を構成から外せばいいんだろうが、今はそこまでやれない。 /etc/modules から rtc-cmos を外し、 代わりに /etc/modprobe.d/local へ install rtc /sbin/modprobe -i rtc-cmos || /sbin/modprobe -i rtc を追加。 これで modprobe rtc で rtc-cmos が優先的にロードされるようになった。 さらに互換性のため /dev/rtc を /dev/rtc0 に symlink するルール KERNEL=="rtc0", SYMLINK+="rtc" を /etc/udev/rules.d/z99_local.rules に追加。
これでようやく /sys/class/rtc/rtc0/wakealarm が現われた。
うぅむ、どうやら単純に /proc/acpi/alarm を置き換えるものではないらしい。
drivers/rtc/rtc-sysfs.c を覗いてみたところ、
入力形式は acpi/alarm と違い日付ではなく
1970-01-01 00:00:00 UTC からの経過秒らしい。
GNU拡張っぽいけど date +"%s" -d "$timestr" -u で対応。
そして一旦未来時刻に合わせると再設定するのに
一度過去時刻でクリアする必要がある。
要は echo 0 >/path/to/wakealarm でいいんだけど。
地域時間を指定($timestr)しつつ、
それを UTC で評価(-u)する必要もあったり
妙に使い勝手が悪いな。
cat /proc/driver/rtc で確認すると
alrm_time が UTC で表示されるのはいいとして
alrm_date の年月が ** で表示されてしまってる。
rtc-proc.c を見た限りでは out of range みたい。
うーん、ハードウェアの制限なんだろうか。
ん、ALSA の snd-rtctimer が旧 RTC に依存してるのか。
たぶんそれほど困らないだろう。
ありゃ、dev/rtc/max-user-freq 項目はないのか。
ただ実は /dev/rtc を利用するアプリケーションって今時ないんだろうか。
tvtime も使ってないように見えるし。
今週から参加された新規メンバと打ち合わせ。
あぁ、この一覧はこう見ればいいのか。
パターンが網羅されているかという別の問題はありながら、
評価の仕方はなんとなく分かった。
一番分かっている人は別件で今月頭から大忙しで顔出ししてもらえないしな。
調査/検討結果を粗く取りまとめておく。
DB + SQL を前提にすれば
DAO を大きく Query と Update に分けても良いかもしれない。。。
うーん、ファイル(YAML)だとしても悪くはないか。
先行予約していたのは知っていたがその必要ないと思っていた。
案の定、店頭に並んでいた特典付きを無事ゲット。
ドラマCDが出たりとそれなりに人気はあるようだけど、
そこまで熱烈な雰囲気は感じないからな。
しかしクレイトンマスコット付きで1,500円はずいぶんと高くないか。
値段を気にせずレジまで持っていってちょっと驚いたよ。
結論からいくと対応は /etc/udev/rules.d/025_libgphoto2.rules の変更で済ませた。 自動生成されるファイルなので本来は /usr/lib/libgphoto2/print-camera-list を修正すべきではある。 実は変更内容自体も udev.rules の類似ルールを真似ただけなので 意味は良く分かっていない。 未だに udev 名(用語)と sysfs 名(階層)が対応付けられないわ。
# 変更前
SUBSYSTEM!="usb_device", GOTO="libgphoto2_rules_end"
ACTION!="add", GOTO="libgphoto2_rules_end"
# 変更後
SUBSYSTEM!="usb", GOTO="libgphoto2_rules_end"
ENV{DEVTYPE}!="usb_device", GOTO="libgphoto2_rules_end"
ACTION!="add", GOTO="libgphoto2_rules_end"
うぅむ、予想以上に両者の実装が異なっているな。 しかもゴミデータも残ってるっぽいし、 リファクタリングするにしても大掛かりになりそうな。
ふと確認してみたら 登録パスワードを変更していないことが原因で ウィルススキャンが認証に失敗して動いていなかった。 通知なしなのか。
微妙に酔いが残っている、かも。
ケータイを携帯し忘れた。
む、やはり腹痛でお休みですか。
午後は愛宕で打ち合わせ。
これらを処理順だけでも合わせるとなると 違いがありすぎてどちらかがほぼ作り直しになるような。
おや、急性胃腸炎ですか。 診断書で1週間程度の静養を勧められているんだったら 今は無理せずお休みしときなさいや。