Merge tag 'v4.9.211' into khadas-vims-4.9.y
authorNick Xie <nick@khadas.com>
Wed, 27 May 2020 09:54:00 +0000 (17:54 +0800)
committerNick Xie <nick@khadas.com>
Wed, 27 May 2020 09:54:00 +0000 (17:54 +0800)
This is the 4.9.211 stable release

Signed-off-by: Nick Xie <nick@khadas.com>
 Conflicts:
arch/arm64/mm/mmu.c

17 files changed:
1  2 
Makefile
arch/arm64/include/asm/kvm_mmu.h
arch/arm64/include/asm/pgtable.h
arch/arm64/kernel/hibernate.c
arch/arm64/mm/mmu.c
drivers/gpio/gpiolib.c
drivers/hid/uhid.c
drivers/infiniband/ulp/srpt/ib_srpt.c
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
drivers/usb/core/hub.c
fs/ext4/inode.c
fs/ext4/super.c
fs/f2fs/data.c
fs/f2fs/file.c
include/linux/blkdev.h
net/ipv4/tcp_input.c
net/socket.c

diff --cc Makefile
Simple merge
Simple merge
Simple merge
Simple merge
index c127cded42384c917a5b59178dea38cd5661b9f7,60be5bc0984ad3a41993c439bb105e7840cd16aa..630e043145450873844d89a599d4b33cba7fd28d
@@@ -403,8 -407,11 +418,11 @@@ void mark_rodata_ro(void
         * to cover NOTES and EXCEPTION_TABLE.
         */
        section_size = (unsigned long)__init_begin - (unsigned long)__start_rodata;
 -      create_mapping_late(__pa(__start_rodata), (unsigned long)__start_rodata,
 +      create_mapping_late(__pa_symbol(__start_rodata), (unsigned long)__start_rodata,
                            section_size, PAGE_KERNEL_RO);
+       /* flush the TLBs after updating live kernel mappings */
+       flush_tlb_all();
  }
  
  static void __init map_kernel_segment(pgd_t *pgd, void *va_start, void *va_end,
@@@ -488,8 -495,8 +506,10 @@@ static void __init map_kernel(pgd_t *pg
                 * entry instead.
                 */
                BUG_ON(!IS_ENABLED(CONFIG_ARM64_16K_PAGES));
 +              set_pud(pud_set_fixmap_offset(pgd, FIXADDR_START),
 +                      __pud(__pa_symbol(bm_pmd) | PUD_TYPE_TABLE));
+               pud_populate(&init_mm, pud_set_fixmap_offset(pgd, FIXADDR_START),
+                            lm_alias(bm_pmd));
                pud_clear_fixmap();
        } else {
                BUG();
@@@ -640,14 -611,9 +660,14 @@@ int __meminit vmemmap_populate(unsigne
                        if (!p)
                                return -ENOMEM;
  
-                       set_pmd(pmd, __pmd(__pa(p) | PROT_SECT_NORMAL));
+                       pmd_set_huge(pmd, __pa(p), __pgprot(PROT_SECT_NORMAL));
                } else
                        vmemmap_verify((pte_t *)pmd, node, addr, next);
 +
 +      #ifdef CONFIG_AMLOGIC_MODIFY
 +              if (in_vmap && check_pfn_overflow(page_to_pfn(page)))
 +                      break;
 +      #endif /* CONFIG_AMLOGIC_MODIFY */
        } while (addr = next, addr != end);
  
        return 0;
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc fs/ext4/inode.c
Simple merge
diff --cc fs/ext4/super.c
Simple merge
diff --cc fs/f2fs/data.c
Simple merge
diff --cc fs/f2fs/file.c
Simple merge
Simple merge
Simple merge
diff --cc net/socket.c
Simple merge