All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrew Morton <akpm@linux-foundation.org>
To: amir73il@gmail.com, chris@chrisdown.name, hannes@cmpxchg.org,
	hughd@google.com, jlayton@kernel.org, mm-commits@vger.kernel.org,
	tj@kernel.org, viro@zeniv.linux.org.uk, willy@infradead.org
Subject: + tmpfs-support-64-bit-inums-per-sb.patch added to -mm tree
Date: Mon, 13 Jul 2020 17:31:19 -0700	[thread overview]
Message-ID: <20200714003119.wk1EJGg3P%akpm@linux-foundation.org> (raw)
In-Reply-To: <20200703151445.b6a0cfee402c7c5c4651f1b1@linux-foundation.org>


The patch titled
     Subject: tmpfs: support 64-bit inums per-sb
has been added to the -mm tree.  Its filename is
     tmpfs-support-64-bit-inums-per-sb.patch

This patch should soon appear at
    http://ozlabs.org/~akpm/mmots/broken-out/tmpfs-support-64-bit-inums-per-sb.patch
and later at
    http://ozlabs.org/~akpm/mmotm/broken-out/tmpfs-support-64-bit-inums-per-sb.patch

Before you just go and hit "reply", please:
   a) Consider who else should be cc'ed
   b) Prefer to cc a suitable mailing list as well
   c) Ideally: find the original patch on the mailing list and do a
      reply-to-all to that, adding suitable additional cc's

*** Remember to use Documentation/process/submit-checklist.rst when testing your code ***

The -mm tree is included into linux-next and is updated
there every 3-4 working days

------------------------------------------------------
From: Chris Down <chris@chrisdown.name>
Subject: tmpfs: support 64-bit inums per-sb

The default is still set to inode32 for backwards compatibility, but
system administrators can opt in to the new 64-bit inode numbers by
either:

1. Passing inode64 on the command line when mounting, or
2. Configuring the kernel with CONFIG_TMPFS_INODE64=y

The inode64 and inode32 names are used based on existing precedent from
XFS.

Link: http://lkml.kernel.org/r/8b23758d0c66b5e2263e08baf9c4b6a7565cbd8f.1594661218.git.chris@chrisdown.name
Signed-off-by: Chris Down <chris@chrisdown.name>
Reviewed-by: Amir Goldstein <amir73il@gmail.com>
Cc: Hugh Dickins <hughd@google.com>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: Matthew Wilcox <willy@infradead.org>
Cc: Jeff Layton <jlayton@kernel.org>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Tejun Heo <tj@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---

 Documentation/filesystems/tmpfs.rst |   11 ++++
 fs/Kconfig                          |   15 ++++++
 include/linux/shmem_fs.h            |    1 
 mm/shmem.c                          |   65 +++++++++++++++++++++++++-
 4 files changed, 90 insertions(+), 2 deletions(-)

--- a/Documentation/filesystems/tmpfs.rst~tmpfs-support-64-bit-inums-per-sb
+++ a/Documentation/filesystems/tmpfs.rst
@@ -150,6 +150,15 @@ These options do not have any effect on
 parameters with chmod(1), chown(1) and chgrp(1) on a mounted filesystem.
 
 
+tmpfs has a mount option to select whether it will wrap at 32- or 64-bit inode
+numbers:
+
+inode64   Use 64-bit inode numbers
+inode32   Use 32-bit inode numbers
+
+On 64-bit, the default is set by CONFIG_TMPFS_INODE64. On 32-bit, inode64 is
+not legal and will produce an error at mount time.
+
 So 'mount -t tmpfs -o size=10G,nr_inodes=10k,mode=700 tmpfs /mytmpfs'
 will give you tmpfs instance on /mytmpfs which can allocate 10GB
 RAM/SWAP in 10240 inodes and it is only accessible by root.
@@ -161,3 +170,5 @@ RAM/SWAP in 10240 inodes and it is only
    Hugh Dickins, 4 June 2007
 :Updated:
    KOSAKI Motohiro, 16 Mar 2010
+Updated:
+   Chris Down, 13 July 2020
--- a/fs/Kconfig~tmpfs-support-64-bit-inums-per-sb
+++ a/fs/Kconfig
@@ -201,6 +201,21 @@ config TMPFS_XATTR
 
 	  If unsure, say N.
 
+config TMPFS_INODE64
+	bool "Use 64-bit ino_t by default in tmpfs"
+	depends on TMPFS && 64BIT
+	default n
+	help
+	  tmpfs has historically used only inode numbers as wide as an unsigned
+	  int. In some cases this can cause wraparound, potentially resulting in
+	  multiple files with the same inode number on a single device. This option
+	  makes tmpfs use the full width of ino_t by default, similarly to the
+	  inode64 mount option.
+
+	  To override this default, use the inode32 or inode64 mount options.
+
+	  If unsure, say N.
+
 config HUGETLBFS
 	bool "HugeTLB file system support"
 	depends on X86 || IA64 || SPARC64 || (S390 && 64BIT) || \
