linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* mmotm 2018-02-21-14-48 uploaded
@ 2018-02-21 22:48 akpm
  2018-02-21 23:58 ` mmotm 2018-02-21-14-48 uploaded (mm/page_alloc.c on UML) Randy Dunlap
  0 siblings, 1 reply; 8+ messages in thread
From: akpm @ 2018-02-21 22:48 UTC (permalink / raw)
  To: broonie, linux-fsdevel, linux-kernel, linux-mm, linux-next,
	mhocko, mm-commits, sfr

The mm-of-the-moment snapshot 2018-02-21-14-48 has been uploaded to

   http://www.ozlabs.org/~akpm/mmotm/

mmotm-readme.txt says

README for mm-of-the-moment:

http://www.ozlabs.org/~akpm/mmotm/

This is a snapshot of my -mm patch queue.  Uploaded at random hopefully
more than once a week.

You will need quilt to apply these patches to the latest Linus release (4.x
or 4.x-rcY).  The series file is in broken-out.tar.gz and is duplicated in
http://ozlabs.org/~akpm/mmotm/series

The file broken-out.tar.gz contains two datestamp files: .DATE and
.DATE-yyyy-mm-dd-hh-mm-ss.  Both contain the string yyyy-mm-dd-hh-mm-ss,
followed by the base kernel version against which this patch series is to
be applied.

This tree is partially included in linux-next.  To see which patches are
included in linux-next, consult the `series' file.  Only the patches
within the #NEXT_PATCHES_START/#NEXT_PATCHES_END markers are included in
linux-next.

A git tree which contains the memory management portion of this tree is
maintained at git://git.kernel.org/pub/scm/linux/kernel/git/mhocko/mm.git
by Michal Hocko.  It contains the patches which are between the
"#NEXT_PATCHES_START mm" and "#NEXT_PATCHES_END" markers, from the series
file, http://www.ozlabs.org/~akpm/mmotm/series.


A full copy of the full kernel tree with the linux-next and mmotm patches
already applied is available through git within an hour of the mmotm
release.  Individual mmotm releases are tagged.  The master branch always
points to the latest release, so it's constantly rebasing.

http://git.cmpxchg.org/cgit.cgi/linux-mmotm.git/

To develop on top of mmotm git:

  $ git remote add mmotm git://git.kernel.org/pub/scm/linux/kernel/git/mhocko/mm.git
  $ git remote update mmotm
  $ git checkout -b topic mmotm/master
  <make changes, commit>
  $ git send-email mmotm/master.. [...]

To rebase a branch with older patches to a new mmotm release:

  $ git remote update mmotm
  $ git rebase --onto mmotm/master <topic base> topic




The directory http://www.ozlabs.org/~akpm/mmots/ (mm-of-the-second)
contains daily snapshots of the -mm tree.  It is updated more frequently
than mmotm, and is untested.

A git copy of this tree is available at

	http://git.cmpxchg.org/cgit.cgi/linux-mmots.git/

and use of this tree is similar to
http://git.cmpxchg.org/cgit.cgi/linux-mmotm.git/, described above.


This mmotm tree contains the following patches against 4.16-rc2:
(patches marked "*" will be included in linux-next)

  origin.patch
  i-need-old-gcc.patch
