Linux-mm Archive on lore.kernel.org
 help / color / Atom feed
From: Matthew Wilcox <willy@infradead.org>
To: Julien Grall <julien.grall@arm.com>
Cc: osstest service owner <osstest-admin@xenproject.org>,
	xen-devel@lists.xenproject.org, Juergen Gross <jgross@suse.com>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Stefano Stabellini <sstabellini@kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Kees Cook <keescook@chromium.org>,
	david@redhat.com, k.khlebnikov@samsung.com,
	Julien Freche <jfreche@vmware.com>, Nadav Amit <namit@vmware.com>,
	"VMware, Inc." <pv-drivers@vmware.com>,
	linux-mm@kvack.org
Subject: Re: xen: Can't insert balloon page into VM userspace (WAS Re: [Xen-devel] [linux-linus bisection] complete test-arm64-arm64-xl-xsm)
Date: Tue, 12 Mar 2019 10:14:21 -0700
Message-ID: <20190312171421.GJ19508@bombadil.infradead.org> (raw)
In-Reply-To: <46118631-61d4-adb6-6ffc-4e7c62ea3da9@arm.com>

On Tue, Mar 12, 2019 at 05:05:39PM +0000, Julien Grall wrote:
> On 3/12/19 3:59 PM, Julien Grall wrote:
> > It looks like all the arm test for linus [1] and next [2] tree
> > are now failing. x86 seems to be mostly ok.
> > 
> > The bisector fingered the following commit:
> > 
> > commit 0ee930e6cafa048c1925893d0ca89918b2814f2c
> > Author: Matthew Wilcox <willy@infradead.org>
> > Date:   Tue Mar 5 15:46:06 2019 -0800
> > 
> >      mm/memory.c: prevent mapping typed pages to userspace
> >      Pages which use page_type must never be mapped to userspace as it would
> >      destroy their page type.  Add an explicit check for this instead of
> >      assuming that kernel drivers always get this right.

Oh good, it found a real problem.

> It turns out the problem is because the balloon driver will call
> __SetPageOffline() on allocated page. Therefore the page has a type and
> vm_insert_pages will deny the insertion.
> 
> My knowledge is quite limited in this area. So I am not sure how we can
> solve the problem.
> 
> I would appreciate if someone could provide input of to fix the mapping.

I don't know the balloon driver, so I don't know why it was doing this,
but what it was doing was Wrong and has been since 2014 with:

commit d6d86c0a7f8ddc5b38cf089222cb1d9540762dc2
Author: Konstantin Khlebnikov <k.khlebnikov@samsung.com>
Date:   Thu Oct 9 15:29:27 2014 -0700

    mm/balloon_compaction: redesign ballooned pages management

If ballooned pages are supposed to be mapped into userspace, you can't mark
them as ballooned pages using the mapcount field.


       reply index

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <E1h3Uiq-0002L6-Ij@osstest.test-lab.xenproject.org>
     [not found] ` <80211e70-5f54-9421-8e8f-2a4fc758ce39@arm.com>
     [not found]   ` <46118631-61d4-adb6-6ffc-4e7c62ea3da9@arm.com>
2019-03-12 17:14     ` Matthew Wilcox [this message]
2019-03-12 17:18       ` David Hildenbrand
2019-03-12 17:24         ` [Xen-devel] xen: Can't insert balloon page into VM userspace (WAS " Andrew Cooper
2019-03-12 18:02           ` Boris Ostrovsky
2019-03-12 18:11             ` Andrew Cooper
2019-03-12 18:23             ` David Hildenbrand
2019-03-12 19:46               ` David Hildenbrand
2019-03-14  8:37                 ` Juergen Gross
2019-03-14 14:12                   ` Julien Grall
2019-03-14 14:14                     ` David Hildenbrand
2019-03-14 14:15                     ` Juergen Gross
2019-03-14 14:16                       ` David Hildenbrand
2019-03-12 17:39         ` xen: Can't insert balloon page into VM userspace (WAS Re: [Xen-devel] " Julien Grall
2019-03-12 17:49           ` David Hildenbrand
2019-03-12 17:23       ` David Hildenbrand
2019-03-12 17:25         ` Nadav Amit

Reply instructions:

You may reply publically 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=20190312171421.GJ19508@bombadil.infradead.org \
    --to=willy@infradead.org \
    --cc=boris.ostrovsky@oracle.com \
    --cc=david@redhat.com \
    --cc=jfreche@vmware.com \
    --cc=jgross@suse.com \
    --cc=julien.grall@arm.com \
    --cc=k.khlebnikov@samsung.com \
    --cc=keescook@chromium.org \
    --cc=konrad.wilk@oracle.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=namit@vmware.com \
    --cc=osstest-admin@xenproject.org \
    --cc=pv-drivers@vmware.com \
    --cc=sstabellini@kernel.org \
    --cc=xen-devel@lists.xenproject.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

Linux-mm Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-mm/0 linux-mm/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-mm linux-mm/ https://lore.kernel.org/linux-mm \
		linux-mm@kvack.org linux-mm@archiver.kernel.org
	public-inbox-index linux-mm

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kvack.linux-mm


AGPL code for this site: git clone https://public-inbox.org/ public-inbox