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