* tools-fix-cross-compile-var-clobbering.patch
* include-linux-sched-mmh-re-inline-mmdrop.patch
* kbuild-always-define-endianess-in-kconfigh.patch
* mm-memcontrol-fix-nr_writeback-leak-in-memcg-and-system-stats.patch
* mm-mlock-vmscan-no-more-skipping-pagevecs.patch
* kernel-relay-limit-kmalloc-size-to-kmalloc_max_size.patch
* fix-const-confusion-in-certs-blacklist.patch
* mm-swap-frontswap-fix-thp-swap-if-frontswap-enabled-v3.patch
* ida-do-zeroing-in-ida_pre_get.patch
* mm-zpool-zpool_evictable-fix-mismatch-in-parameter-name-and-kernel-doc.patch
* mm-swapc-make-functions-and-their-kernel-doc-agree-again.patch
* bugh-work-around-gcc-pr82365-in-bug.patch
* selftests-memfd-add-run_fuse_testsh-to-test_files.patch
* vmalloc-fix-__gfp_highmem-usage-for-vmalloc_32-on-32b-systems.patch
* lib-kconfigdebug-enable-runtime_testing_menu.patch
* mm-dont-defer-struct-page-initialization-for-xen-pv-guests.patch
* hugetlb-fix-surplus-pages-accounting.patch
* arm-arch-arm-include-asm-pageh-needs-personalityh.patch
* prctl-add-pr_et_pdeathsig_proc.patch
* tile-pci_gx-make-setup_pcie_rc_delay-__init.patch
* ocfs2-use-osb-instead-of-ocfs2_sb.patch
* ocfs2-use-oi-instead-of-ocfs2_i.patch
* ocfs2-clean-up-some-unused-function-declaration.patch
* ocfs2-keep-the-trace-point-consistent-with-the-function-name.patch
* ocfs2-get-rid-of-ocfs2_is_o2cb_active-function.patch
* ocfs2-move-some-definitions-to-header-file.patch
* ocfs2-fix-some-small-problems.patch
* ocfs2-add-kobject-for-online-file-check.patch
* ocfs2-add-duplicative-ino-number-check.patch
* block-restore-proc-partitions-to-not-display-non-partitionable-removable-devices.patch
* dentry-fix-kmemcheck-splat-at-take_dentry_name_snapshot.patch
  mm.patch
