Messages in this thread Patch in this message | | | From | "Kirill A. Shutemov" <> | Subject | [PATCHv2 3/9] mm: introduce api for split page table lock for PMD level | Date | Mon, 16 Sep 2013 14:25:34 +0300 |
| |
Basic api, backed by mm->page_table_lock for now. Actual implementation will be added later.
Signed-off-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com> Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com> --- include/linux/mm.h | 13 +++++++++++++ 1 file changed, 13 insertions(+)
diff --git a/include/linux/mm.h b/include/linux/mm.h index 6cf8ddb..e3481c6 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -1294,6 +1294,19 @@ static inline void pgtable_page_dtor(struct page *page) ((unlikely(pmd_none(*(pmd))) && __pte_alloc_kernel(pmd, address))? \ NULL: pte_offset_kernel(pmd, address)) +static inline spinlock_t *pmd_lockptr(struct mm_struct *mm, pmd_t *pmd) +{ + return &mm->page_table_lock; +} + + +static inline spinlock_t *pmd_lock(struct mm_struct *mm, pmd_t *pmd) +{ + spinlock_t *ptl = pmd_lockptr(mm, pmd); + spin_lock(ptl); + return ptl; +} + extern void free_area_init(unsigned long * zones_size); extern void free_area_init_node(int nid, unsigned long * zones_size, unsigned long zone_start_pfn, unsigned long *zholes_size); -- 1.8.4.rc3
| |