[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[FDclone-users:00700] Re: Linux kernel のバージョン管理
- Subject: [FDclone-users:00700] Re: Linux kernel のバージョン管理
- From: <hma@syd.odn.ne.jp>
- Date: Mon, 9 Apr 2007 13:59:56 GMT
濱崎です。
<20070405135448.1452640C4D5@yuka.unixusers.net>の記事において
shirai@unixusers.netさんは書きました。
>> http://git.kernel.org/ も見てみましたが、この interface は
>> 直観的に判りづらく、目当てのものが探し出しにくいんじゃないか
>> と思いますが如何でしょう。
CVS の方が、使い易い Web インタフェースに恵まれている
というのはその通りだと思います。
あるファイルのバージョン間の差分を見るのが簡単ですね。
>> これは product が巨大になればなるほど有用で、Linux kernel
>> など既に何十 MB もあるのですから、あるファイルのここ数カ月の
>> 変更を追うのに全部の tar ball を拾って来なくてはならない現状
>> は非常に厄介です。
git でも、そこまでしなくてもあるファイルの変更履歴を追うことはできますよ。
私は、下の変更を見つけるのにカーネルの tarball のダウンロードは
しなくて済みました。
>> > kernel 内の _syscall 定義が消えたのは、この commit のようです。
>> > http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=
>> > f5738ceed46782aea7663d62cb6398eb05fc4ce0
>>
>> コメントにある agree されたいきさつが気になるんですが、ど
>> うしてそう安易に容認されてしまったんでしょうか。
>>
>> かつては man page で _syscall5 の使い方を推奨しておいて、
>> しかも lseek64() が出て来るまでは _syscall5 macro を使わない
>> と 64bit access は出来なかった訳です。
man page の記載については、手元にある llseek(2) には
_syscall5(int, _llseek, unsigned int, fd, unsigned long, hi,
unsigned long, lo, loff_t *, res, unsigned int, wh)
/* Using syscall(2) may be preferable; see intro(2) */
syscall(2) を使った方がいいよ、と書いてあります。
私から見ると、しらいさんの運が悪かった(たまたま _syscall5 を推奨
するようなバージョンの man page を当たることになってしまった)としか
言いようがないです。
>> ad-hoc だとは言え、一時期でもそういう interface を使わせて
>> しまったのだったら、それを真に受けた実装が世の中に転がってい
>> るという発想はないんでしょうかね。
いや、そうではなくて、敢えて切り捨てたんではないでしょうか。
ユーザー空間で動くアプリで、__KERNEL__ を定義してまで
_syscall5 を使用するというのは、なんというか、不自然です。
私は、上のような記述がある man page を見たので、そう思っていました。
私は、
・ダメだった、間違えたと思ったらその路線は捨てて、別の道に活路を見出す、
・負の遺産はできる限り引きずらない
というのが、Linux の良い所だと思っています。
さてさて、FDclone の話もしないと、完全にオフトピックのメールに
なってしまいますので。。。
00695 のパッチで、
__KERNEL__ の使用をやめ、 _syscall5() のコピーを定義して、それを使う
ようになっているので、Linux カーネルのバージョンアップによる影響を減らす
ことはできていると思います。
2.6.19、 2.6.20 での検証については、私の所では未だ目処が立っていません。
2.6.19 以降の Debian カーネルソースパッケージが出てくるまで、
カーネルのバージョンアップを控えているためです。
#Debian の 4.0 (カーネル 2.6.18 を使用)がつい先日リリースされたばかりで、
#リリース準備の間、Debian カーネルメンテナチームは
#2.6.19, 2.6.20 のパッケージング作業を行っていなかったようです。
FC6 の走っているマシンも探しているのですが、いままでの心当たりは
すべてハズレでした。
--------------------------------------------------
濱崎 健 E-mail: hma@syd.odn.ne.jp