]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
Merge branch 'akpm-current/current'
authorStephen Rothwell <sfr@canb.auug.org.au>
Wed, 4 Jun 2014 07:39:30 +0000 (17:39 +1000)
committerStephen Rothwell <sfr@canb.auug.org.au>
Wed, 4 Jun 2014 07:39:30 +0000 (17:39 +1000)
Conflicts:
arch/arm/include/asm/Kbuild
arch/powerpc/include/asm/topology.h
fs/ext4/page-io.c
fs/jfs/super.c
kernel/kexec.c
mm/memcontrol.c

90 files changed:
1  2 
Documentation/cgroups/memory.txt
Documentation/kernel-parameters.txt
Documentation/printk-formats.txt
MAINTAINERS
arch/arm/Kconfig
arch/arm/include/asm/Kbuild
arch/arm64/Kconfig
arch/ia64/Kconfig
arch/ia64/include/asm/topology.h
arch/m68k/include/asm/unistd.h
arch/powerpc/Kconfig
arch/powerpc/include/asm/topology.h
arch/powerpc/include/asm/unistd.h
arch/powerpc/platforms/52xx/efika.c
arch/s390/Kconfig
arch/x86/Kconfig
arch/x86/kernel/cpu/mcheck/mce.c
arch/x86/mm/init_64.c
drivers/base/Kconfig
drivers/base/dma-contiguous.c
drivers/leds/Kconfig
drivers/video/backlight/backlight.c
fs/9p/vfs_file.c
fs/9p/vfs_inode.c
fs/affs/file.c
fs/binfmt_elf.c
fs/block_dev.c
fs/btrfs/extent_io.c
fs/btrfs/file.c
fs/buffer.c
fs/ceph/addr.c
fs/cifs/smb2ops.c
fs/cifs/smb2pdu.c
fs/cifs/smb2pdu.h
fs/ext4/mballoc.c
fs/ext4/page-io.c
fs/f2fs/checkpoint.c
fs/f2fs/node.c
fs/fat/inode.c
fs/fuse/file.c
fs/gfs2/aops.c
fs/ntfs/file.c
fs/ocfs2/file.c
fs/proc/task_mmu.c
include/linux/blkdev.h
include/linux/buffer_head.h
include/linux/compiler.h
include/linux/fs.h
include/linux/memblock.h
include/linux/mm.h
include/linux/mm_types.h
include/linux/page-flags.h
include/linux/sched.h
include/linux/string.h
include/linux/thread_info.h
include/linux/topology.h
init/Kconfig
init/main.c
kernel/acct.c
kernel/audit.c
kernel/cpu.c
kernel/cpuset.c
kernel/kexec.c
kernel/kmod.c
kernel/printk/printk.c
kernel/sched/core.c
kernel/sched/deadline.c
kernel/sched/rt.c
kernel/seccomp.c
kernel/sysctl.c
kernel/time/ntp.c
lib/Kconfig
lib/Kconfig.debug
lib/Makefile
lib/string.c
mm/Kconfig
mm/Makefile
mm/dmapool.c
mm/filemap.c
mm/huge_memory.c
mm/memblock.c
mm/memcontrol.c
mm/memory.c
mm/mmap.c
mm/page-writeback.c
mm/page_io.c
mm/shmem.c
mm/slab_common.c
mm/slub.c
mm/vmscan.c

Simple merge
Simple merge
Simple merge
diff --cc MAINTAINERS
index 3ecd69066f8d76a9dd0cec11e1cd6f20e9857cee,4bb413e6bcf86672369db71691aef322fcf29451..d21c30d41a6f68d17eb2e21694c98b8e43b85e5f
@@@ -4402,24 -4377,15 +4402,21 @@@ L:   netdev@vger.kernel.or
  S:    Supported
  F:    drivers/net/ethernet/ibm/ibmveth.*
  
 -IBM Power Virtual SCSI/FC Device Drivers
 -M:    Robert Jennings <rcj@linux.vnet.ibm.com>
 +IBM Power Virtual SCSI Device Drivers
 +M:    Nathan Fontenot <nfont@linux.vnet.ibm.com>
  L:    linux-scsi@vger.kernel.org
  S:    Supported
 -F:    drivers/scsi/ibmvscsi/
 -X:    drivers/scsi/ibmvscsi/ibmvstgt.c
 +F:    drivers/scsi/ibmvscsi/ibmvscsi*
 +F:    drivers/scsi/ibmvscsi/viosrp.h
 +
 +IBM Power Virtual FC Device Drivers
 +M:    Brian King <brking@linux.vnet.ibm.com>
 +L:    linux-scsi@vger.kernel.org
 +S:    Supported
 +F:    drivers/scsi/ibmvscsi/ibmvfc*
  
  IBM ServeRAID RAID DRIVER
