Explorar el Código

Merge branch 'akpm' (patches from Andrew)

Merge misc fixes from Andrew Morton:
 "17 fixes"

* emailed patches from Andrew Morton <akpm@linux-foundation.org>:
  nilfs2: convert to SPDX license tags
  drivers/dax/device.c: convert variable to vm_fault_t type
  lib/Kconfig.debug: fix three typos in help text
  checkpatch: add __ro_after_init to known $Attribute
  mm: fix BUG_ON() in vmf_insert_pfn_pud() from VM_MIXEDMAP removal
  uapi/linux/keyctl.h: don't use C++ reserved keyword as a struct member name
  memory_hotplug: fix kernel_panic on offline page processing
  checkpatch: add optional static const to blank line declarations test
  ipc/shm: properly return EIDRM in shm_lock()
  mm/hugetlb: filter out hugetlb pages if HUGEPAGE migration is not supported.
  mm/util.c: improve kvfree() kerneldoc
  tools/vm/page-types.c: fix "defined but not used" warning
  tools/vm/slabinfo.c: fix sign-compare warning
  kmemleak: always register debugfs file
  mm: respect arch_dup_mmap() return value
  mm, oom: fix missing tlb_finish_mmu() in __oom_reap_task_mm().
  mm: memcontrol: print proper OOM header when no eligible victim left
Linus Torvalds hace 7 años
padre
commit
0e9b103950
Se han modificado 56 ficheros con 91 adiciones y 433 borrados
  1. 9 11
      drivers/base/memory.c
  2. 2 1
      drivers/dax/device.c
  3. 1 10
      fs/nilfs2/alloc.c
  4. 1 10
      fs/nilfs2/alloc.h
  5. 1 10
      fs/nilfs2/bmap.c
  6. 1 10
      fs/nilfs2/bmap.h
  7. 1 10
      fs/nilfs2/btnode.c
  8. 1 10
      fs/nilfs2/btnode.h
  9. 1 10
      fs/nilfs2/btree.c
  10. 1 10
      fs/nilfs2/btree.h
  11. 1 10
      fs/nilfs2/cpfile.c
  12. 1 10
      fs/nilfs2/cpfile.h
  13. 1 10
      fs/nilfs2/dat.c
  14. 1 10
      fs/nilfs2/dat.h
  15. 1 10
      fs/nilfs2/dir.c
  16. 1 10
      fs/nilfs2/direct.c
  17. 1 10
      fs/nilfs2/direct.h
  18. 1 10
      fs/nilfs2/file.c
  19. 1 10
      fs/nilfs2/gcinode.c
  20. 1 10
      fs/nilfs2/ifile.c
  21. 1 10
      fs/nilfs2/ifile.h
  22. 1 10
      fs/nilfs2/inode.c
  23. 1 10
      fs/nilfs2/ioctl.c
  24. 1 10
      fs/nilfs2/mdt.c
  25. 1 10
      fs/nilfs2/mdt.h
  26. 1 10
      fs/nilfs2/namei.c
  27. 1 10
      fs/nilfs2/nilfs.h
  28. 1 10
      fs/nilfs2/page.c
  29. 1 10
      fs/nilfs2/page.h
  30. 1 10
      fs/nilfs2/recovery.c
  31. 1 10
      fs/nilfs2/segbuf.c
  32. 1 10
      fs/nilfs2/segbuf.h
  33. 1 10
      fs/nilfs2/segment.c
  34. 1 10
      fs/nilfs2/segment.h
  35. 1 10
      fs/nilfs2/sufile.c
  36. 1 10
      fs/nilfs2/sufile.h
  37. 1 10
      fs/nilfs2/super.c
  38. 1 10
      fs/nilfs2/sysfs.c
  39. 1 10
      fs/nilfs2/sysfs.h
  40. 1 10
      fs/nilfs2/the_nilfs.c
  41. 1 10
      fs/nilfs2/the_nilfs.h
  42. 1 1
      include/uapi/linux/keyctl.h
  43. 1 0
      ipc/shm.c
  44. 1 2
      kernel/fork.c
  45. 2 2
      lib/Kconfig.debug
  46. 2 2
      mm/huge_memory.c
  47. 5 4
      mm/kmemleak.c
  48. 0 2
      mm/memcontrol.c
  49. 2 1
      mm/memory_hotplug.c
  50. 11 3
      mm/oom_kill.c
  51. 4 0
      mm/page_alloc.c
  52. 7 4
      mm/util.c
  53. 2 1
      scripts/checkpatch.pl
  54. 1 1
      security/keys/dh.c
  55. 0 6
      tools/vm/page-types.c
  56. 2 2
      tools/vm/slabinfo.c

