From: Gioh Kim <gioh.kim@lge.com>
To: "Michael S. Tsirkin" <mst@redhat.com>,
koct9i@gmail.com, aquini@redhat.com
Cc: akpm@linux-foundation.org, linux-mm@kvack.org,
linux-api@vger.kernel.org, linux-kernel@vger.kernel.org,
virtualization@lists.linux-foundation.org, bfields@fieldses.org,
minchan@kernel.org, Gioh Kim <gurugio@hanmail.net>,
viro@zeniv.linux.org.uk, gunho.lee@lge.com,
linux-fsdevel@vger.kernel.org, jlayton@poochiereds.net,
iamjoonsoo.kim@lge.com, vbabka@suse.cz
Subject: Re: [RFCv3 3/5] mm/balloon: apply mobile page migratable into balloon
Date: Fri, 10 Jul 2015 09:21:40 +0900 [thread overview]
Message-ID: <559F1014.6070306@lge.com> (raw)
In-Reply-To: <20150709105119-mutt-send-email-mst@redhat.com>
>> @@ -124,6 +130,7 @@ static inline void balloon_page_insert(struct balloon_dev_info *balloon,
>> struct page *page)
>> {
>> __SetPageBalloon(page);
>> + page->mapping = balloon->inode->i_mapping;
>> SetPagePrivate(page);
>> set_page_private(page, (unsigned long)balloon);
>> list_add(&page->lru, &balloon->pages);
>> @@ -140,6 +147,7 @@ static inline void balloon_page_insert(struct balloon_dev_info *balloon,
>> static inline void balloon_page_delete(struct page *page)
>> {
>> __ClearPageBalloon(page);
>> + page->mapping = NULL;
>> set_page_private(page, 0);
>> if (PagePrivate(page)) {
>> ClearPagePrivate(page);
>
> Order of cleanup here is not the reverse of the order of initialization.
> Better make it exactly the reverse.
>
>
> Also, I have a question: is it enough to lock the page to make changing
> the mapping safe? Do all users lock the page too?
>
>
>
>
I think balloon developers can answer that precisely.
I've just follow this comment:
http://lxr.free-electrons.com/source/include/linux/balloon_compaction.h#L16
WARNING: multiple messages have this Message-ID (diff)
From: Gioh Kim <gioh.kim@lge.com>
To: "Michael S. Tsirkin" <mst@redhat.com>,
koct9i@gmail.com, aquini@redhat.com
Cc: jlayton@poochiereds.net, bfields@fieldses.org, vbabka@suse.cz,
iamjoonsoo.kim@lge.com, viro@zeniv.linux.org.uk,
minchan@kernel.org, linux-fsdevel@vger.kernel.org,
virtualization@lists.linux-foundation.org,
linux-kernel@vger.kernel.org, linux-api@vger.kernel.org,
linux-mm@kvack.org, gunho.lee@lge.com, akpm@linux-foundation.org,
Gioh Kim <gurugio@hanmail.net>
Subject: Re: [RFCv3 3/5] mm/balloon: apply mobile page migratable into balloon
Date: Fri, 10 Jul 2015 09:21:40 +0900 [thread overview]
Message-ID: <559F1014.6070306@lge.com> (raw)
In-Reply-To: <20150709105119-mutt-send-email-mst@redhat.com>
>> @@ -124,6 +130,7 @@ static inline void balloon_page_insert(struct balloon_dev_info *balloon,
>> struct page *page)
>> {
>> __SetPageBalloon(page);
>> + page->mapping = balloon->inode->i_mapping;
>> SetPagePrivate(page);
>> set_page_private(page, (unsigned long)balloon);
>> list_add(&page->lru, &balloon->pages);
>> @@ -140,6 +147,7 @@ static inline void balloon_page_insert(struct balloon_dev_info *balloon,
>> static inline void balloon_page_delete(struct page *page)
>> {
>> __ClearPageBalloon(page);
>> + page->mapping = NULL;
>> set_page_private(page, 0);
>> if (PagePrivate(page)) {
>> ClearPagePrivate(page);
>
> Order of cleanup here is not the reverse of the order of initialization.
> Better make it exactly the reverse.
>
>
> Also, I have a question: is it enough to lock the page to make changing
> the mapping safe? Do all users lock the page too?
>
>
>
>
I think balloon developers can answer that precisely.
I've just follow this comment:
http://lxr.free-electrons.com/source/include/linux/balloon_compaction.h#L16
--
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>
WARNING: multiple messages have this Message-ID (diff)
From: Gioh Kim <gioh.kim@lge.com>
To: "Michael S. Tsirkin" <mst@redhat.com>,
koct9i@gmail.com, aquini@redhat.com
Cc: jlayton@poochiereds.net, bfields@fieldses.org, vbabka@suse.cz,
iamjoonsoo.kim@lge.com, viro@zeniv.linux.org.uk,
minchan@kernel.org, linux-fsdevel@vger.kernel.org,
virtualization@lists.linux-foundation.org,
linux-kernel@vger.kernel.org, linux-api@vger.kernel.org,
linux-mm@kvack.org, gunho.lee@lge.com, akpm@linux-foundation.org,
Gioh Kim <gurugio@hanmail.net>
Subject: Re: [RFCv3 3/5] mm/balloon: apply mobile page migratable into balloon
Date: Fri, 10 Jul 2015 09:21:40 +0900 [thread overview]
Message-ID: <559F1014.6070306@lge.com> (raw)
In-Reply-To: <20150709105119-mutt-send-email-mst@redhat.com>
>> @@ -124,6 +130,7 @@ static inline void balloon_page_insert(struct balloon_dev_info *balloon,
>> struct page *page)
>> {
>> __SetPageBalloon(page);
>> + page->mapping = balloon->inode->i_mapping;
>> SetPagePrivate(page);
>> set_page_private(page, (unsigned long)balloon);
>> list_add(&page->lru, &balloon->pages);
>> @@ -140,6 +147,7 @@ static inline void balloon_page_insert(struct balloon_dev_info *balloon,
>> static inline void balloon_page_delete(struct page *page)
>> {
>> __ClearPageBalloon(page);
>> + page->mapping = NULL;
>> set_page_private(page, 0);
>> if (PagePrivate(page)) {
>> ClearPagePrivate(page);
>
> Order of cleanup here is not the reverse of the order of initialization.
> Better make it exactly the reverse.
>
>
> Also, I have a question: is it enough to lock the page to make changing
> the mapping safe? Do all users lock the page too?
>
>
>
>
I think balloon developers can answer that precisely.
I've just follow this comment:
http://lxr.free-electrons.com/source/include/linux/balloon_compaction.h#L16
next prev parent reply other threads:[~2015-07-10 0:21 UTC|newest]
Thread overview: 80+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-07 4:36 [RFCv3 0/5] enable migration of driver pages Gioh Kim
2015-07-07 4:36 ` Gioh Kim
2015-07-07 4:36 ` [RFCv3 1/5] fs/anon_inodes: new interface to create new inode Gioh Kim
2015-07-07 4:36 ` Gioh Kim
2015-07-07 4:36 ` [RFCv3 2/5] mm/compaction: enable mobile-page migration Gioh Kim
2015-07-07 4:36 ` Gioh Kim
2015-07-07 4:36 ` Gioh Kim
2015-07-10 13:07 ` Konstantin Khlebnikov
2015-07-10 13:07 ` Konstantin Khlebnikov
2015-07-10 13:07 ` Konstantin Khlebnikov
2015-07-13 8:45 ` Gioh Kim
2015-07-13 8:45 ` Gioh Kim
2015-07-13 8:45 ` Gioh Kim
2015-07-10 13:41 ` Konstantin Khlebnikov
2015-07-10 13:41 ` Konstantin Khlebnikov
2015-07-10 13:41 ` Konstantin Khlebnikov
2015-07-07 4:36 ` [RFCv3 3/5] mm/balloon: apply mobile page migratable into balloon Gioh Kim
2015-07-07 4:36 ` Gioh Kim
2015-07-07 4:36 ` Gioh Kim
2015-07-09 8:07 ` Michael S. Tsirkin
2015-07-10 13:29 ` Konstantin Khlebnikov
[not found] ` <1436243785-24105-4-git-send-email-gioh.kim-Hm3cg6mZ9cc@public.gmane.org>
2015-07-09 8:07 ` Michael S. Tsirkin
2015-07-09 8:07 ` Michael S. Tsirkin
2015-07-09 8:07 ` Michael S. Tsirkin
2015-07-10 0:21 ` Gioh Kim [this message]
2015-07-10 0:21 ` Gioh Kim
2015-07-10 0:21 ` Gioh Kim
2015-07-10 13:29 ` Konstantin Khlebnikov
2015-07-10 13:29 ` Konstantin Khlebnikov
2015-07-10 13:29 ` Konstantin Khlebnikov
2015-07-07 4:36 ` [RFCv3 4/5] mm: call generic migration callbacks Gioh Kim
2015-07-07 4:36 ` Gioh Kim
2015-07-07 4:36 ` Gioh Kim
2015-07-07 4:36 ` [RFCv3 5/5] mm: remove direct calling of migration Gioh Kim
2015-07-07 4:36 ` Gioh Kim
2015-07-07 4:36 ` Gioh Kim
2015-07-07 22:37 ` [RFCv3 0/5] enable migration of driver pages Andrew Morton
2015-07-07 22:37 ` Andrew Morton
2015-07-07 22:37 ` Andrew Morton
2015-07-08 0:02 ` Gioh Kim
2015-07-08 0:02 ` Gioh Kim
2015-07-08 0:02 ` Gioh Kim
2015-07-08 0:02 ` Gioh Kim
2015-07-08 0:07 ` Andrew Morton
[not found] ` <559C68B3.3010105-Hm3cg6mZ9cc@public.gmane.org>
2015-07-08 0:07 ` Andrew Morton
2015-07-08 0:07 ` Andrew Morton
2015-07-08 0:07 ` Andrew Morton
2015-07-08 0:19 ` Gioh Kim
2015-07-08 0:19 ` Gioh Kim
2015-07-08 0:19 ` Gioh Kim
2015-07-08 0:35 ` Minchan Kim
2015-07-08 0:35 ` Minchan Kim
2015-07-08 0:35 ` Minchan Kim
2015-07-08 22:47 ` Dave Airlie
2015-07-08 22:47 ` Dave Airlie
2015-07-08 23:55 ` Gioh Kim
2015-07-08 23:55 ` Gioh Kim
2015-07-08 23:55 ` Gioh Kim
2015-07-09 13:08 ` Daniel Vetter
2015-07-09 13:08 ` Daniel Vetter
2015-07-09 13:08 ` Daniel Vetter
2015-07-09 13:08 ` Daniel Vetter
2015-07-09 13:33 ` Ville Syrjälä
2015-07-09 13:33 ` Ville Syrjälä
2015-07-09 13:33 ` Ville Syrjälä
2015-07-09 14:02 ` Kirill A. Shutemov
2015-07-09 14:02 ` Kirill A. Shutemov
2015-07-09 14:02 ` Kirill A. Shutemov
2015-07-09 14:02 ` Kirill A. Shutemov
2015-07-09 13:33 ` Ville Syrjälä
2015-07-10 0:02 ` Gioh Kim
2015-07-10 0:02 ` Gioh Kim
2015-07-10 0:02 ` Gioh Kim
2015-07-10 0:02 ` Gioh Kim
2015-07-08 23:55 ` Gioh Kim
2015-07-08 22:47 ` Dave Airlie
2015-07-09 1:00 ` Rafael Aquini
[not found] ` <1436243785-24105-1-git-send-email-gioh.kim-Hm3cg6mZ9cc@public.gmane.org>
2015-07-09 1:00 ` Rafael Aquini
2015-07-09 1:00 ` Rafael Aquini
2015-07-09 1:00 ` Rafael Aquini
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=559F1014.6070306@lge.com \
--to=gioh.kim@lge.com \
--cc=akpm@linux-foundation.org \
--cc=aquini@redhat.com \
--cc=bfields@fieldses.org \
--cc=gunho.lee@lge.com \
--cc=gurugio@hanmail.net \
--cc=iamjoonsoo.kim@lge.com \
--cc=jlayton@poochiereds.net \
--cc=koct9i@gmail.com \
--cc=linux-api@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=minchan@kernel.org \
--cc=mst@redhat.com \
--cc=vbabka@suse.cz \
--cc=viro@zeniv.linux.org.uk \
--cc=virtualization@lists.linux-foundation.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.