Linuxのファイルシステムを詳解します

kernel

kernel 2.6.20-rc1 の考察(20061213更新)

Linusのメール

Date: Wed, 13 Dec 2006 18:06:52 -0800 (PST)
From: Linus Torvalds <torvalds @ osdl.org>
Subject: Linux 2.6.20-rc1

Ok, the two-week merge period is over, and -rc1
is out there.

I'm _really_ hoping that we can keep the 2.6.20
release calmer and without any of the
dragging-out-due-to-core-changes that we've had
lately. We didn't actually merge any really core
changes here, with the biggest conceptual one
being the "work_struct" split into regular work
and "delayed" work, so I'm hoping we can really
end up with an easy 2.6.20 release.

Some of the commits there are pretty big patches,
but more than a couple of them are due to fairly
straightforward search-and-replace things (like
a largely scripted removal of unnecessary casts
of the return value of "kmalloc()", for example,
or the switch to "ktermios" for the tty layer, or
the introduction of "struct path" in the VFS
layer instead of keeping the f_{dentry,vfsmnt}
entries separate, or indeed the removal of
SLAB_xxx constant names in favour of the standard
GFP_xxx ones).

So while the patch itself isn't actually all that
much smaller than usual, at least my personal gut
feel is that the actual changes are not as
intrusive, just in some cases have big diffs.

But both the diffstat and the shortlog are still
too big to fit in the kernel mailing list limits,
so you'll just have to take my word for it.
Or get the git repo, and do your own delving
into things with
git log v2.6.19..v2.6.20-rc1 | git shortlog

There _are_ a few areas of note:

- the aforementioned "workqueue" changes (where
 we still have some work to do to finalize the
 proper actions on all architectures: it's
 being somewhat discussed on the arch mailing
 lists, hopefully we'll have it all resolved
 by -rc2, and it doesn't really worry me)

- lockless page cache (RCU lookups of radix trees)

- kvm driver for all those crazy virtualization
 people to play with

- networking updates (DCCP, address-family
 agnostic connection tracking in netfilter,
 sparse byte order annotations, yadda yadda)

- HID layer separated out of the USB stuff
 (bluetooth apparently wants the HID stuff too)

- tons and tons of driver (ftape removal, ATA,
 pcmcia, i2c, infiniband, dvb, networking..)
 and architecture updates (arm, mips, powerpc, sh)

and probably some I just forgot about entirely.

           Linus

2週間がたちました。穏やかに過ごしたいため、
中心が変更されると、それにひきづられるて周りも
多大な変更になるためworkqueueを制定します。

いくつかのpatchは大きすぎるため、精査してから
送ってくれると助かります。例は以下のとおり
  • kmallocの戻り値の不要なキャストの除去
  • ttyをターミナル層にする
  • path経路を辿るときVFS層のdentry,vfsmntの関係を切り離さない
  • SLAB_xxxの単純化(命名規則の統一)
  • GFP_xxxの標準化
そうしてくれると、いつもより小さい変更ですむ。
個人的(Linus本人)としては、小さい変更と、大きい変更を
切り分けて欲しい。実は小さい変更でも大きな変更と
勘違いしてpatchを見てしまうから疲れてしまうよ。。
diffstatとshortlogはLKMLに流すには大きすぎるので、
上記の事を考慮した上でpatchを送って欲しい。
ちなみに今回の変更はgitlogで見てくれ。

git log v2.6.19..v2.6.20-rc1 | git shortlog

重要事項:
  • workqueueをみんなが守ってくれると、私もいろいろな
 patchについて詳しく見ることができます。
 また、各LKMLで議論されてきているので、-rc2では
 私の悩みも減るかと思います。
  • lock無しのpage chache
  • 仮想化kvm driver
  • ネットワーク最新化(DCCPとかなんとか)
  • USB層で管理していたものをHID層へ
 (bluetoothとか)
  • たくさんのdriverのftape除去(pcmcia, i2c, infiniband, dvb, net)
 たくさんのarch系の更新(arm, mips, powerpc, sh)
タグ

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

関連ソフト/文書

Firefox3 Meter  Use OpenOffice.org

管理人/副管理人のみ編集できます