+ 9 - 11
drivers/base/memory.c

@@ -416,26 +416,24 @@ static ssize_t show_valid_zones(struct device *dev,
 	struct zone *default_zone;
 	struct zone *default_zone;
 	int nid;
 	int nid;
 
 
-	/*
-	 * The block contains more than one zone can not be offlined.
-	 * This can happen e.g. for ZONE_DMA and ZONE_DMA32
-	 */
-	if (!test_pages_in_a_zone(start_pfn, start_pfn + nr_pages, &valid_start_pfn, &valid_end_pfn))
-		return sprintf(buf, "none\n");
-
-	start_pfn = valid_start_pfn;
-	nr_pages = valid_end_pfn - start_pfn;
-
 	/*
 	/*
 	 * Check the existing zone. Make sure that we do that only on the
 	 * Check the existing zone. Make sure that we do that only on the
 	 * online nodes otherwise the page_zone is not reliable
 	 * online nodes otherwise the page_zone is not reliable
 	 */
 	 */
 	if (mem->state == MEM_ONLINE) {
 	if (mem->state == MEM_ONLINE) {
+		/*
+		 * The block contains more than one zone can not be offlined.
+		 * This can happen e.g. for ZONE_DMA and ZONE_DMA32
+		 */
+		if (!test_pages_in_a_zone(start_pfn, start_pfn + nr_pages,
+					  &valid_start_pfn, &valid_end_pfn))
+			return sprintf(buf, "none\n");
+		start_pfn = valid_start_pfn;
 		strcat(buf, page_zone(pfn_to_page(start_pfn))->name);
 		strcat(buf, page_zone(pfn_to_page(start_pfn))->name);
 		goto out;
 		goto out;
 	}
 	}
 
 
-	nid = pfn_to_nid(start_pfn);
+	nid = mem->nid;
 	default_zone = zone_for_pfn_range(MMOP_ONLINE_KEEP, nid, start_pfn, nr_pages);
 	default_zone = zone_for_pfn_range(MMOP_ONLINE_KEEP, nid, start_pfn, nr_pages);
 	strcat(buf, default_zone->name);
 	strcat(buf, default_zone->name);
 
 

+ 2 - 1
drivers/dax/device.c

@@ -392,7 +392,8 @@ static vm_fault_t dev_dax_huge_fault(struct vm_fault *vmf,
 {
 {
 	struct file *filp = vmf->vma->vm_file;
 	struct file *filp = vmf->vma->vm_file;
 	unsigned long fault_size;
 	unsigned long fault_size;
-	int rc, id;
+	vm_fault_t rc = VM_FAULT_SIGBUS;
+	int id;
 	pfn_t pfn;
 	pfn_t pfn;
 	struct dev_dax *dev_dax = filp->private_data;
 	struct dev_dax *dev_dax = filp->private_data;
 
 

+ 1 - 10
fs/nilfs2/alloc.c

@@ -1,18 +1,9 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
 /*
  * alloc.c - NILFS dat/inode allocator
  * alloc.c - NILFS dat/inode allocator
  *
  *
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Originally written by Koji Sato.
  * Originally written by Koji Sato.
  * Two allocators were unified by Ryusuke Konishi and Amagai Yoshiji.
  * Two allocators were unified by Ryusuke Konishi and Amagai Yoshiji.
  */
  */

+ 1 - 10
fs/nilfs2/alloc.h

@@ -1,18 +1,9 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
 /*
 /*
  * alloc.h - persistent object (dat entry/disk inode) allocator/deallocator
  * alloc.h - persistent object (dat entry/disk inode) allocator/deallocator
  *
  *
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Originally written by Koji Sato.
  * Originally written by Koji Sato.
  * Two allocators were unified by Ryusuke Konishi and Amagai Yoshiji.
  * Two allocators were unified by Ryusuke Konishi and Amagai Yoshiji.
  */
  */

+ 1 - 10
fs/nilfs2/bmap.c

@@ -1,18 +1,9 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
 /*
  * bmap.c - NILFS block mapping.
  * bmap.c - NILFS block mapping.
  *
  *
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Koji Sato.
  * Written by Koji Sato.
  */
  */
 
 

+ 1 - 10
fs/nilfs2/bmap.h

@@ -1,18 +1,9 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
 /*
 /*
  * bmap.h - NILFS block mapping.
  * bmap.h - NILFS block mapping.
  *
  *
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Koji Sato.
  * Written by Koji Sato.
  */
  */
 
 

+ 1 - 10
fs/nilfs2/btnode.c

@@ -1,18 +1,9 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
 /*
  * btnode.c - NILFS B-tree node cache
  * btnode.c - NILFS B-tree node cache
  *
  *
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Originally written by Seiji Kihara.
  * Originally written by Seiji Kihara.
  * Fully revised by Ryusuke Konishi for stabilization and simplification.
  * Fully revised by Ryusuke Konishi for stabilization and simplification.
  *
  *

+ 1 - 10
fs/nilfs2/btnode.h

@@ -1,18 +1,9 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
 /*
 /*
  * btnode.h - NILFS B-tree node cache
  * btnode.h - NILFS B-tree node cache
  *
  *
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Seiji Kihara.
  * Written by Seiji Kihara.
  * Revised by Ryusuke Konishi.
  * Revised by Ryusuke Konishi.
  */
  */

+ 1 - 10
fs/nilfs2/btree.c

@@ -1,18 +1,9 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
 /*
  * btree.c - NILFS B-tree.
  * btree.c - NILFS B-tree.
  *
  *
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Koji Sato.
  * Written by Koji Sato.
  */
  */
 
 

+ 1 - 10
fs/nilfs2/btree.h

@@ -1,18 +1,9 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
 /*
 /*
  * btree.h - NILFS B-tree.
  * btree.h - NILFS B-tree.
  *
  *
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Koji Sato.
  * Written by Koji Sato.
  */
  */
 
 

+ 1 - 10
fs/nilfs2/cpfile.c

@@ -1,18 +1,9 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
 /*
  * cpfile.c - NILFS checkpoint file.
  * cpfile.c - NILFS checkpoint file.
  *
  *
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Koji Sato.
  * Written by Koji Sato.
  */
  */
 
 

+ 1 - 10
fs/nilfs2/cpfile.h

@@ -1,18 +1,9 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
 /*
 /*
  * cpfile.h - NILFS checkpoint file.
  * cpfile.h - NILFS checkpoint file.
  *
  *
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Koji Sato.
  * Written by Koji Sato.
  */
  */
 
 

+ 1 - 10
fs/nilfs2/dat.c

@@ -1,18 +1,9 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
 /*
  * dat.c - NILFS disk address translation.
  * dat.c - NILFS disk address translation.
  *
  *
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Koji Sato.
  * Written by Koji Sato.
  */
  */
 
 

+ 1 - 10
fs/nilfs2/dat.h

@@ -1,18 +1,9 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
 /*
 /*
  * dat.h - NILFS disk address translation.
  * dat.h - NILFS disk address translation.
  *
  *
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Koji Sato.
  * Written by Koji Sato.
  */
  */
 
 

+ 1 - 10
fs/nilfs2/dir.c

@@ -1,18 +1,9 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
 /*
  * dir.c - NILFS directory entry operations
  * dir.c - NILFS directory entry operations
  *
  *
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Modified for NILFS by Amagai Yoshiji.
  * Modified for NILFS by Amagai Yoshiji.
  */
  */
 /*
 /*

+ 1 - 10
fs/nilfs2/direct.c

@@ -1,18 +1,9 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
 /*
  * direct.c - NILFS direct block pointer.
  * direct.c - NILFS direct block pointer.
  *
  *
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Koji Sato.
  * Written by Koji Sato.
  */
  */
 
 

+ 1 - 10
fs/nilfs2/direct.h

@@ -1,18 +1,9 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
 /*
 /*
  * direct.h - NILFS direct block pointer.
  * direct.h - NILFS direct block pointer.
  *
  *
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Koji Sato.
  * Written by Koji Sato.
  */
  */
 
 

+ 1 - 10
fs/nilfs2/file.c

@@ -1,18 +1,9 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
 /*
  * file.c - NILFS regular file handling primitives including fsync().
  * file.c - NILFS regular file handling primitives including fsync().
  *
  *
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Amagai Yoshiji and Ryusuke Konishi.
  * Written by Amagai Yoshiji and Ryusuke Konishi.
  */
  */
 
 

+ 1 - 10
fs/nilfs2/gcinode.c

@@ -1,18 +1,9 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
 /*
  * gcinode.c - dummy inodes to buffer blocks for garbage collection
  * gcinode.c - dummy inodes to buffer blocks for garbage collection
  *
  *
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Seiji Kihara, Amagai Yoshiji, and Ryusuke Konishi.
  * Written by Seiji Kihara, Amagai Yoshiji, and Ryusuke Konishi.
  * Revised by Ryusuke Konishi.
  * Revised by Ryusuke Konishi.
  *
  *

+ 1 - 10
fs/nilfs2/ifile.c

@@ -1,18 +1,9 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
 /*
  * ifile.c - NILFS inode file
  * ifile.c - NILFS inode file
  *
  *
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Amagai Yoshiji.
  * Written by Amagai Yoshiji.
  * Revised by Ryusuke Konishi.
  * Revised by Ryusuke Konishi.
  *
  *

+ 1 - 10
fs/nilfs2/ifile.h

@@ -1,18 +1,9 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
 /*
 /*
  * ifile.h - NILFS inode file
  * ifile.h - NILFS inode file
  *
  *
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Amagai Yoshiji.
  * Written by Amagai Yoshiji.
  * Revised by Ryusuke Konishi.
  * Revised by Ryusuke Konishi.
  *
  *

+ 1 - 10
fs/nilfs2/inode.c

@@ -1,18 +1,9 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
 /*
  * inode.c - NILFS inode operations.
  * inode.c - NILFS inode operations.
  *
  *
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Ryusuke Konishi.
  * Written by Ryusuke Konishi.
  *
  *
  */
  */

+ 1 - 10
fs/nilfs2/ioctl.c

@@ -1,18 +1,9 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
 /*
  * ioctl.c - NILFS ioctl operations.
  * ioctl.c - NILFS ioctl operations.
  *
  *
  * Copyright (C) 2007, 2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2007, 2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Koji Sato.
  * Written by Koji Sato.
  */
  */
 
 

+ 1 - 10
fs/nilfs2/mdt.c

@@ -1,18 +1,9 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
 /*
  * mdt.c - meta data file for NILFS
  * mdt.c - meta data file for NILFS
  *
  *
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Ryusuke Konishi.
  * Written by Ryusuke Konishi.
  */
  */
 
 

+ 1 - 10
fs/nilfs2/mdt.h

@@ -1,18 +1,9 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
 /*
 /*
  * mdt.h - NILFS meta data file prototype and definitions
  * mdt.h - NILFS meta data file prototype and definitions
  *
  *
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Ryusuke Konishi.
  * Written by Ryusuke Konishi.
  */
  */
 
 

+ 1 - 10
fs/nilfs2/namei.c

@@ -1,18 +1,9 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
 /*
  * namei.c - NILFS pathname lookup operations.
  * namei.c - NILFS pathname lookup operations.
  *
  *
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Modified for NILFS by Amagai Yoshiji and Ryusuke Konishi.
  * Modified for NILFS by Amagai Yoshiji and Ryusuke Konishi.
  */
  */
 /*
 /*

+ 1 - 10
fs/nilfs2/nilfs.h

@@ -1,18 +1,9 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
 /*
 /*
  * nilfs.h - NILFS local header file.
  * nilfs.h - NILFS local header file.
  *
  *
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Koji Sato and Ryusuke Konishi.
  * Written by Koji Sato and Ryusuke Konishi.
  */
  */
 
 

+ 1 - 10
fs/nilfs2/page.c

@@ -1,18 +1,9 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
 /*
  * page.c - buffer/page management specific to NILFS
  * page.c - buffer/page management specific to NILFS
  *
  *
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Ryusuke Konishi and Seiji Kihara.
  * Written by Ryusuke Konishi and Seiji Kihara.
  */
  */
 
 

+ 1 - 10
fs/nilfs2/page.h

@@ -1,18 +1,9 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
 /*
 /*
  * page.h - buffer/page management specific to NILFS
  * page.h - buffer/page management specific to NILFS
  *
  *
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Ryusuke Konishi and Seiji Kihara.
  * Written by Ryusuke Konishi and Seiji Kihara.
  */
  */
 
 

+ 1 - 10
fs/nilfs2/recovery.c

@@ -1,18 +1,9 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
 /*
  * recovery.c - NILFS recovery logic
  * recovery.c - NILFS recovery logic
  *
  *
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Ryusuke Konishi.
  * Written by Ryusuke Konishi.
  */
  */
 
 

+ 1 - 10
fs/nilfs2/segbuf.c

@@ -1,18 +1,9 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
 /*
  * segbuf.c - NILFS segment buffer
  * segbuf.c - NILFS segment buffer
  *
  *
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Ryusuke Konishi.
  * Written by Ryusuke Konishi.
  *
  *
  */
  */

+ 1 - 10
fs/nilfs2/segbuf.h

@@ -1,18 +1,9 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
 /*
 /*
  * segbuf.h - NILFS Segment buffer prototypes and definitions
  * segbuf.h - NILFS Segment buffer prototypes and definitions
  *
  *
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Ryusuke Konishi.
  * Written by Ryusuke Konishi.
  *
  *
  */
  */

+ 1 - 10
fs/nilfs2/segment.c

@@ -1,18 +1,9 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
 /*
  * segment.c - NILFS segment constructor.
  * segment.c - NILFS segment constructor.
  *
  *
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Ryusuke Konishi.
  * Written by Ryusuke Konishi.
  *
  *
  */
  */

+ 1 - 10
fs/nilfs2/segment.h

@@ -1,18 +1,9 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
 /*
 /*
  * segment.h - NILFS Segment constructor prototypes and definitions
  * segment.h - NILFS Segment constructor prototypes and definitions
  *
  *
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Ryusuke Konishi.
  * Written by Ryusuke Konishi.
  *
  *
  */
  */

+ 1 - 10
fs/nilfs2/sufile.c

@@ -1,18 +1,9 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
 /*
  * sufile.c - NILFS segment usage file.
  * sufile.c - NILFS segment usage file.
  *
  *
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Koji Sato.
  * Written by Koji Sato.
  * Revised by Ryusuke Konishi.
  * Revised by Ryusuke Konishi.
  */
  */

+ 1 - 10
fs/nilfs2/sufile.h

@@ -1,18 +1,9 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
 /*
 /*
  * sufile.h - NILFS segment usage file.
  * sufile.h - NILFS segment usage file.
  *
  *
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2006-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Koji Sato.
  * Written by Koji Sato.
  */
  */
 
 

+ 1 - 10
fs/nilfs2/super.c

@@ -1,18 +1,9 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
 /*
  * super.c - NILFS module and super block management.
  * super.c - NILFS module and super block management.
  *
  *
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Ryusuke Konishi.
  * Written by Ryusuke Konishi.
  */
  */
 /*
 /*

+ 1 - 10
fs/nilfs2/sysfs.c

@@ -1,19 +1,10 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
 /*
  * sysfs.c - sysfs support implementation.
  * sysfs.c - sysfs support implementation.
  *
  *
  * Copyright (C) 2005-2014 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2005-2014 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2014 HGST, Inc., a Western Digital Company.
  * Copyright (C) 2014 HGST, Inc., a Western Digital Company.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Vyacheslav Dubeyko <Vyacheslav.Dubeyko@hgst.com>
  * Written by Vyacheslav Dubeyko <Vyacheslav.Dubeyko@hgst.com>
  */
  */
 
 

+ 1 - 10
fs/nilfs2/sysfs.h

@@ -1,19 +1,10 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
 /*
 /*
  * sysfs.h - sysfs support declarations.
  * sysfs.h - sysfs support declarations.
  *
  *
  * Copyright (C) 2005-2014 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2005-2014 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2014 HGST, Inc., a Western Digital Company.
  * Copyright (C) 2014 HGST, Inc., a Western Digital Company.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Vyacheslav Dubeyko <Vyacheslav.Dubeyko@hgst.com>
  * Written by Vyacheslav Dubeyko <Vyacheslav.Dubeyko@hgst.com>
  */
  */
 
 

+ 1 - 10
fs/nilfs2/the_nilfs.c

@@ -1,18 +1,9 @@
+// SPDX-License-Identifier: GPL-2.0+
 /*
 /*
  * the_nilfs.c - the_nilfs shared structure.
  * the_nilfs.c - the_nilfs shared structure.
  *
  *
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Ryusuke Konishi.
  * Written by Ryusuke Konishi.
  *
  *
  */
  */

+ 1 - 10
fs/nilfs2/the_nilfs.h

@@ -1,18 +1,9 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
 /*
 /*
  * the_nilfs.h - the_nilfs shared structure.
  * the_nilfs.h - the_nilfs shared structure.
  *
  *
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  * Copyright (C) 2005-2008 Nippon Telegraph and Telephone Corporation.
  *
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
  * Written by Ryusuke Konishi.
  * Written by Ryusuke Konishi.
  *
  *
  */
  */

+ 1 - 1
include/uapi/linux/keyctl.h

@@ -65,7 +65,7 @@
 
 
 /* keyctl structures */
 /* keyctl structures */
 struct keyctl_dh_params {
 struct keyctl_dh_params {
-	__s32 private;
+	__s32 dh_private;
 	__s32 prime;
 	__s32 prime;
 	__s32 base;
 	__s32 base;
 };
 };

+ 1 - 0
ipc/shm.c

@@ -199,6 +199,7 @@ static inline struct shmid_kernel *shm_lock(struct ipc_namespace *ns, int id)
 	}
 	}
 
 
 	ipc_unlock_object(ipcp);
 	ipc_unlock_object(ipcp);
+	ipcp = ERR_PTR(-EIDRM);
 err:
 err:
 	rcu_read_unlock();
 	rcu_read_unlock();
 	/*
 	/*

+ 1 - 2
kernel/fork.c

@@ -550,8 +550,7 @@ static __latent_entropy int dup_mmap(struct mm_struct *mm,
 			goto out;
 			goto out;
 	}
 	}
 	/* a new mm has just been created */
 	/* a new mm has just been created */
-	arch_dup_mmap(oldmm, mm);
-	retval = 0;
+	retval = arch_dup_mmap(oldmm, mm);
 out:
 out:
 	up_write(&mm->mmap_sem);
 	up_write(&mm->mmap_sem);
 	flush_tlb_mm(oldmm);
 	flush_tlb_mm(oldmm);

+ 2 - 2
lib/Kconfig.debug

@@ -1277,13 +1277,13 @@ config WARN_ALL_UNSEEDED_RANDOM
 	  time.  This is really bad from a security perspective, and
 	  time.  This is really bad from a security perspective, and
 	  so architecture maintainers really need to do what they can
 	  so architecture maintainers really need to do what they can
 	  to get the CRNG seeded sooner after the system is booted.
 	  to get the CRNG seeded sooner after the system is booted.
-	  However, since users can not do anything actionble to
+	  However, since users cannot do anything actionable to
 	  address this, by default the kernel will issue only a single
 	  address this, by default the kernel will issue only a single
 	  warning for the first use of unseeded randomness.
 	  warning for the first use of unseeded randomness.
 
 
 	  Say Y here if you want to receive warnings for all uses of
 	  Say Y here if you want to receive warnings for all uses of
 	  unseeded randomness.  This will be of use primarily for
 	  unseeded randomness.  This will be of use primarily for
-	  those developers interersted in improving the security of
+	  those developers interested in improving the security of
 	  Linux kernels running on their architecture (or
 	  Linux kernels running on their architecture (or
 	  subarchitecture).
 	  subarchitecture).
 
 

+ 2 - 2
mm/huge_memory.c

@@ -821,11 +821,11 @@ vm_fault_t vmf_insert_pfn_pud(struct vm_area_struct *vma, unsigned long addr,
 	 * but we need to be consistent with PTEs and architectures that
 	 * but we need to be consistent with PTEs and architectures that
 	 * can't support a 'special' bit.
 	 * can't support a 'special' bit.
 	 */
 	 */
-	BUG_ON(!(vma->vm_flags & (VM_PFNMAP|VM_MIXEDMAP)));
+	BUG_ON(!(vma->vm_flags & (VM_PFNMAP|VM_MIXEDMAP)) &&
+			!pfn_t_devmap(pfn));
 	BUG_ON((vma->vm_flags & (VM_PFNMAP|VM_MIXEDMAP)) ==
 	BUG_ON((vma->vm_flags & (VM_PFNMAP|VM_MIXEDMAP)) ==
 						(VM_PFNMAP|VM_MIXEDMAP));
 						(VM_PFNMAP|VM_MIXEDMAP));
 	BUG_ON((vma->vm_flags & VM_PFNMAP) && is_cow_mapping(vma->vm_flags));
 	BUG_ON((vma->vm_flags & VM_PFNMAP) && is_cow_mapping(vma->vm_flags));
-	BUG_ON(!pfn_t_devmap(pfn));
 
 
 	if (addr < vma->vm_start || addr >= vma->vm_end)
 	if (addr < vma->vm_start || addr >= vma->vm_end)
 		return VM_FAULT_SIGBUS;
 		return VM_FAULT_SIGBUS;

+ 5 - 4
mm/kmemleak.c

@@ -2097,6 +2097,11 @@ static int __init kmemleak_late_init(void)
 
 
 	kmemleak_initialized = 1;
 	kmemleak_initialized = 1;
 
 
+	dentry = debugfs_create_file("kmemleak", 0644, NULL, NULL,
+				     &kmemleak_fops);
+	if (!dentry)
+		pr_warn("Failed to create the debugfs kmemleak file\n");
+
 	if (kmemleak_error) {
 	if (kmemleak_error) {
 		/*
 		/*
 		 * Some error occurred and kmemleak was disabled. There is a
 		 * Some error occurred and kmemleak was disabled. There is a
@@ -2108,10 +2113,6 @@ static int __init kmemleak_late_init(void)
 		return -ENOMEM;
 		return -ENOMEM;
 	}
 	}
 
 
-	dentry = debugfs_create_file("kmemleak", 0644, NULL, NULL,
-				     &kmemleak_fops);
-	if (!dentry)
-		pr_warn("Failed to create the debugfs kmemleak file\n");
 	mutex_lock(&scan_mutex);
 	mutex_lock(&scan_mutex);
 	start_scan_thread();
 	start_scan_thread();
 	mutex_unlock(&scan_mutex);
 	mutex_unlock(&scan_mutex);

+ 0 - 2
mm/memcontrol.c

@@ -1701,8 +1701,6 @@ static enum oom_status mem_cgroup_oom(struct mem_cgroup *memcg, gfp_t mask, int
 	if (mem_cgroup_out_of_memory(memcg, mask, order))
 	if (mem_cgroup_out_of_memory(memcg, mask, order))
 		return OOM_SUCCESS;
 		return OOM_SUCCESS;
 
 
-	WARN(1,"Memory cgroup charge failed because of no reclaimable memory! "
-		"This looks like a misconfiguration or a kernel bug.");
 	return OOM_FAILED;
 	return OOM_FAILED;
 }
 }
 
 

+ 2 - 1
mm/memory_hotplug.c

@@ -1333,7 +1333,8 @@ static unsigned long scan_movable_pages(unsigned long start, unsigned long end)
 			if (__PageMovable(page))
 			if (__PageMovable(page))
 				return pfn;
 				return pfn;
 			if (PageHuge(page)) {
 			if (PageHuge(page)) {
-				if (page_huge_active(page))
+				if (hugepage_migration_supported(page_hstate(page)) &&
+				    page_huge_active(page))
 					return pfn;
 					return pfn;
 				else
 				else
 					pfn = round_up(pfn + 1,
 					pfn = round_up(pfn + 1,

+ 11 - 3
mm/oom_kill.c

@@ -522,6 +522,7 @@ bool __oom_reap_task_mm(struct mm_struct *mm)
 
 
 			tlb_gather_mmu(&tlb, mm, start, end);
 			tlb_gather_mmu(&tlb, mm, start, end);
 			if (mmu_notifier_invalidate_range_start_nonblock(mm, start, end)) {
 			if (mmu_notifier_invalidate_range_start_nonblock(mm, start, end)) {
+				tlb_finish_mmu(&tlb, start, end);
 				ret = false;
 				ret = false;
 				continue;
 				continue;
 			}
 			}
@@ -1103,10 +1104,17 @@ bool out_of_memory(struct oom_control *oc)
 	}
 	}
 
 
 	select_bad_process(oc);
 	select_bad_process(oc);
-	/* Found nothing?!?! Either we hang forever, or we panic. */
-	if (!oc->chosen && !is_sysrq_oom(oc) && !is_memcg_oom(oc)) {
+	/* Found nothing?!?! */
+	if (!oc->chosen) {
 		dump_header(oc, NULL);
 		dump_header(oc, NULL);
-		panic("Out of memory and no killable processes...\n");
+		pr_warn("Out of memory and no killable processes...\n");
+		/*
+		 * If we got here due to an actual allocation at the
+		 * system level, we cannot survive this and will enter
+		 * an endless loop in the allocator. Bail out now.
+		 */
+		if (!is_sysrq_oom(oc) && !is_memcg_oom(oc))
+			panic("System is deadlocked on memory\n");
 	}
 	}
 	if (oc->chosen && oc->chosen != (void *)-1UL)
 	if (oc->chosen && oc->chosen != (void *)-1UL)
 		oom_kill_process(oc, !is_memcg_oom(oc) ? "Out of memory" :
 		oom_kill_process(oc, !is_memcg_oom(oc) ? "Out of memory" :

+ 4 - 0
mm/page_alloc.c

@@ -7708,6 +7708,10 @@ bool has_unmovable_pages(struct zone *zone, struct page *page, int count,
 		 * handle each tail page individually in migration.
 		 * handle each tail page individually in migration.
 		 */
 		 */
 		if (PageHuge(page)) {
 		if (PageHuge(page)) {
+
+			if (!hugepage_migration_supported(page_hstate(page)))
+				goto unmovable;
+
 			iter = round_up(iter + 1, 1<<compound_order(page)) - 1;
 			iter = round_up(iter + 1, 1<<compound_order(page)) - 1;
 			continue;
 			continue;
 		}
 		}

+ 7 - 4
mm/util.c

@@ -435,11 +435,14 @@ void *kvmalloc_node(size_t size, gfp_t flags, int node)
 EXPORT_SYMBOL(kvmalloc_node);
 EXPORT_SYMBOL(kvmalloc_node);
 
 
 /**
 /**
- * kvfree - free memory allocated with kvmalloc
- * @addr: pointer returned by kvmalloc
+ * kvfree() - Free memory.
+ * @addr: Pointer to allocated memory.
  *
  *
- * If the memory is allocated from vmalloc area it is freed with vfree().
- * Otherwise kfree() is used.
+ * kvfree frees memory allocated by any of vmalloc(), kmalloc() or kvmalloc().
+ * It is slightly more efficient to use kfree() or vfree() if you are certain
+ * that you know which one to use.
+ *
+ * Context: Any context except NMI.
  */
  */
 void kvfree(const void *addr)
 void kvfree(const void *addr)
 {
 {

+ 2 - 1
scripts/checkpatch.pl

@@ -380,6 +380,7 @@ our $Attribute	= qr{
 			__noclone|
 			__noclone|
 			__deprecated|
 			__deprecated|
 			__read_mostly|
 			__read_mostly|
+			__ro_after_init|
 			__kprobes|
 			__kprobes|
 			$InitAttribute|
 			$InitAttribute|
 			____cacheline_aligned|
 			____cacheline_aligned|
@@ -3311,7 +3312,7 @@ sub process {
 			# known declaration macros
 			# known declaration macros
 		      $sline =~ /^\+\s+$declaration_macros/ ||
 		      $sline =~ /^\+\s+$declaration_macros/ ||
 			# start of struct or union or enum
 			# start of struct or union or enum
-		      $sline =~ /^\+\s+(?:union|struct|enum|typedef)\b/ ||
+		      $sline =~ /^\+\s+(?:static\s+)?(?:const\s+)?(?:union|struct|enum|typedef)\b/ ||
 			# start or end of block or continuation of declaration
 			# start or end of block or continuation of declaration
 		      $sline =~ /^\+\s+(?:$|[\{\}\.\#\"\?\:\(\[])/ ||
 		      $sline =~ /^\+\s+(?:$|[\{\}\.\#\"\?\:\(\[])/ ||
 			# bitfield continuation
 			# bitfield continuation

+ 1 - 1
security/keys/dh.c

@@ -300,7 +300,7 @@ long __keyctl_dh_compute(struct keyctl_dh_params __user *params,
 	}
 	}
 	dh_inputs.g_size = dlen;
 	dh_inputs.g_size = dlen;
 
 
-	dlen = dh_data_from_key(pcopy.private, &dh_inputs.key);
+	dlen = dh_data_from_key(pcopy.dh_private, &dh_inputs.key);
 	if (dlen < 0) {
 	if (dlen < 0) {
 		ret = dlen;
 		ret = dlen;
 		goto out2;
 		goto out2;

+ 0 - 6
tools/vm/page-types.c

@@ -159,12 +159,6 @@ static const char * const page_flag_names[] = {
 };
 };
 
 
 
 
-static const char * const debugfs_known_mountpoints[] = {
-	"/sys/kernel/debug",
-	"/debug",
-	0,
-};
-
 /*
 /*
  * data structures
  * data structures
  */
  */

+ 2 - 2
tools/vm/slabinfo.c

@@ -30,8 +30,8 @@ struct slabinfo {
 	int alias;
 	int alias;
 	int refs;
 	int refs;
 	int aliases, align, cache_dma, cpu_slabs, destroy_by_rcu;
 	int aliases, align, cache_dma, cpu_slabs, destroy_by_rcu;
-	int hwcache_align, object_size, objs_per_slab;
-	int sanity_checks, slab_size, store_user, trace;
+	unsigned int hwcache_align, object_size, objs_per_slab;
+	unsigned int sanity_checks, slab_size, store_user, trace;
 	int order, poison, reclaim_account, red_zone;
 	int order, poison, reclaim_account, red_zone;
 	unsigned long partial, objects, slabs, objects_partial, objects_total;
 	unsigned long partial, objects, slabs, objects_partial, objects_total;
 	unsigned long alloc_fastpath, alloc_slowpath;
 	unsigned long alloc_fastpath, alloc_slowpath;