File tree Expand file tree Collapse file tree 1 file changed +4
-0
lines changed Expand file tree Collapse file tree 1 file changed +4
-0
lines changed Original file line number Diff line number Diff line change @@ -807,6 +807,7 @@ void xen_mm_pin_all(void)
807807{
808808 struct page * page ;
809809
810+ spin_lock (& init_mm .page_table_lock );
810811 spin_lock (& pgd_lock );
811812
812813 list_for_each_entry (page , & pgd_list , lru ) {
@@ -817,6 +818,7 @@ void xen_mm_pin_all(void)
817818 }
818819
819820 spin_unlock (& pgd_lock );
821+ spin_unlock (& init_mm .page_table_lock );
820822}
821823
822824static void __init xen_mark_pinned (struct mm_struct * mm , struct page * page ,
@@ -914,6 +916,7 @@ void xen_mm_unpin_all(void)
914916{
915917 struct page * page ;
916918
919+ spin_lock (& init_mm .page_table_lock );
917920 spin_lock (& pgd_lock );
918921
919922 list_for_each_entry (page , & pgd_list , lru ) {
@@ -925,6 +928,7 @@ void xen_mm_unpin_all(void)
925928 }
926929
927930 spin_unlock (& pgd_lock );
931+ spin_unlock (& init_mm .page_table_lock );
928932}
929933
930934static void xen_activate_mm (struct mm_struct * prev , struct mm_struct * next )
You can’t perform that action at this time.
0 commit comments