--- a/include/linux/shmem_fs.h~tmpfs-support-64-bit-inums-per-sb
+++ a/include/linux/shmem_fs.h
@@ -36,6 +36,7 @@ struct shmem_sb_info {
 	unsigned char huge;	    /* Whether to try for hugepages */
 	kuid_t uid;		    /* Mount uid for root directory */
 	kgid_t gid;		    /* Mount gid for root directory */
+	bool full_inums;	    /* If i_ino should be uint or ino_t */
 	ino_t next_ino;		    /* The next per-sb inode number to use */
 	ino_t __percpu *ino_batch;  /* The next per-cpu inode number to use */
 	struct mempolicy *mpol;     /* default memory policy for mappings */
--- a/mm/shmem.c~tmpfs-support-64-bit-inums-per-sb
+++ a/mm/shmem.c
@@ -114,11 +114,13 @@ struct shmem_options {
 	kuid_t uid;
 	kgid_t gid;
 	umode_t mode;
+	bool full_inums;
 	int huge;
 	int seen;
 #define SHMEM_SEEN_BLOCKS 1
 #define SHMEM_SEEN_INODES 2
 #define SHMEM_SEEN_HUGE 4
+#define SHMEM_SEEN_INUMS 8
 };
 
 #ifdef CONFIG_TMPFS
@@ -286,12 +288,17 @@ static int shmem_reserve_inode(struct su
 			ino = sbinfo->next_ino++;
 			if (unlikely(is_zero_ino(ino)))
 				ino = sbinfo->next_ino++;
-			if (unlikely(ino > UINT_MAX)) {
+			if (unlikely(!sbinfo->full_inums &&
+				     ino > UINT_MAX)) {
 				/*
 				 * Emulate get_next_ino uint wraparound for
 				 * compatibility
 				 */
-				ino = 1;
+				if (IS_ENABLED(CONFIG_64BIT))
+					pr_warn("%s: inode number overflow on device %d, consider using inode64 mount option\n",
+						__func__, MINOR(sb->s_dev));
+				sbinfo->next_ino = 1;
+				ino = sbinfo->next_ino++;
 			}
 			*inop = ino;
 		}
@@ -304,6 +311,10 @@ static int shmem_reserve_inode(struct su
 		 * unknown contexts. As such, use a per-cpu batched allocator
 		 * which doesn't require the per-sb stat_lock unless we are at
 		 * the batch boundary.
+		 *
+		 * We don't need to worry about inode{32,64} since SB_KERNMOUNT
+		 * shmem mounts are not exposed to userspace, so we don't need
+		 * to worry about things like glibc compatibility.
 		 */
 		ino_t *next_ino;
 		next_ino = per_cpu_ptr(sbinfo->ino_batch, get_cpu());
@@ -3397,6 +3408,8 @@ enum shmem_param {
 	Opt_nr_inodes,
 	Opt_size,
 	Opt_uid,
+	Opt_inode32,
+	Opt_inode64,
 };
 
 static const struct constant_table shmem_param_enums_huge[] = {
@@ -3416,6 +3429,8 @@ const struct fs_parameter_spec shmem_fs_
 	fsparam_string("nr_inodes",	Opt_nr_inodes),
 	fsparam_string("size",		Opt_size),
 	fsparam_u32   ("uid",		Opt_uid),
+	fsparam_flag  ("inode32",	Opt_inode32),
+	fsparam_flag  ("inode64",	Opt_inode64),
 	{}
 };
 
@@ -3487,6 +3502,18 @@ static int shmem_parse_one(struct fs_con
 			break;
 		}
 		goto unsupported_parameter;
+	case Opt_inode32:
+		ctx->full_inums = false;
+		ctx->seen |= SHMEM_SEEN_INUMS;
+		break;
+	case Opt_inode64:
+		if (sizeof(ino_t) < 8) {
+			return invalfc(fc,
+				       "Cannot use inode64 with <64bit inums in kernel\n");
+		}
+		ctx->full_inums = true;
+		ctx->seen |= SHMEM_SEEN_INUMS;
+		break;
 	}
 	return 0;
 
@@ -3578,8 +3605,16 @@ static int shmem_reconfigure(struct fs_c
 		}
 	}
 
+	if ((ctx->seen & SHMEM_SEEN_INUMS) && !ctx->full_inums &&
+	    sbinfo->next_ino > UINT_MAX) {
+		err = "Current inum too high to switch to 32-bit inums";
+		goto out;
+	}
+
 	if (ctx->seen & SHMEM_SEEN_HUGE)
 		sbinfo->huge = ctx->huge;
+	if (ctx->seen & SHMEM_SEEN_INUMS)
+		sbinfo->full_inums = ctx->full_inums;
 	if (ctx->seen & SHMEM_SEEN_BLOCKS)
 		sbinfo->max_blocks  = ctx->blocks;
 	if (ctx->seen & SHMEM_SEEN_INODES) {
@@ -3619,6 +3654,29 @@ static int shmem_show_options(struct seq
 	if (!gid_eq(sbinfo->gid, GLOBAL_ROOT_GID))
 		seq_printf(seq, ",gid=%u",
 				from_kgid_munged(&init_user_ns, sbinfo->gid));
+
+	/*
+	 * Showing inode{64,32} might be useful even if it's the system default,
+	 * since then people don't have to resort to checking both here and
+	 * /proc/config.gz to confirm 64-bit inums were successfully applied
+	 * (which may not even exist if IKCONFIG_PROC isn't enabled).
+	 *
+	 * We hide it when inode64 isn't the default and we are using 32-bit
+	 * inodes, since that probably just means the feature isn't even under
+	 * consideration.
+	 *
+	 * As such:
+	 *
+	 *                     +-----------------+-----------------+
+	 *                     | TMPFS_INODE64=y | TMPFS_INODE64=n |
+	 *  +------------------+-----------------+-----------------+
+	 *  | full_inums=true  | show            | show            |
+	 *  | full_inums=false | show            | hide            |
+	 *  +------------------+-----------------+-----------------+
+	 *
+	 */
+	if (IS_ENABLED(CONFIG_TMPFS_INODE64) || sbinfo->full_inums)
+		seq_printf(seq, ",inode%d", (sbinfo->full_inums ? 64 : 32));
 #ifdef CONFIG_TRANSPARENT_HUGEPAGE
 	/* Rightly or wrongly, show huge mount option unmasked by shmem_huge */
 	if (sbinfo->huge)
@@ -3667,6 +3725,8 @@ static int shmem_fill_super(struct super
 			ctx->blocks = shmem_default_max_blocks();
 		if (!(ctx->seen & SHMEM_SEEN_INODES))
 			ctx->inodes = shmem_default_max_inodes();
+		if (!(ctx->seen & SHMEM_SEEN_INUMS))
+			ctx->full_inums = IS_ENABLED(CONFIG_TMPFS_INODE64);
 	} else {
 		sb->s_flags |= SB_NOUSER;
 	}
@@ -3684,6 +3744,7 @@ static int shmem_fill_super(struct super
 	}
 	sbinfo->uid = ctx->uid;
 	sbinfo->gid = ctx->gid;
+	sbinfo->full_inums = ctx->full_inums;
 	sbinfo->mode = ctx->mode;
 	sbinfo->huge = ctx->huge;
 	sbinfo->mpol = ctx->mpol;
_

Patches currently in -mm which might be from chris@chrisdown.name are

tmpfs-per-superblock-i_ino-support.patch
tmpfs-support-64-bit-inums-per-sb.patch


  parent reply	other threads:[~2020-07-14  0:31 UTC|newest]

Thread overview: 261+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-07-03 22:14 incoming Andrew Morton
2020-07-03 22:15 ` [patch 1/5] mm/hugetlb.c: fix pages per hugetlb calculation Andrew Morton
2020-07-03 22:15 ` [patch 2/5] samples/vfs: avoid warning in statx override Andrew Morton
2020-07-03 22:15 ` [patch 3/5] mm/cma.c: use exact_nid true to fix possible per-numa cma leak Andrew Morton
2020-07-03 22:15 ` [patch 4/5] vmalloc: fix the owner argument for the new __vmalloc_node_range callers Andrew Morton
2020-07-03 22:15 ` [patch 5/5] mm/page_alloc: fix documentation error Andrew Morton
2020-07-06 22:41 ` + kasan-remove-kasan_unpoison_stack_above_sp_to.patch added to -mm tree Andrew Morton
2020-07-06 22:41   ` Andrew Morton
2020-07-06 22:46 ` + kasan-fix-kasan-unit-tests-for-tag-based-kasan.patch " Andrew Morton
2020-07-06 22:49 ` + lib-test_bitops-do-the-full-test-during-module-init.patch " Andrew Morton
2020-07-06 23:03 ` [nacked] mm-mremap-format-the-check-in-move_normal_pmd-same-as-move_huge_pmd.patch removed from " Andrew Morton
2020-07-06 23:03 ` [to-be-updated] mm-mremap-it-is-sure-to-have-enough-space-when-extent-meets-requirement.patch " Andrew Morton
2020-07-06 23:03 ` [to-be-updated] mm-mremap-calculate-extent-in-one-place.patch " Andrew Morton
2020-07-06 23:04 ` [to-be-updated] mm-mremap-start-addresses-are-properly-aligned.patch " Andrew Morton
2020-07-06 23:04   ` Andrew Morton
2020-07-06 23:15 ` + mm-page_alloc-skip-setting-nodemask-when-we-are-in-interrupt.patch added to " Andrew Morton
2020-07-06 23:28 ` + mm-debug_vm_pgtable-add-tests-validating-arch-helpers-for-core-mm-features.patch " Andrew Morton
2020-07-06 23:28 ` + mm-debug_vm_pgtable-add-tests-validating-advanced-arch-page-table-helpers.patch " Andrew Morton
2020-07-06 23:28 ` + mm-debug_vm_pgtable-add-debug-prints-for-individual-tests.patch " Andrew Morton
2020-07-06 23:28 ` + documentation-mm-add-descriptions-for-arch-page-table-helpers.patch " Andrew Morton
2020-07-06 23:33 ` [merged] slub-drop-lockdep_assert_held-from-put_map.patch removed from " Andrew Morton
2020-07-06 23:33   ` Andrew Morton
2020-07-06 23:34 ` + slub-drop-lockdep_assert_held-from-put_map.patch added to " Andrew Morton
2020-07-06 23:34   ` Andrew Morton
2020-07-06 23:34 ` [merged] mailmap-add-entry-for-obsolete-email-address.patch removed from " Andrew Morton
2020-07-06 23:36 ` + mm-mmap-optimize-a-branch-judgment-in-ksys_mmap_pgoff.patch added to " Andrew Morton
2020-07-06 23:50 ` + vfs-xattr-mm-shmem-kernfs-release-simple-xattr-entry-in-a-right-way.patch " Andrew Morton
2020-07-06 23:52 ` [to-be-updated] mm-slab-check-gfp_slab_bug_mask-before-alloc_pages-in-kmalloc_order.patch removed from " Andrew Morton
2020-07-06 23:53 ` + mm-slab-check-gfp_slab_bug_mask-before-alloc_pages-in-kmalloc_order.patch added to " Andrew Morton
2020-07-07  1:53 ` mmotm 2020-07-06-18-53 uploaded Andrew Morton
2020-07-07  5:44   ` mmotm 2020-07-06-18-53 uploaded (sound/soc/amd/renoir/rn-pci-acp3x.c:) Randy Dunlap
2020-07-07  6:15     ` Mukunda,Vijendar
2020-07-07  6:08       ` Randy Dunlap
2020-07-07 10:50         ` Mukunda,Vijendar
2020-07-07 19:17 ` + mm-avoid-access-flag-update-tlb-flush-for-retried-page-fault.patch added to -mm tree Andrew Morton
2020-07-07 19:20 ` + mm-memcg-slab-remove-unused-argument-by-charge_slab_page.patch " Andrew Morton
2020-07-07 19:20 ` + mm-slab-rename-uncharge_slab_page-to-unaccount_slab_page.patch " Andrew Morton
2020-07-07 19:20 ` + mm-kmem-switch-to-static_branch_likely-in-memcg_kmem_enabled.patch " Andrew Morton
2020-07-07 19:25 ` + fs-minix-check-return-value-of-sb_getblk.patch " Andrew Morton
2020-07-07 19:25 ` + fs-minix-dont-allow-getting-deleted-inodes.patch " Andrew Morton
2020-07-07 19:25 ` + fs-minix-reject-too-large-maximum-file-size.patch " Andrew Morton
2020-07-07 19:25 ` + fs-minix-set-s_maxbytes-correctly.patch " Andrew Morton
2020-07-07 19:25 ` + fs-minix-fix-block-limit-check-for-v1-filesystems.patch " Andrew Morton
2020-07-07 19:25 ` + fs-minix-remove-expected-error-message-in-block_to_path.patch " Andrew Morton
2020-07-07 19:27 ` + mm-vmalloc-remove-redundant-asignmnet-in-unmap_kernel_range_noflush.patch " Andrew Morton
2020-07-07 19:28 ` + mm-zswap-move-to-use-crypto_acomp-api-for-hardware-acceleration.patch " Andrew Morton
2020-07-07 19:36 ` + kthread-remove-incorrect-comment-in-kthread_create_on_cpu.patch " Andrew Morton
2020-07-07 19:37 ` + lib-test_lockupc-make-symbol-test_works-static.patch " Andrew Morton
2020-07-07 19:39 ` [failures] kthread-work-could-not-be-queued-when-worker-being-destroyed.patch removed from " Andrew Morton
2020-07-07 19:47 ` [to-be-updated] mm-page_isolation-prefer-the-node-of-the-source-page.patch " Andrew Morton
2020-07-07 19:47 ` [to-be-updated] mm-migrate-move-migration-helper-from-h-to-c.patch " Andrew Morton
2020-07-07 19:47 ` [to-be-updated] mm-hugetlb-unify-migration-callbacks.patch " Andrew Morton
2020-07-07 19:47 ` [to-be-updated] mm-hugetlb-make-hugetlb-migration-callback-cma-aware.patch " Andrew Morton
2020-07-07 19:47 ` [to-be-updated] mm-migrate-make-a-standard-migration-target-allocation-function.patch " Andrew Morton
2020-07-07 19:47 ` [to-be-updated] mm-gup-use-a-standard-migration-target-allocation-callback.patch " Andrew Morton
2020-07-07 19:47 ` [to-be-updated] mm-mempolicy-use-a-standard-migration-target-allocation-callback.patch " Andrew Morton
2020-07-07 19:47 ` [to-be-updated] mm-page_alloc-remove-a-wrapper-for-alloc_migration_target.patch " Andrew Morton
2020-07-07 19:47   ` Andrew Morton
2020-07-07 19:56 ` + mm-hugetlb-avoid-hardcoding-while-checking-if-cma-is-enable.patch added to " Andrew Morton
2020-07-07 20:11 ` [folded-merged] mm-vmstat-add-events-for-pmd-based-thp-migration-without-split-fix.patch removed from " Andrew Morton
2020-07-07 20:11 ` [folded-merged] mm-vmstat-add-events-for-pmd-based-thp-migration-without-split-update.patch " Andrew Morton
2020-07-07 20:12 ` [to-be-updated] mm-vmstat-add-events-for-pmd-based-thp-migration-without-split.patch " Andrew Morton
2020-07-07 20:13 ` + mm-vmstat-add-events-for-thp-migration-without-split.patch added to " Andrew Morton
2020-07-07 22:18 ` + mm-memcg-fix-refcount-error-while-moving-and-swapping.patch " Andrew Morton
2020-07-08 21:48 ` + vfat-fat-msdos-filesystem-replace-http-links-with-https-ones.patch " Andrew Morton
2020-07-08 21:50 ` + kbuild-move-wtype-limits-to-w=2.patch " Andrew Morton
2020-07-08 22:17 ` [to-be-updated] mm-zswap-move-to-use-crypto_acomp-api-for-hardware-acceleration.patch removed from " Andrew Morton
2020-07-08 22:20 ` + mm-remove-unneeded-includes-of-asm-pgalloch-fix.patch added to " Andrew Morton
2020-07-08 22:25 ` + kasan-fix-kasan-unit-tests-for-tag-based-kasan-v4.patch " Andrew Morton
2020-07-08 23:12 ` + mailmap-add-entry-for-mike-rapoport.patch " Andrew Morton
2020-07-08 23:16 ` + mm-mremap-it-is-sure-to-have-enough-space-when-extent-meets-requirement.patch " Andrew Morton
2020-07-08 23:16 ` + mm-mremap-calculate-extent-in-one-place.patch " Andrew Morton
2020-07-08 23:16 ` + mm-mremap-start-addresses-are-properly-aligned.patch " Andrew Morton
2020-07-08 23:16   ` Andrew Morton
2020-07-08 23:16 ` + mm-mremap-use-pmd_addr_end-to-simplify-the-calculate-of-extent.patch " Andrew Morton
2020-07-08 23:41 ` + mm-swap-simplify-alloc_swap_slot_cache.patch " Andrew Morton
2020-07-08 23:41 ` + mm-swap-simplify-enable_swap_slots_cache.patch " Andrew Morton
2020-07-08 23:41 ` + mm-swap-remove-redundant-check-for-swap_slot_cache_initialized.patch " Andrew Morton
2020-07-09  0:06 ` + mm-do-page-fault-accounting-in-handle_mm_fault.patch " Andrew Morton
2020-07-09  0:06   ` Andrew Morton
2020-07-09  0:06 ` + mm-alpha-use-general-page-fault-accounting.patch " Andrew Morton
2020-07-09  0:06 ` + mm-arc-use-general-page-fault-accounting.patch " Andrew Morton
2020-07-09  0:06 ` + mm-arm-use-general-page-fault-accounting.patch " Andrew Morton
2020-07-09  0:06 ` + mm-arm64-use-general-page-fault-accounting.patch " Andrew Morton
2020-07-09  0:06 ` + mm-csky-use-general-page-fault-accounting.patch " Andrew Morton
2020-07-09  0:06 ` + mm-hexagon-use-general-page-fault-accounting.patch " Andrew Morton
2020-07-09  0:06 ` + mm-ia64-use-general-page-fault-accounting.patch " Andrew Morton
2020-07-09  0:06 ` + mm-m68k-use-general-page-fault-accounting.patch " Andrew Morton
2020-07-09  0:06 ` + mm-microblaze-use-general-page-fault-accounting.patch " Andrew Morton
2020-07-09  0:06 ` + mm-mips-use-general-page-fault-accounting.patch " Andrew Morton
2020-07-09  0:07 ` + mm-nds32-use-general-page-fault-accounting.patch " Andrew Morton
2020-07-09  0:07 ` + mm-nios2-use-general-page-fault-accounting.patch " Andrew Morton
2020-07-09  0:07 ` + mm-openrisc-use-general-page-fault-accounting.patch " Andrew Morton
2020-07-09  0:07 ` + mm-parisc-use-general-page-fault-accounting.patch " Andrew Morton
2020-07-09  0:07 ` + mm-powerpc-use-general-page-fault-accounting.patch " Andrew Morton
2020-07-09  0:07 ` + mm-riscv-use-general-page-fault-accounting.patch " Andrew Morton
2020-07-09  0:07 ` + mm-s390-use-general-page-fault-accounting.patch " Andrew Morton
2020-07-09  0:07 ` + mm-sh-use-general-page-fault-accounting.patch " Andrew Morton
2020-07-09  0:07 ` + mm-sparc32-use-general-page-fault-accounting.patch " Andrew Morton
2020-07-09  0:07 ` + mm-sparc64-use-general-page-fault-accounting.patch " Andrew Morton
2020-07-09  0:07 ` + mm-x86-use-general-page-fault-accounting.patch " Andrew Morton
2020-07-09  0:07 ` + mm-xtensa-use-general-page-fault-accounting.patch " Andrew Morton
2020-07-09  0:07 ` + mm-clean-up-the-last-pieces-of-page-fault-accountings.patch " Andrew Morton
2020-07-09  0:07   ` Andrew Morton
2020-07-09  0:07 ` + mm-gup-remove-task_struct-pointer-for-all-gup-code.patch " Andrew Morton
2020-07-09  2:04 ` + mm-vmstat-add-events-for-thp-migration-without-split-fix.patch " Andrew Morton
2020-07-09  2:29 ` mmotm 2020-07-08-19-28 uploaded Andrew Morton
2020-07-09  3:47   ` mmotm 2020-07-08-19-28 uploaded (mm/migrate.c) Randy Dunlap
2020-07-09  3:56     ` Anshuman Khandual
2020-07-09  2:29 ` mmotm 2020-07-08-19-28 uploaded Andrew Morton
2020-07-09 23:09 ` + mm-handle-page-mapping-better-in-dump_page.patch added to -mm tree Andrew Morton
2020-07-09 23:09 ` + mm-dump-compound-page-information-on-a-second-line.patch " Andrew Morton
2020-07-09 23:09 ` + mm-print-head-flags-in-dump_page.patch " Andrew Morton
2020-07-09 23:09 ` + mm-switch-dump_page-to-get_kernel_nofault.patch " Andrew Morton
2020-07-09 23:09 ` + mm-print-the-inode-number-in-dump_page.patch " Andrew Morton
2020-07-09 23:09 ` + mm-print-hashed-address-of-struct-page.patch " Andrew Morton
2020-07-09 23:10 ` + mm-memcontrol-avoid-workload-stalls-when-lowering-memoryhigh.patch " Andrew Morton
2020-07-09 23:46 ` + mm-migrate-optimize-migrate_vma_setup-for-holes.patch " Andrew Morton
2020-07-09 23:46 ` + mm-migrate-add-migrate-shared-test-for-migrate_vma_.patch " Andrew Morton
2020-07-10  0:15 ` + mm-oom-make-the-calculation-of-oom-badness-more-accurate.patch " Andrew Morton
2020-07-10  0:23 ` + mm-close-race-between-munmap-and-expand_upwards-downwards.patch " Andrew Morton
2020-07-10  0:23 ` + mm-close-race-between-munmap-and-expand_upwards-downwards-fix.patch " Andrew Morton
2020-07-10  0:27 ` + mm-vmstat-add-events-for-thp-migration-without-split-fix-2.patch " Andrew Morton
2020-07-10  0:33 ` + iomap-constify-ioreadx-iomem-argument-as-in-generic-implementation.patch " Andrew Morton
2020-07-10  0:33 ` + rtl818x-constify-ioreadx-iomem-argument-as-in-generic-implementation.patch " Andrew Morton
2020-07-10  0:33 ` + ntb-intel-constify-ioreadx-iomem-argument-as-in-generic-implementation.patch " Andrew Morton
2020-07-10  0:33 ` + virtio-pci-constify-ioreadx-iomem-argument-as-in-generic-implementation.patch " Andrew Morton
2020-07-10  0:36 ` + doc-mm-sync-up-oom_score_adj-documentation.patch " Andrew Morton
2020-07-10  0:36   ` Andrew Morton
2020-07-10  0:36 ` + doc-mm-clarify-proc-pid-oom_score-value-range.patch " Andrew Morton
2020-07-10  0:38 ` [to-be-updated] proc-meminfo-avoid-open-coded-reading-of-vm_committed_as.patch removed from " Andrew Morton
2020-07-10  0:38 ` [to-be-updated] mm-utilc-make-vm_memory_committed-more-accurate.patch " Andrew Morton
2020-07-10  0:38 ` [to-be-updated] mm-adjust-vm_committed_as_batch-according-to-vm-overcommit-policy.patch " Andrew Morton
2020-07-10  4:00 ` mmotm 2020-07-09-21-00 uploaded Andrew Morton
2020-07-10 17:40   ` mmotm 2020-07-09-21-00 uploaded (drivers/net/ethernet/mellanox/mlx5/core/en_main.c) Randy Dunlap
2020-07-13  4:02     ` Stephen Rothwell
2020-07-13  4:17       ` Randy Dunlap
2020-07-14 23:58         ` Saeed Mahameed
2020-07-10 23:27 ` [to-be-updated] mm-hugetlb-avoid-hardcoding-while-checking-if-cma-is-enable.patch removed from -mm tree Andrew Morton
2020-07-10 23:29 ` + mm-hugetlb-avoid-hardcoding-while-checking-if-cma-is-enabled.patch added to " Andrew Morton
2020-07-10 23:32 ` + proc-sysctl-make-protected_-world-readable.patch " Andrew Morton
2020-07-10 23:32 ` [to-be-updated] mm-vmallocc-add-an-error-message-if-two-areas-overlap.patch removed from " Andrew Morton
2020-07-10 23:35 ` + rapidio-rio_mport_cdev-use-array_size-helper-in-copy_fromto_user.patch added to " Andrew Morton
2020-07-14  0:19 ` + mm-vmscan-consistent-update-to-pgrefill.patch " Andrew Morton
2020-07-14  0:24 ` + mm-handle-page-mapping-better-in-dump_page-fix.patch " Andrew Morton
2020-07-14  0:31 ` + tmpfs-per-superblock-i_ino-support.patch " Andrew Morton
2020-07-14  0:31 ` Andrew Morton [this message]
2020-07-14  0:50 ` + mm-thp-replace-http-links-with-https-ones.patch " Andrew Morton
2020-07-14  1:00 ` + mm-memcg-reclaim-more-aggressively-before-high-allocator-throttling.patch " Andrew Morton
2020-07-14  1:00 ` + mm-memcg-unify-reclaim-retry-limits-with-page-allocator.patch " Andrew Morton
2020-07-14  1:03 ` + mm-memcg-avoid-stale-protection-values-when-cgroup-is-above-protection.patch " Andrew Morton
2020-07-14  1:03 ` + mm-memcg-decouple-elowmin-state-mutations-from-protection-checks.patch " Andrew Morton
2020-07-14  1:10 ` + scripts-deprecated_terms-sync-with-inclusive-terms.patch " Andrew Morton
2020-07-14  1:21 ` + mm-page_isolation-prefer-the-node-of-the-source-page.patch " Andrew Morton
2020-07-14  1:21 ` + mm-migrate-move-migration-helper-from-h-to-c.patch " Andrew Morton
2020-07-14  1:21 ` + mm-hugetlb-unify-migration-callbacks.patch " Andrew Morton
2020-07-14  1:21 ` + mm-migrate-clear-__gfp_reclaim-to-make-the-migration-callback-consistent-with-regular-thp-allocations.patch " Andrew Morton
2020-07-14  1:21 ` + mm-migrate-clear-__gfp_reclaim-to-make-the-migration-callback-consistent-with-regular-thp-allocations-fix.patch " Andrew Morton
2020-07-14  1:21 ` + mm-migrate-make-a-standard-migration-target-allocation-function.patch " Andrew Morton
2020-07-14  1:21 ` + mm-mempolicy-use-a-standard-migration-target-allocation-callback.patch " Andrew Morton
2020-07-14  1:21 ` + mm-page_alloc-remove-a-wrapper-for-alloc_migration_target.patch " Andrew Morton
2020-07-14  1:21 ` + mm-memory-failure-remove-a-wrapper-for-alloc_migration_target.patch " Andrew Morton
2020-07-14  1:22 ` + mm-memory_hotplug-remove-a-wrapper-for-alloc_migration_target.patch " Andrew Morton
2020-07-14  1:30 ` + mm-debug_vm_pgtable-add-tests-validating-advanced-arch-page-table-helpers-v5.patch " Andrew Morton
2020-07-14  1:30 ` + documentation-mm-add-descriptions-for-arch-page-table-helpers-v5.patch " Andrew Morton
2020-07-14  1:37 ` + mm-sparse-cleanup-the-code-surrounding-memory_present.patch " Andrew Morton
2020-07-14  1:38 ` + const_structscheckpatch-add-regulator_ops.patch " Andrew Morton
2020-07-14  1:40 ` + fat-fix-fat_ra_init-for-data-clusters-==-0.patch " Andrew Morton
2020-07-14  1:41 ` + mm-vmallocc-remove-bug-from-the-find_va_links.patch " Andrew Morton
2020-07-14  2:49 ` mmotm 2020-07-13-19-49 uploaded Andrew Morton
2020-07-16  0:41 ` + mm-avoid-access-flag-update-tlb-flush-for-retried-page-fault-v2.patch added to -mm tree Andrew Morton
2020-07-16  0:42 ` + fs-ufs-avoid-potential-u32-multiplication-overflow.patch " Andrew Morton
2020-07-16  0:50 ` + x86-mm-use-max-memory-block-size-on-bare-metal-v3.patch " Andrew Morton
2020-07-16 21:28 ` + mm-memcg-slab-fix-memory-leak-at-non-root-kmem_cache-destroy.patch " Andrew Morton
2020-07-16 21:45 ` + mmhwpoison-cleanup-unused-pagehuge-check.patch " Andrew Morton
2020-07-16 21:45 ` + mm-hwpoison-remove-recalculating-hpage.patch " Andrew Morton
2020-07-16 21:45 ` + mmmadvise-call-soft_offline_page-without-mf_count_increased.patch " Andrew Morton
2020-07-16 21:45 ` + mmmadvise-refactor-madvise_inject_error.patch " Andrew Morton
2020-07-16 21:45 ` + mmhwpoison-inject-dont-pin-for-hwpoison_filter.patch " Andrew Morton
2020-07-16 21:46 ` + mmhwpoison-un-export-get_hwpoison_page-and-make-it-static.patch " Andrew Morton
2020-07-16 21:46 ` + mmhwpoison-kill-put_hwpoison_page.patch " Andrew Morton
2020-07-16 21:46 ` + mmhwpoison-remove-mf_count_increased.patch " Andrew Morton
2020-07-16 21:46 ` + mmhwpoison-remove-flag-argument-from-soft-offline-functions.patch " Andrew Morton
2020-07-16 21:46 ` + mmhwpoison-unify-thp-handling-for-hard-and-soft-offline.patch " Andrew Morton
2020-07-16 21:46 ` + mmhwpoison-rework-soft-offline-for-free-pages.patch " Andrew Morton
2020-07-16 21:46 ` + mmhwpoison-rework-soft-offline-for-in-use-pages.patch " Andrew Morton
2020-07-16 21:46 ` + mmhwpoison-refactor-soft_offline_huge_page-and-__soft_offline_page.patch " Andrew Morton
2020-07-16 21:46 ` + mmhwpoison-return-0-if-the-page-is-already-poisoned-in-soft-offline.patch " Andrew Morton
2020-07-16 21:46 ` + mmhwpoison-introduce-mf_msg_unsplit_thp.patch " Andrew Morton
2020-07-16 22:51 ` + linux-sched-mmh-drop-duplicated-words-in-comments.patch " Andrew Morton
2020-07-16 22:51 ` + mm-drop-duplicated-words-in-linux-pgtableh.patch " Andrew Morton
2020-07-16 22:52 ` + mm-drop-duplicated-words-in-linux-mmh.patch " Andrew Morton
2020-07-16 22:52 ` + autofs-fix-doubled-word.patch " Andrew Morton
2020-07-16 23:08 ` + mm-vmstat-fix-proc-sys-vm-stat_refresh-generating-false-warnings.patch " Andrew Morton
2020-07-16 23:09 ` Andrew Morton
2020-07-16 23:28 ` + memcg-oom-check-memcg-margin-for-parallel-oom.patch " Andrew Morton
2020-07-16 23:32 ` + mm-memcg-percpu-account-percpu-memory-to-memory-cgroups-fix-2.patch " Andrew Morton
2020-07-16 23:42 ` + ipc-shmc-remove-the-superfluous-break.patch " Andrew Morton
2020-07-16 23:52 ` + mm-thp-replace-http-links-with-https-ones-fix.patch " Andrew Morton
2020-07-17  0:01 ` + scripts-spellingtxt-add-more-spellings-to-spellingtxt.patch " Andrew Morton
2020-07-17  1:53 ` + revert-squashfs-migrate-from-ll_rw_block-usage-to-bio.patch " Andrew Morton
2020-07-17  4:06 ` + revert-squashfs-migrate-from-ll_rw_block-usage-to-bio-fix.patch " Andrew Morton
2020-07-17  5:53 ` mmotm 2020-07-16-22-52 uploaded Andrew Morton
2020-07-17 15:30   ` mmotm 2020-07-16-22-52 uploaded (net: IPVS) Randy Dunlap
2020-07-18  1:27     ` Stephen Rothwell
2020-07-17 15:35   ` mmotm 2020-07-16-22-52 uploaded (mm/hugetlb.c) Randy Dunlap
2020-07-18  1:32     ` Stephen Rothwell
2020-07-17 20:18 ` [folded-merged] revert-squashfs-migrate-from-ll_rw_block-usage-to-bio-fix.patch removed from -mm tree Andrew Morton
2020-07-17 20:18 ` [obsolete] revert-squashfs-migrate-from-ll_rw_block-usage-to-bio.patch " Andrew Morton
2020-07-17 20:20 ` + squashfs-fix-length-field-overlap-check-in-metadata-reading.patch added to " Andrew Morton
2020-07-17 20:35 ` + mm-hugetlb-avoid-hardcoding-while-checking-if-cma-is-enabled-fix.patch " Andrew Morton
2020-07-17 20:49 ` + mm-vmstat-fix-proc-sys-vm-stat_refresh-generating-false-warnings-fix.patch " Andrew Morton
2020-07-17 21:11 ` + mm-pgtable-make-generic-pgprot_-macros-available-for-no-mmu.patch " Andrew Morton
2020-07-17 21:11 ` + riscv-use-generic-pgprot_-macros-from-linux-pgtableh.patch " Andrew Morton
2020-07-17 21:42 ` + uaccess-add-force_uaccess_beginend-helpers-v2.patch " Andrew Morton
2020-07-17 21:59 ` + mm-sparsemem-enable-vmem_altmap-support-in-vmemmap_populate_basepages.patch " Andrew Morton
2020-07-17 21:59 ` + mm-sparsemem-enable-vmem_altmap-support-in-vmemmap_alloc_block_buf.patch " Andrew Morton
2020-07-17 21:59 ` + arm64-mm-enable-vmem_altmap-support-for-vmemmap-mappings.patch " Andrew Morton
2020-07-17 22:00 ` + ocfs2-fix-remounting-needed-after-setfacl-command.patch " Andrew Morton
2020-07-17 23:03 ` + mm-memcg-slab-use-a-single-set-of-kmem_caches-for-all-allocations-fix.patch " Andrew Morton
2020-07-20 22:55 ` + scripts-decode_stacktrace-strip-basepath-from-all-paths.patch " Andrew Morton
2020-07-20 23:03 ` + mm-vmstat-fix-proc-sys-vm-stat_refresh-generating-false-warnings-fix-2.patch " Andrew Morton
2020-07-20 23:26 ` + mm-gupc-fix-the-comment-of-return-value-for-populate_vma_page_range.patch " Andrew Morton
2020-07-20 23:31 ` + ocfs2-suballoch-delete-a-duplicated-word.patch " Andrew Morton
2020-07-21  0:26 ` + ntfs-fix-ntfs_test_inode-and-ntfs_init_locked_inode-function-type.patch " Andrew Morton
2020-07-21  0:27 ` + highmem-linux-highmemh-fix-duplicated-words-in-a-comment.patch " Andrew Morton
2020-07-21  0:28 ` + clang-linux-compiler-clangh-drop-duplicated-word-in-a-comment.patch " Andrew Morton
2020-07-21  0:30 ` + linux-exportfsh-drop-duplicated-word-in-a-comment.patch " Andrew Morton
2020-07-21  0:30 ` + linux-async_txh-drop-duplicated-word-in-a-comment.patch " Andrew Morton
2020-07-21  0:31 ` + frontswap-linux-frontswaph-drop-duplicated-word-in-a-comment.patch " Andrew Morton
2020-07-21  0:33 ` + memcontrol-drop-duplicate-word-and-fix-spello-in-linux-memcontrolh.patch " Andrew Morton
2020-07-21  0:34 ` + xz-drop-duplicated-word-in-linux-xzh.patch " Andrew Morton
2020-07-21  2:07 ` mmotm 2020-07-20-19-06 uploaded Andrew Morton
2020-07-21  6:09   ` mmotm 2020-07-20-19-06 uploaded (net/ipv6/ip6_vti.o) Randy Dunlap
2020-07-21  6:14     ` Steffen Klassert
2020-07-21  6:54     ` Stephen Rothwell
2020-07-21  6:55       ` Stephen Rothwell
2020-07-21 20:49 ` + fork-silence-a-false-postive-warning-in-__mmdrop.patch added to -mm tree Andrew Morton
2020-07-21 20:57 ` + io-mapping-indicate-mapping-failure.patch " Andrew Morton
2020-07-21 20:57 ` + io-mapping-indicate-mapping-failure-fix.patch " Andrew Morton
2020-07-21 21:06 ` + mm-fix-kthread_use_mm-vs-tlb-invalidate.patch " Andrew Morton
2020-07-21 21:06 ` + mm-fix-kthread_use_mm-vs-tlb-invalidate-fix.patch " Andrew Morton
2020-07-21 21:18 ` + kernel-add-a-kernel_wait-helper.patch " Andrew Morton
2020-07-21 21:20 ` + maintainers-add-kcov-section.patch " Andrew Morton
2020-07-21 21:21 ` + mm-hugetlb-avoid-hardcoding-while-checking-if-cma-is-enabled-fix-fix.patch " Andrew Morton
2020-07-24  0:26 ` + scripts-gdb-fix-lx-symbols-gdberror-while-loading-modules.patch " Andrew Morton
2020-07-24  0:47 ` + mm-vmscan-make-active-inactive-ratio-as-1-1-for-anon-lru.patch " Andrew Morton
2020-07-24  0:47 ` + mm-vmscan-protect-the-workingset-on-anonymous-lru.patch " Andrew Morton
2020-07-24  0:47 ` + mm-workingset-prepare-the-workingset-detection-infrastructure-for-anon-lru.patch " Andrew Morton
2020-07-24  0:47 ` + mm-swapcache-support-to-handle-the-shadow-entries.patch " Andrew Morton
2020-07-24  0:47 ` + mm-swap-implement-workingset-detection-for-anonymous-lru.patch " Andrew Morton
2020-07-24  0:47 ` + mm-vmscan-restore-active-inactive-ratio-for-anonymous-lru.patch " Andrew Morton
2020-07-24  0:57 ` + makefile-add-debug-option-to-enable-function-aligned-on-32-bytes.patch " Andrew Morton
2020-07-24  1:09 ` + mm-page_alloc-fix-memalloc_nocma_save-restore-apis.patch " Andrew Morton
2020-07-24  2:12 ` + panic-make-print_oops_end_marker-static.patch " Andrew Morton
2020-07-24  2:20 ` + lib-kconfigdebug-make-test_lockup-depend-on-module.patch " Andrew Morton
2020-07-24  2:20 ` + lib-test_lockupc-fix-return-value-of-test_lockup_init.patch " Andrew Morton
2020-07-24  2:25 ` [merged] sh-add-missing-export_symbol-for-__delay.patch removed from " Andrew Morton
2020-07-24  2:50 ` + revert-revert-mm-vmalloc-modify-struct-vmap_area-to-reduce-its-size.patch added to " Andrew Morton
2020-07-24  2:53 ` + khugepaged-fix-null-pointer-dereference-due-to-race.patch " Andrew Morton
2020-07-24  3:01 ` + mm-mmap-merge-vma-after-call_mmap-if-possible.patch " Andrew Morton

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200714003119.wk1EJGg3P%akpm@linux-foundation.org \
    --to=akpm@linux-foundation.org \
    --cc=amir73il@gmail.com \
    --cc=chris@chrisdown.name \
    --cc=hannes@cmpxchg.org \
    --cc=hughd@google.com \
    --cc=jlayton@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mm-commits@vger.kernel.org \
    --cc=tj@kernel.org \
    --cc=viro@zeniv.linux.org.uk \
    --cc=willy@infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.