unsigned long pfn;
        int nid = zone_to_nid(zone);
 
-       zone_span_writelock(zone);
        if (zone->zone_start_pfn == start_pfn) {
                /*
                 * If the section is smallest section in the zone, it need
                        zone->spanned_pages = 0;
                }
        }
-       zone_span_writeunlock(zone);
 }
 
 static void update_pgdat_span(struct pglist_data *pgdat)
 {
        const unsigned long end_pfn = start_pfn + nr_pages;
        struct pglist_data *pgdat = zone->zone_pgdat;
-       unsigned long pfn, cur_nr_pages, flags;
+       unsigned long pfn, cur_nr_pages;
 
        /* Poison struct pages because they are now uninitialized again. */
        for (pfn = start_pfn; pfn < end_pfn; pfn += cur_nr_pages) {
 
        clear_zone_contiguous(zone);
 
-       pgdat_resize_lock(zone->zone_pgdat, &flags);
        shrink_zone_span(zone, start_pfn, start_pfn + nr_pages);
        update_pgdat_span(pgdat);
-       pgdat_resize_unlock(zone->zone_pgdat, &flags);
 
        set_zone_contiguous(zone);
 }
 {
        struct pglist_data *pgdat = zone->zone_pgdat;
        int nid = pgdat->node_id;
-       unsigned long flags;
 
        clear_zone_contiguous(zone);
 
-       /* TODO Huh pgdat is irqsave while zone is not. It used to be like that before */
-       pgdat_resize_lock(pgdat, &flags);
-       zone_span_writelock(zone);
        if (zone_is_empty(zone))
                init_currently_empty_zone(zone, start_pfn, nr_pages);
        resize_zone_range(zone, start_pfn, nr_pages);
-       zone_span_writeunlock(zone);
        resize_pgdat_range(pgdat, start_pfn, nr_pages);
-       pgdat_resize_unlock(pgdat, &flags);
 
        /*
         * Subsection population requires care in pfn_to_online_page().
  */
 void adjust_present_page_count(struct zone *zone, long nr_pages)
 {
-       unsigned long flags;
-
        zone->present_pages += nr_pages;
-       pgdat_resize_lock(zone->zone_pgdat, &flags);
        zone->zone_pgdat->node_present_pages += nr_pages;
-       pgdat_resize_unlock(zone->zone_pgdat, &flags);
 }
 
 int mhp_init_memmap_on_memory(unsigned long pfn, unsigned long nr_pages,