From: James Bottomley <James.Bottomley@HansenPartnership.com>
To: Minchan Kim <minchan@kernel.org>
Cc: Linux Memory Management List <linux-mm@kvack.org>,
Andrew Morton <akpm@linux-foundation.org>,
Thorsten Leemhuis <regressions@leemhuis.info>
Subject: Re: Hang with v4.15-rc trying to swap back in
Date: Thu, 28 Dec 2017 09:41:47 -0800 [thread overview]
Message-ID: <1514482907.3040.15.camel@HansenPartnership.com> (raw)
In-Reply-To: <20171227235643.GA10532@bbox>
On Thu, 2017-12-28 at 08:56 +0900, Minchan Kim wrote:
> On Wed, Dec 27, 2017 at 03:34:49PM -0800, James Bottomley wrote:
> >
> > On Thu, 2017-12-28 at 08:26 +0900, Minchan Kim wrote:
> > >
> > > Hello James,
> > >
> > > On Wed, Dec 27, 2017 at 12:50:17PM -0800, James Bottomley wrote:
> > > >
> > > >
> > > > Reverting these three patches fixes the problem:
> > > >
> > > > commit aa8d22a11da933dbf880b4933b58931f4aefe91c
> > > > Author: Minchan Kim <minchan@kernel.org>
> > > > Date:A A A Wed Nov 15 17:33:11 2017 -0800
> > > >
> > > > A A A A mm: swap: SWP_SYNCHRONOUS_IO: skip swapcache only if
> > > > swapped page has no other reference
> > > >
> > > > commit 0bcac06f27d7528591c27ac2b093ccd71c5d0168
> > > > Author: Minchan Kim <minchan@kernel.org>
> > > > Date:A A A Wed Nov 15 17:33:07 2017 -0800
> > > >
> > > > A A A A mm, swap: skip swapcache for swapin of synchronous device
> > > >
> > > > Also need to revert:
> > > >
> > > > commit e9a6effa500526e2a19d5ad042cb758b55b1ef93
> > > > Author: Huang Ying <huang.ying.caritas@gmail.com>
> > > > Date:A A A Wed Nov 15 17:33:15 2017 -0800
> > > >
> > > > A A A A mm, swap: fix false error message in __swp_swapcount()
> > > >
> > > > (The latter is simply because it used a function that is
> > > > eliminated by one of the other reversions). A They came into the
> > > > merge window via the -mm tree as part of a 4 part series:
> > > >
> > > > Subject: [PATCH v2 0/4] skip swapcache for super fast
> > > > device
> > > > Message-Id: <1505886205-9671-1-git-send-email-
> > > > minchan@kernel.org
> > > > >
> > > > >
> > > > >
> > > >
> > > > James
> > >
> > > Thanks for the report.
> > > Patches are related to synchronous swap devices like brd, zram,
> > > nvdimm so
> > >
> > > 1. What swap device do you use among them?
> >
> > I've reproduced on nvme and sata spinning rust.
> >
> > >
> > > 2. Could you tell me how you can reproduce it?
> >
> > The way to reproduce is to force something to swap and then get it
> > to try to touch the page again. A I do this on my systems by using a
> > large virtual machine, as I said in the email. A There isn't really
> > any definitive reproduction method beyond that.
> >
>
> Thanks for the information. It seems I made a bug on do_swap_page. I
> want to confirm before sending formal patch. Could you try on it?
>
> diff --git a/mm/memory.c b/mm/memory.c
> index ca5674cbaff2..240521f1322d 100644
> --- a/mm/memory.c
> +++ b/mm/memory.c
> @@ -2889,9 +2889,12 @@ int do_swap_page(struct vm_fault *vmf)
> A
> A
> A delayacct_set_flag(DELAYACCT_PF_SWAPIN);
> - if (!page)
> + if (!page) {
> A page = lookup_swap_cache(entry, vma_readahead ? vma
> : NULL,
> A A vmf->address);
> + swapcache = page;
> + }
> +
This hangs in precisely the same way first kworker then kswapd with the
same stack trace.
I'd guess that since they're both in io_schedule, the problem is that
the io_scheduler is taking far too long servicing the requests due to
some priority issue you've introduced.
Since we're at -rc5, soon to be -rc6, let's just revert the whole
series and you can retry it for 4.16. A The whole point seems to be for
zram, which isn't really a huge use case.
James
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2017-12-28 17:41 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1514398340.3986.10.camel@HansenPartnership.com>
2017-12-27 20:50 ` Hang with v4.15-rc trying to swap back in James Bottomley
2017-12-27 23:26 ` Minchan Kim
2017-12-27 23:34 ` James Bottomley
2017-12-27 23:56 ` Minchan Kim
2017-12-28 17:41 ` James Bottomley [this message]
2017-12-28 19:00 ` James Bottomley
2017-12-29 0:00 ` Minchan Kim
2017-12-29 0:45 ` Minchan Kim
2018-01-17 22:33 ` Hugh Dickins
2018-01-17 22:58 ` Andrew Morton
2018-01-17 23:15 ` Hugh Dickins
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=1514482907.3040.15.camel@HansenPartnership.com \
--to=james.bottomley@hansenpartnership.com \
--cc=akpm@linux-foundation.org \
--cc=linux-mm@kvack.org \
--cc=minchan@kernel.org \
--cc=regressions@leemhuis.info \
/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.