*参照元 [#v9e0a2ea]
#backlinks

*説明 [#mdda2c86]
-パス: 複数あり
--CONFIG_X86_32 有効: [[linux-4.4.1/arch/x86/include/asm/pgtable_32.h]]
--CONFIG_X86_32 無効: [[linux-4.4.1/arch/x86/include/asm/pgtable_64.h]]
--[[linux-4.4.1/CONFIG_X86_32]]

-FIXME: これは何?
--説明


**引数 [#m7de7396]
-pmd_t *dir
--
--[[linux-4.4.1/pmd_t]]
unsigned long address
--


**返り値 [#f73f71a8]
-pte_t *
--
--[[linux-4.4.1/pte_t]]


**参考 [#z7af2061]


*実装 [#xa8cb278]

**CONFIG_X86_32 有効: arch/x86/include/asm/pgtable_32.h [#s0c3ff5c]
 #if defined(CONFIG_HIGHPTE)
-
--[[linux-4.4.1/CONFIG_HIGHPTE]]

 #define pte_offset_map(dir, address)                                    \
         ((pte_t *)kmap_atomic(pmd_page(*(dir))) +               \
          pte_index((address)))
-
--[[linux-4.4.1/kmap_atomic()]]
--[[linux-4.4.1/pmd_page()]]
--[[linux-4.4.1/pte_index()]]

 ...
 #else
 #define pte_offset_map(dir, address)                                    \
         ((pte_t *)page_address(pmd_page(*(dir))) + pte_index((address)))
-
--[[linux-4.4.1/page_address()]]
--[[linux-4.4.1/pmd_page()]]
--[[linux-4.4.1/pte_index()]]

 ...
 #endif


**CONFIG_X86_32 無効: arch/x86/include/asm/pgtable_64.h [#t43dd34f]
 /* x86-64 always has all page tables mapped. */
 #define pte_offset_map(dir, address) pte_offset_kernel((dir), (address))
-
--[[linux-4.4.1/pte_offset_kernel()]]


*コメント [#l283962c]

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS