verify_area 手続き
持ってるピアソンの実習 Linux カーネルに記述あり。曰く
そのアドレスがユーザの仮想アドレス空間内で有効かどうかを確認する。
との事。なるほど verify ですか。ちなみに詳解 Linux カーネルだと 10.4.1 なあたりになるのでしょうか。ちなみに access_ok マクロがどんな事をしてるのか、な疑似コードが出てるので以下に引用。
int access_ok(const void * addr, unsigned long size) { unsigned long a = (unsigned long) addr; if (a + size < a || a + size > current_thread_info()->addr_limit.seg) return 0; retnrn 1; }
verify_area は基本的に上記と同様の確認をしてる、って書いてあるけど本当かなぁ。
Documentation/x86/exception-tables.txt にプロトタイプな記述があるけどこれ何だろ。あと 2.6.35 なツリーを grep してるんですが verify_area の定義が無いな。
あ、このバージョンだと完全に置き代えられちゃってるのか。