* mm-ksm-make-function-stable_node_dup-static.patch
* mm-always-print-rlimit_data-warning.patch
* mm-migrate-change-migration-reason-mr_cma-as-mr_contig_range.patch
* mm-hugetlbfs-move-hugetlbfs_i-outside-ifdef-config_hugetlbfs.patch
* mm-memfd-split-out-memfd-for-use-by-multiple-filesystems.patch
* mm-memfd-remove-memfd-code-from-shmem-files-and-use-new-memfd-files.patch
* mm-swap_slots-use-conditional-compilation-for-swap_slotsc.patch
* mm-initialize-pages-on-demand-during-boot.patch
* mm-initialize-pages-on-demand-during-boot-fix-3.patch
* mm-thp-fix-potential-clearing-to-referenced-flag-in-page_idle_clear_pte_refs_one.patch
* mm-memory_hotplug-enforce-block-size-aligned-range-check.patch
* x86-mm-memory_hotplug-determine-block-size-based-on-the-end-of-boot-memory.patch
* x86-mm-memory_hotplug-determine-block-size-based-on-the-end-of-boot-memory-v4.patch
* mm-uninitialized-struct-page-poisoning-sanity-checking.patch
* mm-uninitialized-struct-page-poisoning-sanity-checking-v4.patch
* mm-memory_hotplug-optimize-probe-routine.patch
* mm-memory_hotplug-dont-read-nid-from-struct-page-during-hotplug.patch
* mm-memory_hotplug-optimize-memory-hotplug.patch
* mm-hwpoison-disable-memory-error-handling-on-1gb-hugepage.patch
* mm-page_alloc-extend-kernelcore-and-movablecore-for-percent.patch
* mm-page_alloc-extend-kernelcore-and-movablecore-for-percent-fix.patch
* mm-page_alloc-move-mirrored_kernelcore-to-__meminitdata.patch
* mm-re-use-define_show_attribute-macro.patch
* mm-re-use-define_show_attribute-macro-v2.patch
* mm-fix-races-between-address_space-dereference-and-free-in-page_evicatable.patch
* mm-page_ref-use-atomic_set_release-in-page_ref_unfreeze.patch
* mm-huge_memoryc-reorder-operations-in-__split_huge_page_tail.patch
* z3fold-limit-use-of-stale-list-for-allocation.patch
* mmvmscan-dont-pretend-forward-progress-upon-shrinker_rwsem-contention.patch
* mm-swap-clean-up-swap-readahead.patch
* mm-swap-unify-cluster-based-and-vma-based-swap-readahead.patch
* mm-page_alloc-skip-over-regions-of-invalid-pfns-on-uma.patch
* mm-kmemleak-make-kmemleak_boot_config-__init.patch
* mm-page_owner-make-early_page_owner_param-__init.patch
* mm-page_poison-make-early_page_poison_param-__init.patch
* mm-memcg-plumbing-memcg-for-kmem-cache-allocations.patch
* mm-memcg-plumbing-memcg-for-kmalloc-allocations.patch
* fs-fsnotify-account-fsnotify-metadata-to-kmemcg.patch
* mm-swap-fix-race-between-swapoff-and-some-swap-operations.patch
* mmvmscan-mark-register_shrinker-as-__must_check.patch
* list_lru-prefetch-neighboring-list-entries-before-acquiring-lock.patch
* list_lru-prefetch-neighboring-list-entries-before-acquiring-lock-fix.patch
* mm-oom-refactor-the-oom_kill_process-function.patch
* mm-implement-mem_cgroup_scan_tasks-for-the-root-memory-cgroup.patch
* mm-oom-cgroup-aware-oom-killer.patch
* mm-oom-cgroup-aware-oom-killer-fix.patch
* mm-oom-introduce-memoryoom_group.patch
* mm-oom-introduce-memoryoom_group-fix.patch
* mm-oom-add-cgroup-v2-mount-option-for-cgroup-aware-oom-killer.patch
* mm-oom-docs-describe-the-cgroup-aware-oom-killer.patch
* mm-oom-docs-describe-the-cgroup-aware-oom-killer-fix.patch
* mm-oom-docs-describe-the-cgroup-aware-oom-killer-fix-2.patch
* mm-oom-docs-describe-the-cgroup-aware-oom-killer-fix-2-fix.patch
* cgroup-list-groupoom-in-cgroup-features.patch
* mm-add-strictlimit-knob-v2.patch
* mm-page_alloc-dont-reserve-zone_highmem-for-zone_movable-request.patch
* mm-cma-manage-the-memory-of-the-cma-area-by-using-the-zone_movable.patch
* mm-cma-remove-alloc_cma.patch
* arm-cma-avoid-double-mapping-to-the-cma-area-if-config_highmem-=-y.patch
* mm-introduce-map_fixed_safe.patch
* fs-elf-drop-map_fixed-usage-from-elf_map.patch
* elf-enforce-map_fixed-on-overlaying-elf-segments.patch
* mm-dont-expose-page-to-fast-gup-before-its-ready.patch
* mm-swap-make-pointer-swap_avail_heads-static.patch
* mm-numa-rework-do_pages_move.patch
* mm-migrate-remove-reason-argument-from-new_page_t.patch
* mm-unclutter-thp-migration.patch
* mm-page_owner-align-with-pageblock_nr_pages.patch
* mm-make-count-list_lru_one-nr_items-lockless.patch
* mm-page_owner-align-with-pageblock_nr-pages.patch
* mm-kasan-dont-vfree-nonexistent-vm_area.patch
* procfs-add-seq_put_hex_ll-to-speed-up-proc-pid-maps.patch
* procfs-add-seq_put_hex_ll-to-speed-up-proc-pid-maps-v3.patch
* procfs-optimize-seq_pad-to-speed-up-proc-pid-maps.patch
* proc-get-rid-of-task-lock-unlock-pair-to-read-umask-for-the-status-file.patch
* proc-do-less-stuff-under-pde_unload_lock.patch
* proc-move-proc-sysvipc-creation-to-where-it-belongs.patch
* proc-faster-open-close-of-files-without-release-hook.patch
* proc-randomize-struct-pde_opener.patch
* proc-move-struct-pde_opener-to-kmem-cache.patch
* proc-account-struct-pde_opener.patch
* proc-add-seq_put_decimal_ull_width-to-speed-up-proc-pid-smaps.patch
* proc-add-seq_put_decimal_ull_width-to-speed-up-proc-pid-smaps-fix.patch
* proc-replace-seq_printf-on-seq_putc-to-speed-up-proc-pid-smaps.patch
* proc-optimize-single-symbol-delimiters-to-spead-up-seq_put_decimal_ull.patch
* proc-replace-seq_printf-by-seq_put_smth-to-speed-up-proc-pid-status.patch
* proc-fix-proc-map_files-lookup-some-more.patch
* proc-check-permissions-earlier-for-proc-wchan.patch
* proc-use-set_puts-at-proc-wchan.patch
* headers-untangle-kmemleakh-from-mmh.patch
* taint-convert-to-indexed-initialization.patch
* taint-consolidate-documentation.patch
* taint-add-taint-for-randstruct.patch
* checkpatch-improve-parse_email-signature-checking.patch
* checkpatchpl-add-spdx-license-tag-check.patch
* checkpatch-add-crypto-on_stack-to-declaration_macros.patch
* seq_file-delete-small-value-optimization.patch
* fork-unconditionally-clear-stack-on-fork.patch
* exec-pass-stack-rlimit-into-mm-layout-functions.patch
* exec-introduce-finalize_exec-before-start_thread.patch
* exec-pin-stack-limit-during-exec.patch
* ipc-shm-introduce-shmctlshm_stat_any.patch
* ipc-sem-introduce-semctlsem_stat_any.patch
* ipc-msg-introduce-msgctlmsg_stat_any.patch
* sysctl-add-range-clamping-intvec-helper-functions.patch
* sysctl-warn-when-a-clamped-sysctl-parameter-is-set-out-of-range.patch
* ipc-clamp-msgmni-and-shmmni-to-the-real-ipc_mni-limit.patch
  linux-next.patch
