File tree 1 file changed +4
-0
lines changed 1 file changed +4
-0
lines changed Original file line number Diff line number Diff line change @@ -826,6 +826,7 @@ void xen_mm_pin_all(void)
826
826
{
827
827
struct page *page;
828
828
829
+ spin_lock(&init_mm.page_table_lock);
829
830
spin_lock(&pgd_lock);
830
831
831
832
list_for_each_entry(page, &pgd_list, lru) {
@@ -836,6 +837,7 @@ void xen_mm_pin_all(void)
836
837
}
837
838
838
839
spin_unlock(&pgd_lock);
840
+ spin_unlock(&init_mm.page_table_lock);
839
841
}
840
842
841
843
static void __init xen_mark_pinned(struct mm_struct *mm, struct page *page,
@@ -935,6 +937,7 @@ void xen_mm_unpin_all(void)
935
937
{
936
938
struct page *page;
937
939
940
+ spin_lock(&init_mm.page_table_lock);
938
941
spin_lock(&pgd_lock);
939
942
940
943
list_for_each_entry(page, &pgd_list, lru) {
@@ -946,6 +949,7 @@ void xen_mm_unpin_all(void)
946
949
}
947
950
948
951
spin_unlock(&pgd_lock);
952
+ spin_unlock(&init_mm.page_table_lock);
949
953
}
950
954
951
955
static void xen_enter_mmap(struct mm_struct *mm)
You can’t perform that action at this time.
0 commit comments