Merge tag 'for-linux-5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml
authorLinus Torvalds <torvalds@linux-foundation.org>
Sun, 21 Feb 2021 21:53:00 +0000 (13:53 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sun, 21 Feb 2021 21:53:00 +0000 (13:53 -0800)
Pull UML updates from Richard Weinberger:

 - Many cleanups and fixes for our virtio code

 - Add support for a pseudo RTC

 - Fix for a possible jailbreak

 - Minor fixes (spelling, header files)

* tag 'for-linux-5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml:
  um: irq.h: include <asm-generic/irq.h>
  um: io.h: include <linux/types.h>
  um: add a pseudo RTC
  um: remove process stub VMA
  um: rework userspace stubs to not hard-code stub location
  um: separate child and parent errors in clone stub
  um: defer killing userspace on page table update failures
  um: mm: check more comprehensively for stub changes
  um: print register names in wait_for_stub
  um: hostfs: use a kmem cache for inodes
  mm: Remove arch_remap() and mm-arch-hooks.h
  um: fix spelling mistake in Kconfig "privleges" -> "privileges"
  um: virtio: allow devices to be configured for wakeup
  um: time-travel: rework interrupt handling in ext mode
  um: virtio: disable VQs during suspend
  um: virtio: fix handling of messages without payload
  um: virtio: clean up a comment

1  2 
mm/mremap.c

diff --combined mm/mremap.c
@@@ -22,7 -22,6 +22,6 @@@
  #include <linux/syscalls.h>
  #include <linux/mmu_notifier.h>
  #include <linux/uaccess.h>
- #include <linux/mm-arch-hooks.h>
  #include <linux/userfaultfd_k.h>
  
  #include <asm/cacheflush.h>
@@@ -336,9 -335,8 +335,9 @@@ enum pgt_entry 
   * valid. Else returns a smaller extent bounded by the end of the source and
   * destination pgt_entry.
   */
 -static unsigned long get_extent(enum pgt_entry entry, unsigned long old_addr,
 -                      unsigned long old_end, unsigned long new_addr)
 +static __always_inline unsigned long get_extent(enum pgt_entry entry,
 +                      unsigned long old_addr, unsigned long old_end,
 +                      unsigned long new_addr)
  {
        unsigned long next, extent, mask, size;
  
@@@ -563,8 -561,6 +562,6 @@@ static unsigned long move_vma(struct vm
                new_addr = err;
        } else {
                mremap_userfaultfd_prep(new_vma, uf);
-               arch_remap(mm, old_addr, old_addr + old_len,
-                          new_addr, new_addr + new_len);
        }
  
        /* Conceal VM_ACCOUNT so old reservation is not undone */