- P:    Jack Hammer
- M:    Dave Jeffery <ipslinux@adaptec.com>
- W:    http://www.developer.ibm.com/welcome/netfinity/serveraid.html
- S:    Supported
+ S:    Orphan
  F:    drivers/scsi/ips.*
  
  ICH LPC AND GPIO DRIVER
Simple merge
index f5a35760198314e150c752290facc879b3c068e6,2d95820276fd1b947cd0efb6df97e5c86c49149a..70cd84eb7fda0c294c004d83841462bb4df799a5
@@@ -21,7 -21,7 +21,8 @@@ generic-y += parport.
  generic-y += poll.h
  generic-y += preempt.h
  generic-y += resource.h
 +generic-y += rwsem.h
+ generic-y += scatterlist.h
  generic-y += sections.h
  generic-y += segment.h
  generic-y += sembuf.h
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index bdcde58ca9ed0191343c3b856c2257e4e3e54673,b92591fa89706357942ea0388d941f6afe890218..df1a9927ad29ef9aa727851e775badb0f43a5416
@@@ -1226,12 -1218,24 +1226,15 @@@ int in_gate_area(struct mm_struct *mm, 
   */
  int in_gate_area_no_mm(unsigned long addr)
  {
 -      return (addr >= VSYSCALL_START) && (addr < VSYSCALL_END);
 -}
 -
 -const char *arch_vma_name(struct vm_area_struct *vma)
 -{
 -      if (vma->vm_mm && vma->vm_start == (long)vma->vm_mm->context.vdso)
 -              return "[vdso]";
 -      if (vma == &gate_vma)
 -              return "[vsyscall]";
 -      return NULL;
 +      return (addr & PAGE_MASK) == VSYSCALL_ADDR;
  }
  
- #ifdef CONFIG_X86_UV
- unsigned long memory_block_size_bytes(void)
+ static unsigned long probe_memory_block_size(void)
  {
+       /* start from 2g */
+       unsigned long bz = 1UL<<31;
+ #ifdef CONFIG_X86_UV
        if (is_uv_system()) {
                printk(KERN_INFO "UV: memory block size 2GB\n");
                return 2UL * 1024 * 1024 * 1024;
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc fs/affs/file.c
Simple merge
diff --cc fs/binfmt_elf.c
Simple merge
diff --cc fs/block_dev.c
Simple merge
Simple merge
diff --cc fs/btrfs/file.c
Simple merge
diff --cc fs/buffer.c
Simple merge
diff --cc fs/ceph/addr.c
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index b6a3804a98551a5bfd002bc296bf360bea4a45a0,1a64e7a52b841be24ddd3daa56cb47939f07656c..b24a2541a9baaa0d4c22e80a75050af2517a417d
@@@ -415,23 -414,9 +415,23 @@@ int ext4_bio_write_page(struct ext4_io_
        BUG_ON(!PageLocked(page));
        BUG_ON(PageWriteback(page));
  
 -      set_page_writeback(page);
 +      if (keep_towrite)
 +              set_page_writeback_keepwrite(page);
 +      else
 +              set_page_writeback(page);
        ClearPageError(page);
  
-        * Comments copied from block_write_full_page_endio:
 +      /*
++       * Comments copied from block_write_full_page:
 +       *
 +       * The page straddles i_size.  It must be zeroed out on each and every
 +       * writepage invocation because it may be mmapped.  "A file is mapped
 +       * in multiples of the page size.  For a file that is not a multiple of
 +       * the page size, the remaining memory is zeroed when mapped, and
 +       * writes to that region are not written out to the file."
 +       */
 +      if (len < PAGE_CACHE_SIZE)
 +              zero_user_segment(page, len, PAGE_CACHE_SIZE);
        /*
         * In the first loop we prepare and mark buffers to submit. We have to
         * mark all buffers in the page before submitting so that
Simple merge
diff --cc fs/f2fs/node.c
Simple merge
diff --cc fs/fat/inode.c
Simple merge
diff --cc fs/fuse/file.c
Simple merge
diff --cc fs/gfs2/aops.c
Simple merge
diff --cc fs/ntfs/file.c
Simple merge
diff --cc fs/ocfs2/file.c
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc init/Kconfig
Simple merge
diff --cc init/main.c
Simple merge
diff --cc kernel/acct.c
Simple merge
diff --cc kernel/audit.c
Simple merge
diff --cc kernel/cpu.c
Simple merge
diff --cc kernel/cpuset.c
Simple merge
diff --cc kernel/kexec.c
index 28c57069ef681f726f2df133d36e6319d370c25f,bf0b929e7f942a5f831a1e7de1e5efa42d7771a1..369f41a9412481029354034d4c6e0193fe132f56
@@@ -1683,15 -1679,7 +1679,15 @@@ int kernel_kexec(void
                kexec_in_progress = true;
                kernel_restart_prepare(NULL);
                migrate_to_reboot_cpu();
-               printk(KERN_EMERG "Starting new kernel\n");
 +
 +              /*
 +               * migrate_to_reboot_cpu() disables CPU hotplug assuming that
 +               * no further code needs to use CPU hotplug (which is true in
 +               * the reboot case). However, the kexec path depends on using
 +               * CPU hotplug again; so re-enable it here.
 +               */
 +              cpu_hotplug_enable();
+               pr_emerg("Starting new kernel\n");
                machine_shutdown();
        }
  
diff --cc kernel/kmod.c
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc kernel/sysctl.c
Simple merge
Simple merge
diff --cc lib/Kconfig
Simple merge
Simple merge
diff --cc lib/Makefile
Simple merge
diff --cc lib/string.c
Simple merge
diff --cc mm/Kconfig
Simple merge
diff --cc mm/Makefile
Simple merge
diff --cc mm/dmapool.c
Simple merge
diff --cc mm/filemap.c
Simple merge
Simple merge
diff --cc mm/memblock.c
Simple merge
diff --cc mm/memcontrol.c
index 9e71ad50d71c4beae0496c0c7590fbd9c0533b47,546d58e13f1f53dae3b2373179f50ccd1c51b3c9..39a8e90ac78de51c4070e8f07226ecd9ae739ade
@@@ -5448,22 -5335,14 +5340,14 @@@ static int mem_cgroup_swappiness_write(
                                       struct cftype *cft, u64 val)
  {
        struct mem_cgroup *memcg = mem_cgroup_from_css(css);
-       struct mem_cgroup *parent = mem_cgroup_from_css(memcg->css.parent);
  
-       if (val > 100 || !parent)
+       if (val > 100)
                return -EINVAL;
  
-       mutex_lock(&memcg_create_mutex);
-       /* If under hierarchy, only empty-root can set this value */
-       if ((parent->use_hierarchy) || memcg_has_children(memcg)) {
-               mutex_unlock(&memcg_create_mutex);
-               return -EINVAL;
-       }
-       memcg->swappiness = val;
-       mutex_unlock(&memcg_create_mutex);
 -      if (css_parent(css))
++      if (css->parent)
+               memcg->swappiness = val;
+       else
+               vm_swappiness = val;
  
        return 0;
  }
@@@ -5795,18 -5674,11 +5679,11 @@@ static int mem_cgroup_oom_control_write
        struct cftype *cft, u64 val)
  {
        struct mem_cgroup *memcg = mem_cgroup_from_css(css);
-       struct mem_cgroup *parent = mem_cgroup_from_css(memcg->css.parent);
  
        /* cannot set to root cgroup and only 0 and 1 are allowed */
-       if (!parent || !((val == 0) || (val == 1)))
 -      if (!css_parent(css) || !((val == 0) || (val == 1)))
++      if (!css->parent || !((val == 0) || (val == 1)))
                return -EINVAL;
  
-       mutex_lock(&memcg_create_mutex);
-       /* oom-kill-disable is a flag for subhierarchy. */
-       if ((parent->use_hierarchy) || memcg_has_children(memcg)) {
-               mutex_unlock(&memcg_create_mutex);
-               return -EINVAL;
-       }
        memcg->oom_kill_disable = val;
        if (!val)
                memcg_oom_recover(memcg);
diff --cc mm/memory.c
Simple merge
diff --cc mm/mmap.c
index 52bbc9514d9d005c470bc5292fc0946fc74f7794,8a56d39df4ed2af8c46be660dfc73056798fced4..ced5efcdd4b6c7763e7ab6435db128a638e78059
+++ b/mm/mmap.c
@@@ -2992,13 -2961,10 +2991,11 @@@ int install_special_mapping(struct mm_s
                            unsigned long addr, unsigned long len,
                            unsigned long vm_flags, struct page **pages)
  {
 -      struct vm_area_struct *vma = _install_special_mapping(mm,
 -                          addr, len, vm_flags, pages);
 +      struct vm_area_struct *vma = __install_special_mapping(
 +              mm, addr, len, vm_flags, &legacy_special_mapping_vmops,
 +              (void *)pages);
  
-       if (IS_ERR(vma))
-               return PTR_ERR(vma);
-       return 0;
+       return PTR_ERR_OR_ZERO(vma);
  }
  
  static DEFINE_MUTEX(mm_all_locks_mutex);
Simple merge
diff --cc mm/page_io.c
Simple merge
diff --cc mm/shmem.c
Simple merge
Simple merge
diff --cc mm/slub.c
Simple merge
diff --cc mm/vmscan.c
Simple merge