* ipc-mqueue-add-missing-error-code-in-init_mqueue_fs.patch
* fix-double-s-in-code.patch
* fix-read-buffer-overflow-in-delta-ipc.patch
* sparc64-ng4-memset-32-bits-overflow.patch
  make-sure-nobodys-leaking-resources.patch
  releasing-resources-with-children.patch
  kernel-forkc-export-kernel_thread-to-modules.patch
  mutex-subsystem-synchro-test-module.patch
  slab-leaks3-default-y.patch
  workaround-for-a-pci-restoring-bug.patch

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: mmotm 2018-02-21-14-48 uploaded (mm/page_alloc.c on UML)
  2018-02-21 22:48 mmotm 2018-02-21-14-48 uploaded akpm
@ 2018-02-21 23:58 ` Randy Dunlap
  2018-02-22  7:20   ` Michal Hocko
  0 siblings, 1 reply; 8+ messages in thread
From: Randy Dunlap @ 2018-02-21 23:58 UTC (permalink / raw)
  To: akpm, broonie, linux-fsdevel, linux-kernel, linux-mm, linux-next,
	mhocko, mm-commits, sfr, richard -rw- weinberger, Eugeniu Rosca

On 02/21/2018 02:48 PM, akpm@linux-foundation.org wrote:
> The mm-of-the-moment snapshot 2018-02-21-14-48 has been uploaded to
> 
>    http://www.ozlabs.org/~akpm/mmotm/
> 
> mmotm-readme.txt says
> 
> README for mm-of-the-moment:
> 
> http://www.ozlabs.org/~akpm/mmotm/
> 
> This is a snapshot of my -mm patch queue.  Uploaded at random hopefully
> more than once a week.
> 
> You will need quilt to apply these patches to the latest Linus release (4.x
> or 4.x-rcY).  The series file is in broken-out.tar.gz and is duplicated in
> http://ozlabs.org/~akpm/mmotm/series
> 
> The file broken-out.tar.gz contains two datestamp files: .DATE and
> .DATE-yyyy-mm-dd-hh-mm-ss.  Both contain the string yyyy-mm-dd-hh-mm-ss,
> followed by the base kernel version against which this patch series is to
> be applied.

um (or uml) defconfig on i386 and/or x86_64:

../mm/page_alloc.c: In function 'memmap_init_zone':
../mm/page_alloc.c:5450:5: error: implicit declaration of function 'memblock_next_valid_pfn' [-Werror=implicit-function-declaration]
     pfn = memblock_next_valid_pfn(pfn, end_pfn) - 1;
     ^


probably (?):
From: Eugeniu Rosca <erosca@de.adit-jv.com>
Subject: mm: page_alloc: skip over regions of invalid pfns on UMA


-- 
~Randy

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: mmotm 2018-02-21-14-48 uploaded (mm/page_alloc.c on UML)
  2018-02-21 23:58 ` mmotm 2018-02-21-14-48 uploaded (mm/page_alloc.c on UML) Randy Dunlap
@ 2018-02-22  7:20   ` Michal Hocko
  2018-02-22 10:38     ` Eugeniu Rosca
  0 siblings, 1 reply; 8+ messages in thread
From: Michal Hocko @ 2018-02-22  7:20 UTC (permalink / raw)
  To: Randy Dunlap
  Cc: akpm, broonie, linux-fsdevel, linux-kernel, linux-mm, linux-next,
	mm-commits, sfr, richard -rw- weinberger, Eugeniu Rosca

On Wed 21-02-18 15:58:41, Randy Dunlap wrote:
> On 02/21/2018 02:48 PM, akpm@linux-foundation.org wrote:
> > The mm-of-the-moment snapshot 2018-02-21-14-48 has been uploaded to
> > 
> >    http://www.ozlabs.org/~akpm/mmotm/
> > 
> > mmotm-readme.txt says
> > 
> > README for mm-of-the-moment:
> > 
> > http://www.ozlabs.org/~akpm/mmotm/
> > 
> > This is a snapshot of my -mm patch queue.  Uploaded at random hopefully
> > more than once a week.
> > 
> > You will need quilt to apply these patches to the latest Linus release (4.x
> > or 4.x-rcY).  The series file is in broken-out.tar.gz and is duplicated in
> > http://ozlabs.org/~akpm/mmotm/series
> > 
> > The file broken-out.tar.gz contains two datestamp files: .DATE and
> > .DATE-yyyy-mm-dd-hh-mm-ss.  Both contain the string yyyy-mm-dd-hh-mm-ss,
> > followed by the base kernel version against which this patch series is to
> > be applied.
> 
> um (or uml) defconfig on i386 and/or x86_64:
> 
> ../mm/page_alloc.c: In function 'memmap_init_zone':
> ../mm/page_alloc.c:5450:5: error: implicit declaration of function 'memblock_next_valid_pfn' [-Werror=implicit-function-declaration]
>      pfn = memblock_next_valid_pfn(pfn, end_pfn) - 1;
>      ^
> 
> 
> probably (?):
> From: Eugeniu Rosca <erosca@de.adit-jv.com>
> Subject: mm: page_alloc: skip over regions of invalid pfns on UMA

Yes. Steven has already reported the same [1]. There are two possible
ways around this. Either provide and empty stub or use ifdef around
memblock_next_valid_pfn. I would use the later because it is less
confusing. We really do not want memblock_next_valid_pfn to be used
outside of memblock aware code.

[1] http://lkml.kernel.org/r/20180222143057.3a1b3746@canb.auug.org.au


diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index 4334d3a9c6a2..2836bc9e0999 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -5446,8 +5446,9 @@ void __meminit memmap_init_zone(unsigned long size, int nid, unsigned long zone,
 			 * end_pfn), such that we hit a valid pfn (or end_pfn)
 			 * on our next iteration of the loop.
 			 */
-			if (IS_ENABLED(CONFIG_HAVE_MEMBLOCK))
-				pfn = memblock_next_valid_pfn(pfn, end_pfn) - 1;
+#ifdef CONFIG_HAVE_MEMBLOCK
+			pfn = memblock_next_valid_pfn(pfn, end_pfn) - 1;
+#endif
 			continue;
 		}
 		if (!early_pfn_in_nid(pfn, nid))
-- 
Michal Hocko
SUSE Labs

^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: mmotm 2018-02-21-14-48 uploaded (mm/page_alloc.c on UML)
  2018-02-22  7:20   ` Michal Hocko
@ 2018-02-22 10:38     ` Eugeniu Rosca
  2018-02-22 12:59       ` Michal Hocko
  0 siblings, 1 reply; 8+ messages in thread
From: Eugeniu Rosca @ 2018-02-22 10:38 UTC (permalink / raw)
  To: Michal Hocko
  Cc: Randy Dunlap, akpm, broonie, linux-fsdevel, linux-kernel,
	linux-mm, linux-next, mm-commits, sfr, richard -rw- weinberger,
	Eugeniu Rosca

Hi Michal,

Please, let me know if any action is expected from my end.
Thank you for your support and sorry for the ifdef troubles.

Best regards,
Eugeniu.

On Thu, Feb 22, 2018 at 08:20:37AM +0100, Michal Hocko wrote:
> On Wed 21-02-18 15:58:41, Randy Dunlap wrote:
> > On 02/21/2018 02:48 PM, akpm@linux-foundation.org wrote:
> > > The mm-of-the-moment snapshot 2018-02-21-14-48 has been uploaded to
> > > 
> > >    http://www.ozlabs.org/~akpm/mmotm/
> > > 
> > > mmotm-readme.txt says
> > > 
> > > README for mm-of-the-moment:
> > > 
> > > http://www.ozlabs.org/~akpm/mmotm/
> > > 
> > > This is a snapshot of my -mm patch queue.  Uploaded at random hopefully
> > > more than once a week.
> > > 
> > > You will need quilt to apply these patches to the latest Linus release (4.x
> > > or 4.x-rcY).  The series file is in broken-out.tar.gz and is duplicated in
> > > http://ozlabs.org/~akpm/mmotm/series
> > > 
> > > The file broken-out.tar.gz contains two datestamp files: .DATE and
> > > .DATE-yyyy-mm-dd-hh-mm-ss.  Both contain the string yyyy-mm-dd-hh-mm-ss,
> > > followed by the base kernel version against which this patch series is to
> > > be applied.
> > 
> > um (or uml) defconfig on i386 and/or x86_64:
> > 
> > ../mm/page_alloc.c: In function 'memmap_init_zone':
> > ../mm/page_alloc.c:5450:5: error: implicit declaration of function 'memblock_next_valid_pfn' [-Werror=implicit-function-declaration]
> >      pfn = memblock_next_valid_pfn(pfn, end_pfn) - 1;
> >      ^
> > 
> > 
> > probably (?):
> > From: Eugeniu Rosca <erosca@de.adit-jv.com>
> > Subject: mm: page_alloc: skip over regions of invalid pfns on UMA
> 
> Yes. Steven has already reported the same [1]. There are two possible
> ways around this. Either provide and empty stub or use ifdef around
> memblock_next_valid_pfn. I would use the later because it is less
> confusing. We really do not want memblock_next_valid_pfn to be used
> outside of memblock aware code.
> 
> [1] http://lkml.kernel.org/r/20180222143057.3a1b3746@canb.auug.org.au
> 
> 
> diff --git a/mm/page_alloc.c b/mm/page_alloc.c
> index 4334d3a9c6a2..2836bc9e0999 100644
> --- a/mm/page_alloc.c
> +++ b/mm/page_alloc.c
> @@ -5446,8 +5446,9 @@ void __meminit memmap_init_zone(unsigned long size, int nid, unsigned long zone,
>  			 * end_pfn), such that we hit a valid pfn (or end_pfn)
>  			 * on our next iteration of the loop.
>  			 */
> -			if (IS_ENABLED(CONFIG_HAVE_MEMBLOCK))
> -				pfn = memblock_next_valid_pfn(pfn, end_pfn) - 1;
> +#ifdef CONFIG_HAVE_MEMBLOCK
> +			pfn = memblock_next_valid_pfn(pfn, end_pfn) - 1;
> +#endif
>  			continue;
>  		}
>  		if (!early_pfn_in_nid(pfn, nid))
> -- 
> Michal Hocko
> SUSE Labs

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: mmotm 2018-02-21-14-48 uploaded (mm/page_alloc.c on UML)
  2018-02-22 10:38     ` Eugeniu Rosca
@ 2018-02-22 12:59       ` Michal Hocko
  2018-02-22 13:08         ` Eugeniu Rosca
  0 siblings, 1 reply; 8+ messages in thread
From: Michal Hocko @ 2018-02-22 12:59 UTC (permalink / raw)
  To: Eugeniu Rosca
  Cc: Randy Dunlap, akpm, broonie, linux-fsdevel, linux-kernel,
	linux-mm, linux-next, mm-commits, sfr, richard -rw- weinberger

On Thu 22-02-18 11:38:32, Eugeniu Rosca wrote:
> Hi Michal,
> 
> Please, let me know if any action is expected from my end.

I do not thing anything is really needed right now. If you have a strong
opinion about the solution (ifdef vs. noop stub) then speak up.

> Thank you for your support and sorry for the ifdef troubles.

No troubles at all. It was me who pushed you this direction...
-- 
Michal Hocko
SUSE Labs

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: mmotm 2018-02-21-14-48 uploaded (mm/page_alloc.c on UML)
  2018-02-22 12:59       ` Michal Hocko
@ 2018-02-22 13:08         ` Eugeniu Rosca
  2018-02-22 13:26           ` Michal Hocko
  0 siblings, 1 reply; 8+ messages in thread
From: Eugeniu Rosca @ 2018-02-22 13:08 UTC (permalink / raw)
  To: Michal Hocko
  Cc: Randy Dunlap, akpm, broonie, linux-fsdevel, linux-kernel,
	linux-mm, linux-next, mm-commits, sfr, richard -rw- weinberger,
	Eugeniu Rosca

On Thu, Feb 22, 2018 at 01:59:55PM +0100, Michal Hocko wrote:
> On Thu 22-02-18 11:38:32, Eugeniu Rosca wrote:
> > Hi Michal,
> > 
> > Please, let me know if any action is expected from my end.
> 
> I do not thing anything is really needed right now. If you have a strong
> opinion about the solution (ifdef vs. noop stub) then speak up.

No different preference on my side. I was more thinking if you are going
to amend the patch or create a fix on top of it. Since it didn't reach
mainline, it makes sense to amend it. If you can do it without the
intervention of the author, that's also fine for me.

> > Thank you for your support and sorry for the ifdef troubles.
> 
> No troubles at all. It was me who pushed you this direction...
> -- 
> Michal Hocko
> SUSE Labs

Thanks,
Eugeniu.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: mmotm 2018-02-21-14-48 uploaded (mm/page_alloc.c on UML)
  2018-02-22 13:08         ` Eugeniu Rosca
@ 2018-02-22 13:26           ` Michal Hocko
  2018-02-25  0:50             ` Eugeniu Rosca
  0 siblings, 1 reply; 8+ messages in thread
From: Michal Hocko @ 2018-02-22 13:26 UTC (permalink / raw)
  To: Eugeniu Rosca
  Cc: Randy Dunlap, akpm, broonie, linux-fsdevel, linux-kernel,
	linux-mm, linux-next, mm-commits, sfr, richard -rw- weinberger

On Thu 22-02-18 14:08:14, Eugeniu Rosca wrote:
> On Thu, Feb 22, 2018 at 01:59:55PM +0100, Michal Hocko wrote:
> > On Thu 22-02-18 11:38:32, Eugeniu Rosca wrote:
> > > Hi Michal,
> > > 
> > > Please, let me know if any action is expected from my end.
> > 
> > I do not thing anything is really needed right now. If you have a strong
> > opinion about the solution (ifdef vs. noop stub) then speak up.
> 
> No different preference on my side. I was more thinking if you are going
> to amend the patch or create a fix on top of it. Since it didn't reach
> mainline, it makes sense to amend it. If you can do it without the
> intervention of the author, that's also fine for me.

Andrew usually takes the incremental fix and then squash them when
sending to Linus

-- 
Michal Hocko
SUSE Labs

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: mmotm 2018-02-21-14-48 uploaded (mm/page_alloc.c on UML)
  2018-02-22 13:26           ` Michal Hocko
@ 2018-02-25  0:50             ` Eugeniu Rosca
  0 siblings, 0 replies; 8+ messages in thread
From: Eugeniu Rosca @ 2018-02-25  0:50 UTC (permalink / raw)
  To: Michal Hocko, akpm
  Cc: Randy Dunlap, broonie, linux-fsdevel, linux-kernel, linux-mm,
	linux-next, mm-commits, sfr, richard -rw- weinberger,
	Eugeniu Rosca, Eugeniu Rosca

Hello Andrew, Michal,

On Thu, Feb 22, 2018 at 02:26:30PM +0100, Michal Hocko wrote:
> On Thu 22-02-18 14:08:14, Eugeniu Rosca wrote:
> > On Thu, Feb 22, 2018 at 01:59:55PM +0100, Michal Hocko wrote:
> > > On Thu 22-02-18 11:38:32, Eugeniu Rosca wrote:
> > > > Hi Michal,
> > > > 
> > > > Please, let me know if any action is expected from my end.
> > > 
> > > I do not thing anything is really needed right now. If you have a strong
> > > opinion about the solution (ifdef vs. noop stub) then speak up.
> > 
> > No different preference on my side. I was more thinking if you are going
> > to amend the patch or create a fix on top of it. Since it didn't reach
> > mainline, it makes sense to amend it. If you can do it without the
> > intervention of the author, that's also fine for me.
> 
> Andrew usually takes the incremental fix and then squash them when
> sending to Linus

This may sound like bikeshedding, but if commit [1] is squashed onto [2],
the resulted commit will pointlessly relocate the ifdef line, like seen
in [3]. Feel free to skip this comment/request, but imho applying [4] on
top of [1] would then result in a cleaner squashed commit. No functional
change is intended here. TIA.

[1] linux-next commit 5fd667a8c762 ("mm-page_alloc-skip-over-regions-of-invalid-pfns-on-uma-fix")
[2] linux-next commit 72a571e91476 ("mm: page_alloc: skip over regions of invalid pfns on UMA")

[3] Ugly and unneeded ifdef line relocation
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index cb416723538f..a89b029985ef 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -5355,12 +5355,12 @@ void __meminit memmap_init_zone(unsigned long size, int nid, unsigned long zone,
                        goto not_early;

                if (!early_pfn_valid(pfn)) {
-#ifdef CONFIG_HAVE_MEMBLOCK_NODE_MAP
                        /*
                         * Skip to the pfn preceding the next valid one (or
                         * end_pfn), such that we hit a valid pfn (or end_pfn)
                         * on our next iteration of the loop.
                         */
+#ifdef CONFIG_HAVE_MEMBLOCK
                        pfn = memblock_next_valid_pfn(pfn, end_pfn) - 1;
 #endif
                        continue;


[4] Patch to be applied on top of [1], for a cleaner squashed commit.
diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index a89b029985ef..10cbf9f1fb35 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -5355,12 +5355,12 @@ void __meminit memmap_init_zone(unsigned long size, int nid, unsigned long zone,
                        goto not_early;

                if (!early_pfn_valid(pfn)) {
+#ifdef CONFIG_HAVE_MEMBLOCK
                        /*
                         * Skip to the pfn preceding the next valid one (or
                         * end_pfn), such that we hit a valid pfn (or end_pfn)
                         * on our next iteration of the loop.
                         */
-#ifdef CONFIG_HAVE_MEMBLOCK
                        pfn = memblock_next_valid_pfn(pfn, end_pfn) - 1;
 #endif
                        continue;

Best regards,
Eugeniu.

^ permalink raw reply related	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2018-02-25  0:50 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-02-21 22:48 mmotm 2018-02-21-14-48 uploaded akpm
2018-02-21 23:58 ` mmotm 2018-02-21-14-48 uploaded (mm/page_alloc.c on UML) Randy Dunlap
2018-02-22  7:20   ` Michal Hocko
2018-02-22 10:38     ` Eugeniu Rosca
2018-02-22 12:59       ` Michal Hocko
2018-02-22 13:08         ` Eugeniu Rosca
2018-02-22 13:26           ` Michal Hocko
2018-02-25  0:50             ` Eugeniu Rosca

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).