linux-2.6.33/PageUptodate()
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
*参照元 [#je6472a2]
#backlinks
*説明 [#i87cc72c]
-パス: [[linux-2.6.33/include/linux/page-flags.h]]
-PG_uptodate ビットのテスト
--指定されたページのフラグ(flags メンバ)に
PG_uptodate ビットが立っているかテストする。
--このフラグは他の CPU から更新されている場合があるため、
読み込みメモリバリアが必要。
**引数 [#m2468e41]
-struct page *page
--フラグを検査するページ構造体
--[[linux-2.6.33/page]]
**返り値 [#mb524d27]
-int(おそらく)
--型、意味は test_bit() に準じる。
--型はおそらく int。意味はビットがセットされていれば 0 以...
**参考 [#p0c8b4f5]
-ページの属性フラグ(PG_xxxx)
--[[linux-2.6.33/pageflags]]
-この関数の片割れ(セット関数)
--[[linux-2.6.33/SetPageUptodate()]]
*実装 [#ra9382e1]
static inline int PageUptodate(struct page *page)
{
int ret = test_bit(PG_uptodate, &(page)->flags);
-ビット位置にビットがあるかテストする。
--[[linux-2.6.33/test_bit()]]
/*
* Must ensure that the data we read out of the page is...
* _after_ we've loaded page->flags to check for PageUp...
* We can skip the barrier if the page is not uptodate,...
* we wouldn't be reading anything from it.
*
* See SetPageUptodate() for the other side of the story.
*/
if (ret)
smp_rmb();
-読み込みメモリバリア。
--[[linux-2.6.33/smp_rmb()]]
return ret;
}
*コメント [#xf59aa5c]
終了行:
*参照元 [#je6472a2]
#backlinks
*説明 [#i87cc72c]
-パス: [[linux-2.6.33/include/linux/page-flags.h]]
-PG_uptodate ビットのテスト
--指定されたページのフラグ(flags メンバ)に
PG_uptodate ビットが立っているかテストする。
--このフラグは他の CPU から更新されている場合があるため、
読み込みメモリバリアが必要。
**引数 [#m2468e41]
-struct page *page
--フラグを検査するページ構造体
--[[linux-2.6.33/page]]
**返り値 [#mb524d27]
-int(おそらく)
--型、意味は test_bit() に準じる。
--型はおそらく int。意味はビットがセットされていれば 0 以...
**参考 [#p0c8b4f5]
-ページの属性フラグ(PG_xxxx)
--[[linux-2.6.33/pageflags]]
-この関数の片割れ(セット関数)
--[[linux-2.6.33/SetPageUptodate()]]
*実装 [#ra9382e1]
static inline int PageUptodate(struct page *page)
{
int ret = test_bit(PG_uptodate, &(page)->flags);
-ビット位置にビットがあるかテストする。
--[[linux-2.6.33/test_bit()]]
/*
* Must ensure that the data we read out of the page is...
* _after_ we've loaded page->flags to check for PageUp...
* We can skip the barrier if the page is not uptodate,...
* we wouldn't be reading anything from it.
*
* See SetPageUptodate() for the other side of the story.
*/
if (ret)
smp_rmb();
-読み込みメモリバリア。
--[[linux-2.6.33/smp_rmb()]]
return ret;
}
*コメント [#xf59aa5c]
ページ名: