On Wed, 28 Nov 2012, Michal Hocko wrote:
> From e21bb704947e9a477ec1df9121575c606dbfcb52 Mon Sep 17 00:00:00 2001
> From: Michal Hocko
> Date: Wed, 28 Nov 2012 17:46:32 +0100
> Subject: [PATCH] memcg: do not trigger OOM from add_to_page_cache_locked
>
> memcg oom killer might deadlock if the proc
On Tue, 27 Nov 2012, Dave Jones wrote:
> Hugh,
>
> We had a user report hitting the BUG_ON at the end of shmem_evict_inode.
> I see in 3.7 you changed this to a WARN instead.
>
> Does the trace below match the one you described chasing in commit
> 0f3c42f522dc1ad7e27affc0a4aa8c790bce0a66 ?
The
On Tue, 27 Nov 2012, Mel Gorman wrote:
> On Tue, Nov 27, 2012 at 02:07:05PM +, Mel Gorman wrote:
> > On Tue, Nov 27, 2012 at 09:23:59PM +0800, Hillf Danton wrote:
> > > If we have to avoid migrating to a node that is nearly full, put page
> > > and return zero.
> > >
> > > Signed-off-by: Hillf
On Wed, 21 Nov 2012, Michal Hocko wrote:
> On Tue 20-11-12 13:49:32, Andrew Morton wrote:
> > On Mon, 19 Nov 2012 17:44:34 -0800 (PST)
> > David Rientjes wrote:
> >
> > > While profiling numa/core v16 with cgroup_disable=memory on the command
> > > line, I noticed mem_cgroup_count_vm_event() sti
e !PageUptodate-ness of pages fallocated but
still unwritten).
[a...@linux-foundation.org: fix warning with CONFIG_TMPFS=n]
Signed-off-by: Hugh Dickins
---
mm/shmem.c | 92 ++-
1 file changed, 91 insertions(+), 1 deletion(-)
--- 3.7-rc7/mm/shme
On Thu, 29 Nov 2012, Jaegeuk Hanse wrote:
> On Wed, Nov 28, 2012 at 05:22:03PM -0800, Hugh Dickins wrote:
> >Revert 3.5's f21f8062201f ("tmpfs: revert SEEK_DATA and SEEK_HOLE")
> >to reinstate 4fb5ef089b28 ("tmpfs: support SEEK_DATA and SEEK_HOLE"),
&
On Thu, 29 Nov 2012, Dave Chinner wrote:
> On Wed, Nov 28, 2012 at 05:22:03PM -0800, Hugh Dickins wrote:
> > Revert 3.5's f21f8062201f ("tmpfs: revert SEEK_DATA and SEEK_HOLE")
> > to reinstate 4fb5ef089b28 ("tmpfs: support SEEK_DATA and SEEK_HOLE"),
&g
On Thu, 29 Nov 2012, Andrew Morton wrote:
> On Wed, 28 Nov 2012 17:22:03 -0800 (PST)
> Hugh Dickins wrote:
>
> > +/*
> > + * llseek SEEK_DATA or SEEK_HOLE through the radix_tree.
> > + */
> > +static pgoff_t shmem_seek_hole_d
On Sat, 2 Feb 2013, Randy Dunlap wrote:
> On 02/02/13 15:11, Tejun Heo wrote:
> > On Sat, Feb 02, 2013 at 03:10:48PM -0800, Tejun Heo wrote:
> >> Fix it by ensuring proceeding to the next slot doesn't carry over the
> >> unaligned offset - ie. use round_up(id + 1, slot_distance) instead of
> >> id
On Thu, 31 Jan 2013, Minchan Kim wrote:
> When I reviewed zswap, I was curious about frontswap_store.
> It said following as.
>
> * If frontswap already contains a page with matching swaptype and
> * offset, the frontswap implementation may either overwrite the data and
> * return success or i
On Fri, 1 Feb 2013, Johannes Weiner wrote:
> In shmem_find_get_pages_and_swap, use the faster radix tree iterator
> construct from 78c1d78 "radix-tree: introduce bit-optimized iterator".
>
> Signed-off-by: Johannes Weiner
Yes, that looks fine, and is testing out fine,
On Sat, 2 Feb 2013, Konstantin Khlebnikov wrote:
> Johannes Weiner wrote:
> > In shmem_find_get_pages_and_swap, use the faster radix tree iterator
> > construct from 78c1d78 "radix-tree: introduce bit-optimized iterator".
> >
> > Signed-off-by: Johannes Weiner
>
> Hmm, ACK. shmem_unuse_inode() al
twards.
Signed-off-by: Hugh Dickins
---
mm/memcontrol.c |4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
--- 3.8-rc6/mm/memcontrol.c 2012-12-22 09:43:27.628015582 -0800
+++ linux/mm/memcontrol.c 2013-02-02 16:56:06.188325771 -0800
@@ -4969,6 +4969,7 @@ out:
On Wed, 30 Jan 2013, Shaohua Li wrote:
> On Sun, Jan 27, 2013 at 01:40:40PM -0800, Hugh Dickins wrote:
> >
> > I'm glad Minchan has now pointed you to Rik's posting of two years ago:
> > I think there are more important changes to be made in that direction.
>
Convert tmpfs do_shmem_file_read() to shmem_file_read_iter().
Make file_read_iter_actor() global so tmpfs can use it too: delete
file_read_actor(), which was made global in 2.4.4 for use by tmpfs.
Replace tmpfs generic_file_aio_write() by generic_file_write_iter().
Signed-off-by: Hugh Dickins
On Wed, 6 Feb 2013, Jan Kara wrote:
> On Wed 06-02-13 09:58:48, David Rientjes wrote:
> > On Wed, 6 Feb 2013, Jan Kara wrote:
> >
> > > Yes, I noticed that thread just yesterday and also though that using
> > > similar trick might be viable. I'll experiment if we could use the same
> > > method
On Tue, 5 Feb 2013, Mel Gorman wrote:
> On Fri, Jan 25, 2013 at 05:54:53PM -0800, Hugh Dickins wrote:
> > From: Petr Holasek
> >
> > Introduces new sysfs boolean knob /sys/kernel/mm/ksm/merge_across_nodes
> > which control merging pages across different numa nodes.
On Tue, 5 Feb 2013, Mel Gorman wrote:
> On Fri, Jan 25, 2013 at 05:59:35PM -0800, Hugh Dickins wrote:
> > Memory hotremove's ksm_check_stable_tree() is pitifully inefficient
> > (restarting whenever it finds a stale node to remove), but rearrange
> > so that at least it d
On Tue, 5 Feb 2013, Mel Gorman wrote:
> On Fri, Jan 25, 2013 at 06:00:50PM -0800, Hugh Dickins wrote:
> > In some places where get_ksm_page() is used, we need the page to be locked.
> >
> > When KSM migration is fully enabled, we shall want that to make sure that
> > th
On Tue, 5 Feb 2013, Mel Gorman wrote:
> On Fri, Jan 25, 2013 at 06:01:59PM -0800, Hugh Dickins wrote:
> > Switching merge_across_nodes after running KSM is liable to oops on stale
> > nodes still left over from the previous stable tree. It's not something
> > that pe
n Tue, 5 Feb 2013, Mel Gorman wrote:
> On Fri, Jan 25, 2013 at 06:03:31PM -0800, Hugh Dickins wrote:
> > KSM page migration is already supported in the case of memory hotremove,
> > which takes the ksm_thread_mutex across all its migrations to keep life
> > simple.
>
On Fri, 8 Feb 2013, Gerald Schaefer wrote:
> On Fri, 25 Jan 2013 18:10:18 -0800 (PST)
> Hugh Dickins wrote:
>
> > Complaints are rare, but lockdep still does not understand the way
> > ksm_memory_callback(MEM_GOING_OFFLINE) takes ksm_thread_mutex, and
> > holds it un
On Tue, 12 Feb 2013, Dave Jones wrote:
> My Thinkpad T430s suspend/resumes fine most of the time. But every so often
> (like one in ten times or so), as soon as I suspend, I get a black screen,
> and a blinking power button.
>
> (Note: Not the capslock lights like when we panic, this laptop 'conv
On Tue, 12 Feb 2013, Dave Jones wrote:
> On Tue, Feb 12, 2013 at 04:26:22PM -0800, Hugh Dickins wrote:
> > On Tue, 12 Feb 2013, Dave Jones wrote:
> >
> > > My Thinkpad T430s suspend/resumes fine most of the time. But every so
> often
> > > (like one in te
On Tue, 2 Apr 2013, Minchan Kim wrote:
> On Mon, Apr 01, 2013 at 04:35:38PM -0700, David Rientjes wrote:
> > On Mon, 1 Apr 2013, Minchan Kim wrote:
> >
> > > __do_huge_pmd_anonymous_page depends on page_add_new_anon_rmap's
> > > spinlock for making sure that clear_huge_page write become visible
>
On Tue, 2 Apr 2013, Kirill A. Shutemov wrote:
> Kirill A. Shutemov wrote:
> > From: "Kirill A. Shutemov"
> >
> > ramfs is the most simple fs from page cache point of view. Let's start
> > transparent huge page cache enabling here.
> >
> > For now we allocate only non-movable huge page. It's not
ge_add_new_anon_rmap+0xc2/0x168
Thanks to Jakub Jelinek for his insight on gcc and helping to
track this down.
Signed-off-by: Jan Stancek
Acked-by: David Rientjes
Signed-off-by: Hugh Dickins
Cc: sta...@vger.kernel.org
---
This is Jan's valuable patch, posted a couple of days ago, which then
t
On Thu, 4 Apr 2013, Linus Torvalds wrote:
> On Thu, Apr 4, 2013 at 11:35 AM, Hugh Dickins wrote:
> >
> > find_vma() can be called by multiple threads with read lock
> > held on mm->mmap_sem and any of them can update mm->mmap_cache.
> > Prevent compiler from re
On Mon, 28 Jan 2013, Andrew Morton wrote:
> On Fri, 25 Jan 2013 17:53:10 -0800 (PST)
> Hugh Dickins wrote:
>
> > Here's a KSM series
>
> Sanity check: do you have a feeling for how useful KSM is?
> Performance/space improvements for typical (or atypical) work
On Mon, 28 Jan 2013, Andrew Morton wrote:
> On Fri, 25 Jan 2013 17:54:53 -0800 (PST)
> Hugh Dickins wrote:
>
> > --- mmotm.orig/Documentation/vm/ksm.txt 2013-01-25 14:36:31.724205455
> > -0800
> > +++ mmotm/Documentation/vm/ksm.txt 2013-01-25 14:36:38.60820561
On Mon, 28 Jan 2013, Andrew Morton wrote:
> On Fri, 25 Jan 2013 17:54:53 -0800 (PST)
> Hugh Dickins wrote:
>
> > +/* Zeroed when merging across nodes is not allowed */
> > +static unsigned int ksm_merge_across_nodes = 1;
>
> I spose this should be __read_mostly. If
On Mon, 28 Jan 2013, Andrew Morton wrote:
> On Fri, 25 Jan 2013 17:58:11 -0800 (PST)
> Hugh Dickins wrote:
>
> > +#ifdef CONFIG_NUMA
> > +#define NUMA(x)(x)
> > +#define DO_NUMA(x) (x)
>
> Did we consider
>
> #define DO_NUMA do { (x) }
On Mon, 28 Jan 2013, Andrew Morton wrote:
> On Fri, 25 Jan 2013 18:01:59 -0800 (PST)
> Hugh Dickins wrote:
>
> > +static int remove_all_stable_nodes(void)
> > +{
> > + struct stable_node *stable_node;
> > + int nid;
> > + int err = 0;
> > +
On Thu, 24 Jan 2013, Mel Gorman wrote:
> The function names page_xchg_last_nid(), page_last_nid() and
> reset_page_last_nid() were judged to be inconsistent so rename them
> to a struct_field_op style pattern. As it looked jarring to have
> reset_page_mapcount() and page_nid_reset_last() beside ea
On Mon, 28 Jan 2013, Kirill A. Shutemov wrote:
> From: "Kirill A. Shutemov"
>
> Here's first steps towards huge pages in page cache.
>
> The intend of the work is get code ready to enable transparent huge page
> cache for the most simple fs -- ramfs.
>
> It's not yet near feature-complete. It o
t; Hugh found this unhelpful and suggested a rename of page_xchg_last_nid to
> keep with a verb_struct_field naming pattern.
>
> This patch replaces mm-rename-page-struct-field-helpers.patch.
>
> Suggested-by: Hugh Dickins
> Signed-off-by: Mel Gorman
FWIW looks just ri
On Tue, 29 Jan 2013, Kirill A. Shutemov wrote:
> Hugh Dickins wrote:
> > On Mon, 28 Jan 2013, Kirill A. Shutemov wrote:
> > > From: "Kirill A. Shutemov"
> > >
> > > Here's first steps towards huge pages in page cache.
> > >
> >
On Wed, 30 Jan 2013, Michel Lespinasse wrote:
> This change adds a page_mask argument to follow_page.
>
> follow_page sets *page_mask to HPAGE_PMD_NR - 1 when it encounters a THP page,
> and to 0 in other cases.
>
> __get_user_pages() makes use of this in order to accelerate populating
> THP ran
Here's a KSM series, based on mmotm 2013-01-23-17-04: starting with
Petr's v7 "KSM: numa awareness sysfs knob"; then fixing the two issues
we had with that, fully enabling KSM page migration on the way.
(A different kind of KSM/NUMA issue which I've certainly not begun to
address here: when KSM pa
till left over from the previous stable tree;
2) memory hotremove may migrate KSM pages, but there is no provision
here for !merge_across_nodes to migrate nodes to the proper tree.
Signed-off-by: Petr Holasek
Signed-off-by: Hugh Dickins
Acked-by: Rik van Riel
---
Documentation/vm/ksm.txt |
From: Petr Holasek
This patch adds sysfs documentation for Kernel Samepage Merging (KSM)
including new merge_across_nodes knob.
Signed-off-by: Petr Holasek
Signed-off-by: Hugh Dickins
---
Documentation/ABI/testing/sysfs-kernel-mm-ksm | 52
1 file changed, 52 insertions
ng to copy and I prefer this precedent.
Signed-off-by: Hugh Dickins
---
mm/ksm.c | 48 ++--
1 file changed, 22 insertions(+), 26 deletions(-)
--- mmotm.orig/mm/ksm.c 2013-01-25 14:36:38.608205618 -0800
+++ mmotm/mm/ksm.c 2013-01-25 14
Memory hotremove's ksm_check_stable_tree() is pitifully inefficient
(restarting whenever it finds a stale node to remove), but rearrange
so that at least it does not needlessly restart from nid 0 each time.
And add a couple of comments: here is why we keep pfn instead of page.
Signed-off-by:
ed preemption for it. There's no need for rcu_read_lock() around
get_page_unless_zero() (and mapping checks) here. Cut out that
silliness before making this any harder to understand.
Signed-off-by: Hugh Dickins
---
mm/ksm.c | 23 +--
1 file changed, 13 insertions(+), 10 del
from swap) to a page which it then marks Uptodate.
Fix this case by not copying, letting do_swap_page() discover the error.
Signed-off-by: Hugh Dickins
---
include/linux/ksm.h | 18 ++---
mm/ksm.c| 83 +++---
mm/memory.c | 19 --
earlier: that should already be handled, by the satisfyingly
heavy hammer of move_vma()'s call to ksm_madvise(,,,MADV_UNMERGEABLE,).
Signed-off-by: Hugh Dickins
---
mm/ksm.c | 94 ++---
mm/migrate.c |5 ++
2 files changed, 77 inserti
ed to prune the list of
stale entries from time to time (scan_get_next_rmap_item() does it once
each full scan): whereas stale nodes in the stable tree get naturally
pruned as searches try to brush past them, these migrate_nodes may get
forgotten and accumulate.
Signed-off-by: Hugh Dickin
dn't set MADV_MERGEABLE on
any area where this is a worry.
Signed-off-by: Hugh Dickins
---
mm/mempolicy.c |3 +--
mm/migrate.c | 21 +++--
2 files changed, 4 insertions(+), 20 deletions(-)
--- mmotm.orig/mm/mempolicy.c 2013-01-24 12:28:38.848127553 -0800
+++ mmotm/m
No functional change, but the only purpose of the offlining argument
to migrate_pages() etc, was to ensure that __unmap_and_move() could
migrate a KSM page for memory hotremove (which took ksm_thread_mutex)
but not for other callers. Now all cases are safe, remove the arg.
Signed-off-by: Hugh
lag, and wait_while_offlining()
checks, to achieve the same lockout without being caught by lockdep.
This is less elegant for KSM, but it's more important to keep lockdep
useful to other users - and I apologize for how long it took to fix.
Reported-by: Gerald Schaefer
Signed-off-by: Hugh Dickins
On Fri, 25 Jan 2013, Shaohua Li wrote:
> On Thu, Jan 24, 2013 at 10:45:57PM -0500, Sasha Levin wrote:
> > Hi folks,
> >
> > Commit "swap: make each swap partition have one address_space" is triggering
> > a series of warnings on boot:
> >
> > [3.446071] [ cut here ]
>
On Sat, 26 Jan 2013, Simon Jeons wrote:
> On Fri, 2013-01-25 at 17:54 -0800, Hugh Dickins wrote:
> > From: Petr Holasek
> > @@ -1122,6 +1166,18 @@ struct rmap_item *unstable_tree_search_i
> > return NULL;
> > }
> >
> &g
On Tue, 22 Jan 2013, Mel Gorman wrote:
> From: Hugh Dickins
>
> When correcting commit 04fa5d6a (mm: migrate: check page_count of
> THP before migrating) Hugh Dickins noted that the control flow for
> transhuge migration was difficult to follow. Unconditionally calling
On Sun, 27 Jan 2013, Shaohua Li wrote:
> On Sat, Jan 26, 2013 at 06:16:05PM -0800, Hugh Dickins wrote:
> > On Fri, 25 Jan 2013, Shaohua Li wrote:
> > > On Thu, Jan 24, 2013 at 10:45:57PM -0500, Sasha Levin wrote:
> > >
> > > Subject: give-each-swa
I had all cpus spinning in swap_info_get(), for the lock on an area
being swapped off: probably because get_swap_page() forgot to unlock.
Signed-off-by: Hugh Dickins
---
mm/swapfile.c |5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
--- mmotm.orig/mm/swapfile.c2013-01-23 17
On Sat, 26 Jan 2013, Simon Jeons wrote:
> On Sat, 2013-01-26 at 18:54 -0800, Hugh Dickins wrote:
> >
> > So you'd like us to add code for moving a node from one tree to another
> > in ksm_migrate_page() (and what would it do when it collides with an
>
> Witho
On Sat, 26 Jan 2013, Simon Jeons wrote:
> On Fri, 2013-01-25 at 18:00 -0800, Hugh Dickins wrote:
> > In some places where get_ksm_page() is used, we need the page to be locked.
> >
>
> In function get_ksm_page, why check page->mapping =>
> get_page_unless_zero =&g
On Sat, 26 Jan 2013, Simon Jeons wrote:
>
> BTW, what's the meaning of ksm page forked?
A ksm page is mapped into a process's mm, then that process calls fork():
the ksm page then appears in the child's mm, before ksmd has tracked it.
--
To unsubscribe from this list: send the line "unsubscribe
On Sat, 26 Jan 2013, Simon Jeons wrote:
> On Fri, 2013-01-25 at 18:01 -0800, Hugh Dickins wrote:
> > Switching merge_across_nodes after running KSM is liable to oops on stale
> > nodes still left over from the previous stable tree. It's not something
> > that people wil
On Sat, 26 Jan 2013, Simon Jeons wrote:
> On Fri, 2013-01-25 at 18:03 -0800, Hugh Dickins wrote:
> > + while (!get_page_unless_zero(page)) {
> > + /*
> > +* Another check for page->mapping != expected_mapping would
> > +* work
On Sun, 27 Jan 2013, Simon Jeons wrote:
> On Fri, 2013-01-25 at 18:05 -0800, Hugh Dickins wrote:
> > @@ -1344,10 +1401,29 @@ static void cmp_and_merge_page(struct pa
> > unsigned int checksum;
> > int err;
> >
> > - remove_rmap_item_from_tre
On Sun, 27 Jan 2013, Simon Jeons wrote:
> On Fri, 2013-01-25 at 18:10 -0800, Hugh Dickins wrote:
> > @@ -2098,15 +2117,15 @@ static int ksm_memory_callback(struct no
> > switch (action) {
> > case MEM_GOING_OFFLINE:
> > /*
> > -*
On Sun, 27 Jan 2013, Simon Jeons wrote:
> On Sun, 2013-01-27 at 14:08 -0800, Hugh Dickins wrote:
> > On Sat, 26 Jan 2013, Simon Jeons wrote:
> > >
> > > Why the parameter lock passed from stable_tree_search/insert is true,
> > > but remove_rmap_item_from_t
On Sun, 27 Jan 2013, Simon Jeons wrote:
> On Sun, 2013-01-27 at 15:12 -0800, Hugh Dickins wrote:
> > On Sat, 26 Jan 2013, Simon Jeons wrote:
> > >
> > > Could you explain why need check page->mapping twice after get page?
> >
> > Once for the !locked cas
On Sun, 27 Jan 2013, Simon Jeons wrote:
> On Sun, 2013-01-27 at 15:05 -0800, Hugh Dickins wrote:
> > On Sat, 26 Jan 2013, Simon Jeons wrote:
> > > > How can this happen? We only permit switching merge_across_nodes when
> > > > pages_shared is 0, and usually s
On Sun, 27 Jan 2013, Simon Jeons wrote:
> On Fri, 2013-01-25 at 18:01 -0800, Hugh Dickins wrote:
> > Switching merge_across_nodes after running KSM is liable to oops on stale
> > nodes still left over from the previous stable tree. It's not something
>
> Since this p
On Mon, 18 Feb 2013, Catalin Marinas wrote:
> From: Hugh Dickins
You're being generous to me :)
Thanks for doing most of the work, yes, this looks fine.
BUt I'd have expected a Cc stable below: see comment on 2/2.
Hugh
>
> On architectures where a pgd entry may be shar
e.
Maybe all I'm asking for is a more reassuring commit description.
Hugh
>
> Signed-off-by: Catalin Marinas
> Cc: Russell King
> Cc: Hugh Dickins
> Cc: Andrew Morton
> ---
> arch/arm/include/asm/pgtable.h | 7 +++
> 1 file changed, 7 insertions(+)
>
>
On Tue, 19 Feb 2013, Ric Mason wrote:
>
> There is a call of try_to_free_swap in function swap_writepage, if
> swap_writepage is call from shrink_page_list path, PageSwapCache(page) ==
> trure, PageWriteback(page) maybe false, page_swapcount(page) == 0, then will
> delete the page from swap cache
On Tue, 19 Feb 2013, Will Huck wrote:
>
> Another question:
I don't see the connection to deleting a swapped out page from swap cache.
>
> Why kernel memory mapping use direct mapping instead of kmalloc/vmalloc which
> will setup mapping on demand?
I may misunderstand you, and "kernel memory m
On Tue, 19 Feb 2013, Sha Zhengju wrote:
> On Tue, Feb 19, 2013 at 2:53 PM, Li Haifeng wrote:
> > 2013/2/19 Will Huck :
> >> On 02/19/2013 10:04 AM, Li Haifeng wrote:
> >>>
> >>> If a anonymous page is swapped out and comes to be reclaimable,
> >>> shrink_page_list() will call __remove_mapping() t
mpfs mpol= options is another
question. 2.6.26 claimed to add support for "mpol=local", yet nobody
noticed that it was rejected as an invalid option, until an independent
bugfix in 2.6.34 rearranged the code and happened to get it working.
I only discovered that a month or two ago,
I could have broken the patch into
> three pieces but is seemed easier to review as one.
Yes, I agree, and nicely fixed - but one doubt below. If you resolve
that, please add my Acked-by: Hugh Dickins
>
> Signed-off-by: Greg Thelen
> ---
> mm/shmem.c | 12 +---
>
Here's a second KSM series, based on mmotm 2013-02-19-17-20: partly in
response to Mel's review feedback, partly fixes to issues that I found
myself in doing more review and testing. None of the issues fixed are
truly show-stoppers, though I would prefer them fixed sooner than later.
1 ksm: add s
Added slightly more detail to the Documentation of merge_across_nodes,
a few comments in areas indicated by review, and renamed get_ksm_page()'s
argument from "locked" to "lock_it". No functional change.
Signed-off-by: Hugh Dickins
---
Documentation/vm/ksm.txt | 16 +
gy is generally better, I'd
rather be consistent with what's done in the stable tree: accept a page
from the wrong NUMA node for comparison, but not as a leaf for merging.
Signed-off-by: Hugh Dickins
---
mm/ksm.c | 19 +--
1 file changed, 9 insertions(+), 10 deletions(-)
--
non_vma
early (when we already hold mmap_sem): now we must remove tree_rmap_item
from its unstable tree there, before overwriting nid. No need to spatter
BUG()s around: we'd be seeing oopses if this were wrong.
Signed-off-by: Hugh Dickins
---
mm/ksm.c | 26 ++
1 file
, and cannot be sure that every follow_page() caller is prepared to
sleep - ia64's xencomm_vtop()? Now, THP's wait_split_huge_page() can
already sleep there, since anon_vma locking was changed to mutex, but
maybe that's somehow excluded.
Signed-off-by: Hugh Dickins
--
up being used there: rework it with
"page != swapcache".
Signed-off-by: Hugh Dickins
---
mm/swapfile.c | 15 ++-
1 file changed, 14 insertions(+), 1 deletion(-)
--- mmotm.orig/mm/swapfile.c2013-02-20 22:28:09.076001048 -0800
+++ mmotm/mm/swapfile.c 2013-02-20 23:
I dislike the way in which "swapcache" gets used in do_swap_page():
there is always a page from swapcache there (even if maybe uncached
by the time we lock it), but tests are made according to "swapcache".
Rework that with "page != swapcache", as has been done in unu
statically allocated, then if merge_across_nodes is
ever tuned, allocate for nr_node_ids+nr_node_ids. Do not attempt to
free up the extra if it's tuned back, that would be a waste of effort.
Signed-off-by: Hugh Dickins
---
mm/ksm.c | 72 ---
On Thu, 21 Feb 2013, Johannes Weiner wrote:
> On Thu, Feb 21, 2013 at 12:25:40AM -0800, Hugh Dickins wrote:
> > Before establishing that KSM page migration was the cause of my
> > WARN_ON_ONCE(page_mapped(page))s, I suspected that they came from the
> > lack of a ksm_mi
On Fri, 22 Feb 2013, Ric Mason wrote:
> On 02/21/2013 04:17 PM, Hugh Dickins wrote:
> > Here's a second KSM series, based on mmotm 2013-02-19-17-20: partly in
> > response to Mel's review feedback, partly fixes to issues that I found
> > myself in doing more review a
On Fri, 22 Feb 2013, Ric Mason wrote:
>
> What's the root reason merge_across_nodes setting just can be changed only
> when there are no ksm shared pages in system?
Simplicity. Why add code (moving nodes from tree to tree, handling
the collisions) for a rare case that doesn't need to be fast?
>
On Fri, 22 Feb 2013, Ric Mason wrote:
> On 02/21/2013 04:20 PM, Hugh Dickins wrote:
> > An inconsistency emerged in reviewing the NUMA node changes to KSM:
> > when meeting a page from the wrong NUMA node in a stable tree, we say
> > that it's okay for comparisons, but
On Tue, 28 Aug 2012, Richard W.M. Jones wrote:
> On Wed, Aug 22, 2012 at 09:56:12PM -0700, Hugh Dickins wrote:
> > [PATCH] block: replace __getblk_slow misfix by grow_dev_page fix
>
> I noticed this (second version) went upstream already. Nevertheless I
> tested it today and
[ Cc'ing original mail to netdev as the problem may be recognized there ]
On Wed, 29 Aug 2012, David Madore wrote:
> Dear all,
>
> I hope this is the right place to send this sort of backtrace dump.
>
> I'm getting the following sort of dumps (below) on a 3.2.27 kernel on
> an arm/kirkwood (actu
On Tue, 11 Sep 2012, David Rientjes wrote:
> On Thu, 16 Aug 2012, a...@linux-foundation.org wrote:
> >
> > This does revert 2.6.27's dfe195fb79e88 ("mm: fix uninitialized variables
> > for find_vma_prepare callers"), but it looks like gcc 4.3.0 was one of
> > those releases too eager to shout abou
On Mon, 13 Aug 2012, Xiao Guangrong wrote:
> They are used to abstract the difference between NUMA enabled and NUMA
> disabled
> to make the code more readable
>
> Signed-off-by: Xiao Guangrong
> ---
> mm/huge_memory.c | 166
> --
> 1 files
On Tue, 11 Sep 2012, David Rientjes wrote:
> On Tue, 11 Sep 2012, Hugh Dickins wrote:
>
> > > > This does revert 2.6.27's dfe195fb79e88 ("mm: fix uninitialized
> > > > variables
> > > > for find_vma_prepare callers"), but it looks like
On Wed, 12 Sep 2012, David Rientjes wrote:
> On Wed, 12 Sep 2012, Hugh Dickins wrote:
> > > that we can't fix it all up to use
> > > uninitialized_var() so this is handled the proper way?
> >
> > I do prefer to avoid it when we can, some reasons given
On Wed, 12 Sep 2012, Xiao Guangrong wrote:
> On 09/12/2012 10:03 AM, Hugh Dickins wrote:
>
> > What brought me to look at it was hitting "BUG at mm/huge_memory.c:1842!"
> > running tmpfs kbuild swapping load (with memcg's memory.limit_in_bytes
> > forcing
On Wed, 12 Sep 2012, Hugh Dickins wrote:
> > @@ -1825,6 +1825,7 @@ static bool khugepaged_prealloc_page(struct page
> > **hpage, bool *wait)
> > return false;
> >
> > *wait = false;
> > + *hpage = NULL;
&g
t without the
mem_cgroup_zone_lruvec part of it, but oops in get_scan_count
told me that's needed too.
Description to be filled in later: would it be needed for -stable,
or is onlining already broken in other ways that you're now fixing up?
Reported-by: Tang Chen
Signed-off-by: Hugh Dickins
On Thu, 31 Jan 2008, Nick Piggin wrote:
> Sorry, way behind on email here. I'll get through it slowly...
You're certainly not the only one, and certainly not the worst offender.
> On Sat, Jan 26, 2008 at 10:03:56PM -0800, Andrew Morton wrote:
> >
> > So... it's two patches in one.
>
> I guess
Hi Erez,
Aside from the occasional "unionfs: new lower inode mtime" messages
on directories (which I've got into the habit of ignoring now), the
only problem I'm still suffering with unionfs over tmpfs (not tested
any other fs's below it recently) is oops in unionfs_copy_attr_times.
I believe I'm
On Sat, 2 Feb 2008, Linus Torvalds wrote:
> On Sat, 2 Feb 2008, Oliver Pinter (Pint?r Oliv?r) wrote:
> >
> > NOT IN MAINLINE
> >
> > Linus it's go or drop it?
>
> I have no idea, because you've used some horrible and stupid attachment
> format that I can't even read. Patches should be inline so
On Mon, 4 Feb 2008, Andrew Morton wrote:
>
> Takashi found a bug in it:
Bless him.
> ---
> a/lib/vsprintf.c~add-new-string-functions-strict_strto-and-convert-kernel-params-to-use-them-fix-2
> +++ a/lib/vsprintf.c
> @@ -234,7 +234,7 @@ int strict_strto##type(const char *cp, u
> if
Please chuck out:
add-new-string-functions-strict_strto-and-convert-kernel-params-to-use-them.patch
(along with Randy's perfectly reasonable -fix.patch).
So predictable that it would just disable loading modules with params:
Feb 4 13:17:02 blonde kernel: thinkpad_acpi: `1' invalid for parameter
a starts immediately
> after the end of the code (+bss), which is wrong for example in
> environments with randomized brk start. The proper way is to check whether
> the address is not below the start_brk address.
>
> Signed-off-by: Jiri Kosina <[EMAIL PROTECTED]>
Ack
1 - 100 of 2206 matches
Mail list logo